xcode 5 使用 XCTest 做单元测试

xcode 5 使用 XCTest 做单元测试

什么是单元测试,请看 百度百科 单元测试

一:在xcode5 之前,我们新建项目时,可以选择是否集成单元测试;如今在xcode5,我们新建立的项目默认就已经集成了单元测试和ARC;

   xcode5 之后集成的单元测试框架 XCTest.framework

  如图,我们用xcode5 新建立一个 名为 StudengManager 的空项目

  • 项目新增加框架 XCTest.framework
  • 项目新增加组 XXXX项目名Test组
  • 新增加 xxxxxTest.m 
  • Test.m测试文件没有 .h文件,并且 继承 XCTestCase 类;

 项目新建立好之后,我可以用 快捷键 com + u (或是 导航条 --> product --> test) 来启动测试;

 如图:出错了,那是默认的,需要开发者 自己实现 相应的 - (void)test开关的方法;

二:有兴趣的可以打开 XCTest.framework 先看一下该框架为我们提供的测试用的api;

   如下一些基本的api的使用;

1:如图,我们在项目里添加一个Student类,里面包含 姓名,年龄、是否是男孩 三个属性

2:把 Studen引入到 Test.m文件中使用;

- (void)testExample
{
    //创建两个学生对象,并初始化一些属性;
    Student *stu1 = [Student new];
    Student *stu2 = [Student new];
    
    stu1.name = @"Mike";
    stu1.age = 18;
    stu1.isBoy = YES;
    
    stu2.name = @"Lisa";
    stu2.age = 18;
    stu2.isBoy = NO;
    
    //测试 是否为 nil
    Student *stu3 = [Student new];
    stu3.isBoy = YES;
    //当姓名为nil时,错误会提示,并显示后面的log
    XCTAssertNotNil(stu3.name, @"学生3的姓名不应该为空");
    
    
}

 这里:

3:XCTAssertTrue和XCTAssertFalse

4:XCTAssertEqual使用

5:你可以建立自己的测试类 ,但要继承 XCTestCase; 并且里面测试方法要是 - (void)test 且以 test开头的;当没有错误 的时候,就会全部变成绿色;

控制台会打印信息:

6:还有关于 TDD 测试驱动开发,请谷歌之!

原文地址:https://www.cnblogs.com/cocoajin/p/3658907.html