如何在我的应用程序中检测我是否正在运行EarlGrey测试?

时间:2016-07-07 08:32:57

标签: earlgrey

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

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

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

1 个答案:

答案 0 :(得分:2)

faq开始,你可能想要使用一个允许你添加支票的构建配置 -

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

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