iOS自动化测试集成 - EarlGrey

作者: 沈宥 | 来源:发表于2016-11-01 15:36 被阅读370次

    1、EarlGrey是个原生iOS UI自动化测试框架,可以帮助你编写出更加清晰、简明的测试。

    2、借助于EarlGrey框架,你可以使用增强的同步特性。

    3、EarlGrey会自动与UI、网络请求及各种查询保持同步,同时在必要的情况下,你还可以手工实现自定义的定时器。

    4、EarlGrey的同步特性可以确保在执行动作前,UI会处于一种稳定的状态。这极大地增强了测试稳定性,使得测试变得高度可重复。

    5、EarlGrey与XCTest框架协同工作,并且集成到了Xcode的Test Navigator中,这样你就可以直接在Xcode中或是在命令行中(使用xcodebuild)运行测试了。

    6、适配环境 < (更新macOS Sierra + Xcode 8.1 + iOS 10.0.2:无法使用)

    集成EarlGrey:Cocoapods集成

    git地址:

    https://github.com/google/EarlGrey

    1、建立target -> iOS Unit Testing Bundle

    2、Manager Schemes:shared

    3、安装pod前:sudo gem install earlgrey

    pod install

    PROJECT_NAME = '你的工程名'

    TEST_TARGET = '测试Target名'

    SCHEME_FILE = '测试Target名.xcscheme'

    target TEST_TARGET do

    project PROJECT_NAME

    inherit! :search_paths

    pod 'EarlGrey'

    end

    post_install do |installer|

    require 'earlgrey'

    configure_for_earlgrey(installer, PROJECT_NAME, TEST_TARGET, SCHEME_FILE)

    end

    4、点击 +-> Add Other…找到绝对路径, 直接添加EarlGrey.framework

    TestTarget->Building Setting - 引入工程

    5、建立测试文件,注意一定是集成XCTest

    @import EarlGrey;

    #import <XCTest/XCTest.h>

    @interface MyFirstEarlGreyTest:XCTestCase

    @end

    @implementationMyFirstEarlGreyTest

    - (void)testExample{// Your test actions and assertions will go here.}

    @end

    6、run程序 -> 点击test

    Test文件 具体测试方法

    备注:issues至今未解决问题:

    出错函数

    报错信息:

    GREYUIThreadExecutor and EarlGrey in general synchronizes with the UI / main thread i.e.

    Thread 1 and the code there is for making sure the main thread doesn't go to sleep.

    相关文章

      网友评论

      • Thebloodelves:你有安装过吗?gem install earlgrey提示ERROR: While executing gem ... (Errno::EPERM)
        Operation not permitted - /usr/bin/thor
        沈宥:不同的安装方式产生的问题也会不同,你的报错"Operation not permitted - /usr/bin/"是提示你对此文件夹没有权限,执行该命令前加上 sudo 。具体可参考fastlane官方文档,https://docs.fastlane.tools/。

      本文标题:iOS自动化测试集成 - EarlGrey

      本文链接:https://www.haomeiwen.com/subject/dcpmuttx.html