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 测试驱动开发,请谷歌之!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· 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工具