OGeek|极客世界-中国程序员成长平台

标题: iPhone XCode 单元测试框架build设置 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 10:46
标题: iPhone XCode 单元测试框架build设置

我正在尝试将单元测试添加到我的项目中,这就是我正在做的事情:

  1. 添加目标 -> Cocoa Touch 单元测试包
    产品:AuthyTests
    公司标识符:com.authy.com
    项目:授权

    所以生成的 bundler 标识符是:com.authy.AuthyTests

  2. 如果我运行 command+U(Product -> test),它会运行单元测试。

  3. 现在我从我的项目中添加一个库,所以#include "otp.h"AuthyTests.h

  4. 添加一些对 AuthyTest.m ([Otp foo];) 的调用,我得到一个错误:


Undefined symbols for architecture i386:
"_OBJC_CLASS_$_Otp", referenced from:
objc-class-ref in AuthyTests.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我尝试过的事情:

1.我尝试添加 authy.app 作为对 AuthyAppTests 构建阶段的 TargetDependencies 的依赖。

2.Targets -> AuthyTests -> BuildSettings -> Build Active Architechture Only -> Yes

我使用的是 xcode 4.2。我还尝试了这个网站上的所有内容:
http://twobitlabs.com/2011/06/adding-ocunit-to-an-existing-ios-project-with-xcode-4/

在 XCode 上设置 UnitTest 缺少什么?



Best Answer-推荐答案


听起来教程中的步骤之一没有被遵循。具体来说,步骤 4-6。我的猜测是捆绑加载程序的两个设置都关闭了。另一种尝试的可能性:

在您的主要 Authy 应用目标中:

其中一个应该强制主要的 Authy 二进制文件包含 i386。如果这仍然不起作用,那么是捆绑加载器设置行为不端。

关于iPhone XCode 单元测试框架build设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8921913/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4