Bartłomiej Semańczyk Bartłomiej Semańczyk - 4 years ago 274
Swift Question

"unsafeMutableAddressor : Swift.String", referenced from:.."

I got an error:

Undefined symbols for architecture x86_64:
"DirectBistro.DBTabBarOrderedIndexesKey.unsafeMutableAddressor : Swift.String", referenced from:
DirectBistroUITests.TabBarControllerTests.setUp (DirectBistroUITests.TabBarControllerTests)() -> () in TabBarControllerTests.o
ld: symbol(s) not found for architecture x86_64

This is my simple

import XCTest
@testable import DirectBistro

class TabBarControllerTests: XCTestCase {

override func setUp() {

let defaults = NSUserDefaults.standardUserDefaults()
defaults.setObject([], forKey: DBTabBarOrderedIndexesKey)

This is how it is defined in

let DBTabBarOrderedIndexesKey = "TabBarOrderedIndexesKey"

Info pane:

enter image description here

General pane:

enter image description here

Answer Source

The conslusion is: it is not going to work.

I report it as a bug to Apple, and got a response:

UI tests execute differently from Unit tests - Unit tests run inside your application process so they can access your application code. UI tests execute in a separate process, outside your application, so they can simulate how the user interacts with the application. It’s not expected that you will be able to access your app class from a UI test.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download