【问题标题】:How can I detect if I'm running an EarlGrey test in my application?如何检测我是否在我的应用程序中运行 EarlGrey 测试?
【发布时间】:2016-08-01 17:14:35
【问题描述】:

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

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

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

【问题讨论】:

    标签: earlgrey


    【解决方案1】:

    faq 开始,您可能希望使用允许您添加检查的构建配置 -

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

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

    【讨论】:

    • 啊...构建时间标志。好吧,它比运行时检查要好一点:)
    猜你喜欢
    • 1970-01-01
    • 2020-01-16
    • 2015-10-31
    • 2010-10-04
    • 2018-12-11
    • 2019-11-22
    • 2020-10-25
    • 1970-01-01
    • 2015-11-26
    相关资源
    最近更新 更多