IOS单元测试(—)

本文介绍了iOS的单元测试,包括苹果的XCTest框架,可视化的GHUnit以及OCMock模拟方法。讲解了创建简单单元测试的步骤,网络请求测试的配置,以及异步请求的处理。同时,深入探讨了断言测试中的XCTAssertEqualObjects和XCTAssertEqual的使用区别。
摘要由CSDN通过智能技术生成

单元测试

  • OCUnit(即XCTest测试)
    • 这个就是苹果自己的测试框架
  • GHUnit
    • 这是一个可视化的测试框架,可以点击app来决定测试哪个方法,并且可以点击查看测试结果等。(后续详细叙述)
  • OCMock
    • 这个是模拟某个方法或者属性的返回值。(后续详细叙述)

创建一个简单的单元测试

  • 新建项目:
    最简单的单元测试
  • 一个简单的测试demo
    • 该类继承自XCTestCase类,其中包含三个方法:setUp,tearDown和testExample。setUp方法用于在测试前设置好要测试的方法,tearDown则是在测试后将设置好的要测试的方法拆卸掉。testExample是测试方法。测试方法必须以testxxx的格式,并且不能有参数和返回值,不然不会识别为测试方法。测试方法的执行顺序是字典排序。快捷键command+ u进行单元测试,这个快捷键是全部测试。当有多个测试方法时候不管顺序如何排列,测试方法执行的顺序与方法名中test后面的字符大小有关,小者优先,例如testA,testB1,testB2三个方法相继执行。在testExample方法中输入
 NSLog(@"自定义测试testExample");
    NSString *temp;
    int a=3;
    XCTAssertNil(temp,@"a为空");
    XCTAssertTrue(3==a,@"a等于3");

进行网络请求的测试

使用CocoaPods安装AFNetworking和STAlerView

# platform :ios, '9.0'

target 'UnitTestDemo' do
pod 'AFNetworking', '~> 3.1.0'
pod 'STAlertView', '~> 1.0.0'

在Info.plist中添加NSAppTransportSecurity类型Dictionary。 在NSAppTransportSecurity下添加NSAllowsArbitraryLoads类型Boolean,值设为YES。

IOS9的http安全问题:现在进行异步请求的网络测试,由于测试方法主线程执行完就会结束,所以需要设置一下否则没发查看异步返回的结果。

#define WAIT do {\
[self expectationForNotification:@"RSBaseTest" object:nil handler:nil];\
[self waitFor
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值