单元测试分为3种:

逻辑测试:测试逻辑方法

异步测试:测试耗时方法(用来测试包含多线程的方法)

性能测试:测试某一方法运行所消耗的时间

本节介绍逻辑测试,直接创建一个项目,并选中Include Unit Tests选项。

创建工程时选中Unit Tests.png

1.新建一个Person类,提供字典转模型的方法,这个方法就是需要进行单元测试的:

+ (instancetype)personWithDict:(NSDictionary *)dict;//字典转模型方法

字典转模型方法的单元测试.png

原始的Person.m文件:

#import ““Person.h””

@implementation Person

  • (instancetype)personWithDict:(NSDictionary *)dict {

Person *obj = [[self alloc] init];

[obj setValuesForKeysWithDictionary:dict];

return obj;

}

@end

2.下面,我们打开单元测试Tests黄色虚拟文件夹,然后Command+N 创建一个单元测试文件。文件命名格式:类名+Tests,继承自:XCTestCase

新建一个Unit Test文件.png

单元测试文件的命名格式.png

创建完毕,可以看到Tests文件里有如下4个方法:

单元测试开始前,先了解几个知识点:

单元测试是以代码测试代码

红灯/绿灯迭代测试开发

自己建立测试用例(使用例子数据,专门检查边界点)

单元测试不是靠 NSLog 来测试,NSLog 是程序员用眼睛看的笨办法。

使用 断言 来测试的,提前预判条件必须满足!

XCTAssert(expression, …)

XCTAssert(条件, 不满足条件的描述)

3.准备工作已完成,下面正式开始单元测试:

导入Person.h头文件,仿照文件自带的 - (void)testExample {} 格式,写这样一个逻辑测试方法:- (void)testNewPerson {} ,然后Command+S保存,左边会出现菱形白色方框,它就是执行单元调试的按钮??,在调试过程中,我们需要反复点击这个按钮去调试。方法里书写测试代码。

PersonTests.m文件:

// 逻辑测试方法

  • (void)testNewPerson {

// 1.测试 name和age 是否一致

[self checkPersonWithDict:@{@““name””

软件测试技术之iOS 单元测试—逻辑测试相关推荐

  1. 软件测试技术课后习题:第6章单元测试与集成测试-广东高等教育出版社,主编杨胜利

    目录 1.什么是单元测试? 2.什么是集成测试? 3.简述单元测试与集成测试的区别. 4.什么是静态测试? 5.什么是动态测试?简述动态测试的步骤. 6.简述驱动模块和桩模块在实际中的应用以及设计原则 ...

  2. 简述大型软件系统的测试步骤,软件测试技术.ppt

    软件测试技术.ppt (1)有效性测试 制定测试计划,运用黑盒法,验证软件特性是否与需求符合. 7.5 软件测试策略 前面简述了设计测试方法的各种技术.对每种方法而言,均有自身特长,一般的做法是,用黑 ...

  3. 淮海工学院软件测试技术实验三功能测试,软件工程-实验3软件测试技术实验(7页)-原创力文档...

    淮海工学院计算机工程学院 实验报告书 课程名: <软件工程> 题 目: 实验3软件测试技术实验 学 号: 2014140093 班 级: Z计121 姓 名: 薛慧君 评语: 评语: 成绩 ...

  4. 软件测试技术与项目实训pdf,软件测试技术任务驱动式教程pdf

    软件测试技术任务驱动式教程 内容简介 <软件测试技术任务驱动式教程>分四个篇章介绍了软件测试的基本知识.方法.工具及流程.软件测试的基本理论阐述了软件测试的概念.模型和分类,软件质量管理与 ...

  5. 软件测试设计与开发,软件测试技术·测试设计与开发.ppt

    软件测试技术·测试设计与开发 * 3.4 评审测试用例 复查测试用例时应该考虑的一些问题: 测试或测试组件完全针对的是需求中列出的功能吗? 测试组件是否覆盖了所有需求? 有冗余的测试吗? 每一个测试步 ...

  6. CMMI模型对软件测试技术的扩充

    在软件开发的瀑布模型中,测试是一个非常重要的工程阶段.从保证软件质量的角度来说,软件测试是软件质量保证工程的一个重要组成部分,也是最重要的质量保证手段.为了保证所提交的软件产品能够满足客户的需求,以及 ...

  7. 【软件测试技术期末复习选择题】

    软件测试技术期末复习选择题 1.在软件测试阶段,测试步骤按次序可以划分为以下几步:( A ) A.单元测试.集成测试.系统测试.验收测试 B.验收测试.单元测试.系统测试.集成测试 C.单元测试.集成 ...

  8. 如何选择好的软件测试技术?

    软件测试技术是指测试软件或软件一部分的方法或方式.每种测试技术都有其自身的优势.不同的技术针对不同类型的缺陷.因此,说一种技术是最好的是错误的.根据软件及其要求,一种测试技术可能比另一种更适合用于该目 ...

  9. 软件测试简介教程:单元测试、黑盒测试、白盒测试

    单元测试背后的原因通常,软件属于四级测试:单元测试,集成测试,系统测试和验收测试,但有时由于时间消耗,软件测试人员进行的单元测试最少,但单元测试的跳过可能会导致集成测试,系统测试期间出现更高的缺陷 , ...

最新文章

  1. Coursera: Internet History, Technology, and Security
  2. cmd orcal 中文乱码
  3. python跟java-python(一):python与java语法的异同之处
  4. 强化学习笔记:Q-learning :temporal difference 方法
  5. 吴恩达 coursera ML 第六课总结+作业答案
  6. 计算机造句英语怎么说,计算的英文翻译是什么及如何造句
  7. java VM argument_java之program arguments与VM arguments
  8. [html] 你知道什么是反向链接吗?它有什么应用场景呢?
  9. php 代码下载_PHP实现下载功能的代码
  10. 每个数据科学家都应该知道的 20 个 NumPy 操作
  11. mac终端支持git
  12. keil教程——串口调试
  13. 游戏测试一工作原理及测试流程
  14. html设置字体透明度,css怎么设置字体不透明度?
  15. 学说不能选计算机专硕的课,初试前先选组,选定离手还不能改?北京邮电大学计算机...
  16. Java岗大厂面试百日冲刺 - 日积月累,每日三题【Day6】 —— 网络编程1
  17. AireOS WLC配置AP Group
  18. SDH,OTN,IP,MPLS,ATM网络介绍
  19. Windows下安装与配置Docker
  20. 一经开源就爆了!谷歌这个脚本工具注定要火

热门文章

  1. [架构之路-160]-《软考-系统分析师》-10-系统分析-7-数据与数据流程分析、需求规格说明书
  2. Oracle net architecture
  3. 南卡耳机好还是万魔好?国产半入耳蓝牙耳机对比
  4. windows隐藏此电脑中默认文件夹
  5. chrome始终显示版本过旧,无法自动更新,官网在线升级包失败的解决办法
  6. 【Zeekr_Tech】整车OTA概述
  7. python求表面积代码_用于计算python中的体积或表面积的良好算法
  8. 使用instantclient_19客户端(免安装)远程连接Oracle服务器端数据库
  9. dotnetbar-SuperTabControl禁止调整顺序
  10. Web自动化测试-Protractor基础(一)