iOS单元测试和UI测试全面解析(32)

发表于:2017-03-31来源:51CTO作者:朱先忠点击数: 标签:单元测试iOS
// then XCTAssertEqual(mockUserDefaults.gameStyleChanged,1, gameStyleuserdefaultwasntchanged ) } 上述代码中的when断言的作用是:gameStyleChanged标志的值为0在测试方法触发分段控
  // then 
  •   XCTAssertEqual(mockUserDefaults.gameStyleChanged, 1, "gameStyle user default wasn't changed"
  • 上述代码中的when断言的作用是:gameStyleChanged标志的值为0——在测试方法触发分段控制开关之前。因此,如果then断言也为真,那么将意味着方法set(_:forKey:)仅被正确地调用一次。

    现在再次运行测试;应当可以成功。

    在Xcode中进行UI测试

    Xcode 7中引入了对UI测试的支持,使您可以通过记录与UI的交互来创建UI测试。UI测试的工作方式是:通过查询来查找一个应用程序的UI对象,进而合成事件,然后将这些事件发送给这些对象。其提供的API使您可以检查一个用户界面对象的属性和状态,以便把它们与预期的状态进行比较。

    现在,让我们在BullsEye项目的测试导航器中添加一个新的UI测试目标。确保要被测试的目标是BullsEye,然后接受默认名称BullsEyeUITests。

    然后,在BullsEyeUITests类的顶部添加如下属性︰

    
    
    1. var app: XCUIApplication! 

    在方法setup()中,用以下代码替换XCUIApplication().launch()语句︰

     
    
    
    
               

    原文转自:http://mobile.51cto.com/iphone-535758.htm