我正在尝试从UITest目标中调用快速单例。我正在导入主要模块:@testable import Ary,但是当我尝试构建它时,它说:

Undefined symbols for architecture armv7:
  "Ary.DataModelLayerOperation.getter : Ary.DataModelLayer", referenced from:
      AryUITests.AryUITests.setUp (AryUITests.AryUITests)() -> () in AryUITests.o

d: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

语法高亮仍然有效(单例没有访问修饰符,因此将其标记为内部,对于从测试目标进行访问应该是完美的选择)...

我正在调用的函数是[在XCTestCase中]:
 override func setUp() {
    super.setUp()
  if !DataModelLayerOperation.isUserLoggedIn() {
    //do something
  }
}

最佳答案

恐怕您目前无法实现。我遇到了类似的问题,并询问了问题here。我很快会接受这样的答案:

UI测试是与应用程序不同的模块,因此无法运行
在您的应用程序内部进行逻辑测试。

我希望在下一个Xcode版本中将对此进行改进。

关于ios - UITest:体系结构armv7的 undefined symbol ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34355132/

10-11 22:14