相关疑难解决方法(0)

Xcode:TEST vs DEBUG预处理器宏

在使用单元测试创​​建新项目时,Xcode将构建配置设置为Test for Test方案(与Run方案相同).

我应该区分Run(Command-R)和Test(Command-U)方案吗?

即,我应该创建一个名为Test的新构建配置,向它添加预处理器宏TEST = 1,并将其用作测试方案的构建配置吗?或者,我应该将Run&Test作为Debug进行保存吗?

我来自Ruby/Rails背景,您通常拥有测试,开发和生产环境.在我看来,Debug就像开发一样,Release就像生产一样,但是我们错过了一个测试,这就是我认为添加Test可能有意义的原因.

评论?意见?建议?

我特意问这个,因为我想为Test编译一些东西:

#ifdef TEST
// Do something when I test.
#endif
Run Code Online (Sandbox Code Playgroud)

如果我也为Debug编译它,我认为这不重要.所以,我真的可以做到:

#ifdef DEBUG
// Do something when I run or test.
#endif
Run Code Online (Sandbox Code Playgroud)

但是,我真的只打算在现在进行测试.所以,这就是为什么我认为我应该区分调试和测试,但我想知道为什么Xcode默认不为你做那个?Apple认为你不应该区分它们吗?

debugging xcode unit-testing buildconfiguration

35
推荐指数
6
解决办法
2万
查看次数

XCode 5单元测试:启动我的应用程序

当我在XCode 5中运行我的测试时,我的OS X应用程序的主窗口在运行测试时会在屏幕上显示几秒钟.为什么?即使我取消注释我的所有测试,它仍会打开我的主窗口.

xcode objective-c xcode5 xctest

32
推荐指数
3
解决办法
2万
查看次数

iOS Swift:为XCTest分离AppDelegate

由于一些问题,我希望项目中的XCTest目标能够运行单独的应用程序委托.使用ObjC,这是一个相对简单的过程:操作main.m(参见:https://stackoverflow.com/a/15725328/1299041 ).

由于似乎@UIApplicationMain在AppDelegate中初始化了Swift应用程序,是否可以使用单独的AppDelegate为测试目标进行初始化?

ios xctest swift

15
推荐指数
2
解决办法
5703
查看次数

xctest - 预处理器宏

是否可以在(测试)目标设置或测试.pch文件中定义宏,以便将其传递给整个应用程序?
或者是否有任何宏可用于检查(来自代码)我们是否正在运行测试?

例如:

#if TEST=1
  // do something
#else
  // do something else
#endif
Run Code Online (Sandbox Code Playgroud)

我想要这个的原因是在测试期间跳过一些代码,断言等(每次我运行测试时都不必在主应用程序.pch中更改#define).

谢谢.

xcode xctest

6
推荐指数
1
解决办法
2233
查看次数

iOS单元测试如何阻止App Delegate执行操作

我有一个应用程序,我是单元测试.在正常使用情况下,App Delegate会设置并开始运行.但是,当我运行我的单元测试时,我希望App Delegate不会做太多,如果有的话.我将如何实现这一目标?似乎某些设置内容在测试运行器运行时正在运行,并且它往往会在测试运行时抛出异常,从而导致其失败.

testing unit-testing ios

5
推荐指数
1
解决办法
1425
查看次数