2

出于测试目的,我想绕过我的应用程序的登录屏幕。我可以通过注释掉在运行测试时推送视图控制器的代码来做到这一点。然而,这并不理想。我想出了一种在我的方案中设置环境变量的更好方法,然后执行:

if ([NSProcessInfo processInfo].environment[@"TEST"]) { // Running EarlGrey test. }

我想知道是否有更好的方法来检测我是否正在运行 EarlGrey 测试?

4

1 回答 1

2

常见问题解答中,您可能希望使用允许您添加检查的构建配置 -

#if EARLGREY_ENV
  NSLog(@"This is being run in an EarlGrey test.");
#else
  NSLog(@"Not an EarlGrey test.");
#endif

您还可以添加运行时检查NSClassFromString("EarlGreyImpl") != nil,例如查看您是否在 EarlGrey 环境中运行。

于 2016-08-01T09:14:35.153 回答