本次实训我们的项目只需进行单元测试和功能测试。 编码阶段有序进行,第三周将进入测试密集进行阶段
单元测试
单元测试是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确,通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为
单元测试的目的
(1)检查单元模块内部的错误,为软件的评审验收提供依据。 (2)单元测试是以程序设计说明书和之前所作的测试数据(正常的和错误的)为指导,测试模块内重要的路径,以检查出错误; (3)检验信息能否正确地流入和流出单元; (4)在单元测试工作过程中,其内部数据能否保持其完整性,包括内部数据的形式、内容及相互关系不发生错误,也包括全局变量在单元中的处理和影响。 (5)在为限制数据加工而设置的边界处,能否正确工作。 (6)单元的运行能否做到满足特定的逻辑覆盖。 (7)单元中发生了错误,其中的出错处理措施是否有效。
单元测试的优点
1.由于单元测试是在编码过程中进行的,若发现了一个错误,不管是从做回归测试的角度,还是对错误原因理解的深刻性的角度,修复错误的成本远 小于集成测试阶段,更是小于系统测试阶段。 2.在编码的过程中考虑单元测试问题,有助于编程人员养成良好的编程习惯,提高源代码质量。
单元测试方法
主要采用白盒测试方法,辅以黑盒测试方法。白盒测试方法应用于代码评审、单元程序检验之中, 而黑盒测试方法则应用于模块、组件等软件的功能测试之中 。在进行单元测试常用的测试策略为: 1.桩模块测试 2.驱动模块测试 3.自顶向下单元测试策略 4.自底向上的单元测试策略 5.孤立测试
等价类法示例:
设有一个档案管理系统,要求用户输入以年月表示的日期。假设日期限定在 1990 年 1 月~2049 年 12 月,并规定日期由 6 位数字字符组成,前4 位表示年,后 2 位表示月。现用等价类划分法设计测试用例,来测试程序的" 日期检查功能" 等价类划分 判别表法 例子: 某公司薪水计算程序 某软件的一个模块的需求规格说明书中描述,如图3-2所示: (1)年薪制员工:严重过失,扣年终风险金的4%;过失,扣年终风险金的2%。 (2)非年薪制员工:严重过失,扣当月薪资的8%;过失,扣当月薪资的4%。
|