- 术语
>被测代码:需要被测试的代码
>产品代码:产品中的代码,将来要出现在发布的产品中
>测试代码:用来测试产品代码的代码这些代码不会出现在发布的产品中。
>测试用例:用来描述被测代码行为的一段测试代码,它会创建测试的先置条件并检验重要的后置条件是否满足
>测试夹具:用来为一系列的测试用例提供一个合适环境的代码,从而使这些测试用例能够运行被测代码测试夹具会通过建立通用的设置以及用来运行产品代码的环境来辅助测试。使用测试夹具的目的是避免重复,测试夹具会把所有测试都需要额那些部分组织在一处。
- 什么是自动化单元测试框架
。自动化单元测试框架是一个软件包,它能让程序员表达产品代码应该有什么样的行为自动化单元测试的框架的工作就是要提供以下能力:
>用于表达测试用例的通用语言;
>用于表达期望结果的通用语言;
>能够使用产品代码所用编程语言的功能;
>能把所有工程,系统或子系统中的单元测试用例收集到一起;
>一个能运行全部或者部分测试用例的机制;
>对于测试套件的成功和失败给出明确的报告;
>对于失败的测试给出详细的报告
- “四阶段”模式(杰拉德)
该模式的目的是创建明确,可读并且结构良好的测试。如果您遵循这个模式,阅读测试的人会很快明白要测试的是什么。这种模式被打破时,测试作为文档的价值就打了折扣,阅读测试代码的人将很难读懂测试要表达的需求是什么.Gerard的四个阶段分别是:
>建立:创建测试的前置条件
>运行:对系统进行操作
>验证:检查预期的输出
>拆卸:把被测试系统恢复到测试前的初始状态
本书主要介绍两个不同的自动化测试框架:Unity和CppUTest,这两个自动化测试框架都承袭自xUnity单元测试自动化框架系列接下来的章节将会分别对两种自动化测试框架进行分别介绍。详细信息可以看官方提供内容http://www.throwtheswitch.org。后续的篇幅也主要是对书本内容及官方资料的学习总结。
- 开发环境介绍
目前我使用的环境是VMware的+ Ubuntu18.04.1,具体每一个自动化单元测试框架需要安装的软件将会在接下来具体的实践章节进行介绍。