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 测试驱动开发,请谷歌之!

posted @   cocoajin  阅读(1208)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示