一、单元测试的概念

本文介绍了单元测试的概念,强调其在敏捷开发中的重要性,如方便重构、改进设计和减少DEBUG时间。详细阐述了如何进行单元测试,包括手动和自动方式,并提到了xUnit测试框架的结构。此外,还列举了iOS常用的单元测试框架,如OCUnit、GHUnit和OCMock。最后,介绍了测试驱动开发(TDD)的理念,提倡先编写测试代码再实现功能,以提高代码质量和开发效率。

一、单元测试的概念

  单元通俗的说就是指一个实现简单功能的函数。单元测试就是只用一组特定的输入(测试用例)测试函数是否功能正常,并且返回了正确的输出。

  单元测试是敏捷开发的关键元素          

 

二、为什么要使用单元测试

1. 方便重构

2. 单元测试类似于一个可执行文档,我们可以根据单元测试来判断此函数是用来干什么的

3. 改进设计

4. 减少DEBUG的时间

5. 最直接的原因是保证我们函数的正确性,如果这个函数在没有保证正确的情况下就被上层代码调用,那么随着项目的深入,调用层次会越来越深,就很容易产生严重的BUG问题,从而增加开发难度,降低开发效率!

 

三、如何进行单元测试

1、手动的

  通过代码调试器逐句调试

  使用书面的测试计划

2. 自动的

  使用测试框架

  编写测试代码代替测试计划

 

四、使用单元测试框架

xUnit test frameworks                    

  - 测试类

  - 可选的setUp(初始化)和tearDown(执行清理)方法

  - 多个独立的测试方法

  - 一个测试文件对应一个测试类

  - 每个类的函数对应若干个测试用例

  - 使用断言验证代码

 

五、iOS常用单元测试框架

1. OCUnit

  OCUnitXCode4.x集成的单元测试框架(SentTestingKit)

2. GHUnit

  第三方框架

  一些独特的特性

3. OCMock

  提供了对创建模拟对象的支持

 

六、Test-DrivenDevelopment(TDD)测试驱动开发

  是一种不同于传统软件开发流程的新型的开发方法。它要求在编写某个功能的代码之前先编写测试代码,然后只编写使测试通过的功能代码,通过测试来推动整个开发的进行。这有助于编写简洁可用和高质量的代码,并加速开发过程。(TDD就是把你的需求用测试给描述出来)

  - 在编码之前先测试

* 考虑所有的输入、输出、错误

  - 编写能通过测试的最少量的代码

    *避过度的优雅

  - 针对每个需求编写多个测试用例

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值