到目前为止,我正在使用KIF Framework进行iOS UI自动化.KIF(也是单元测试)目标在与应用程序运行相同的过程中运行单元/ UI测试代码,我们可以轻松模拟应用程序使用的不同对象/类来显示模拟数据.
当切换到基于Xcode 7的新UI自动化时,我发现UI单元测试目标在单独的进程中运行,并且它在单独的进程中启动应用程序.因此,无法通过单元测试访问App类/对象并模拟它们.
有没有人面临同样的问题,并了解任何解决方法?
如果需要更多细节,请告诉我.
答:请参阅下面的详细答案.此处还有来自Apple开发者的回复链接:https://forums.developer.apple.com/thread/23552
为什么以下代码编译没有任何错误?
- (NSArray *) getSomeObjects
{
@try
{
NSArray * arrayToReturn = [NSArray array];
// Perform some oprations on arrayToReturn
return arrayToReturn;
}
@catch (NSException * exception)
{
// Uh Oh!!! I got an exception.
}
// See I am not returning anything from here
// and code still compiles fine without any
// compiler error.
}
Run Code Online (Sandbox Code Playgroud)
在任何异常中,我需要在执行@catch后返回一个空的NSArray.
Xcode中是否有任何编译器标志警告这些丢失的返回语句为错误?