.Net软件测试化之道 [James D.MCCaffrey]

前言

轻量级自动化测试的优点

SAPES

  • Spead: [速度] 快速运行成千上万个用例
  • Accuracy: [准确性] 不受人为因素影响
  • Precision: [精度] 每次都以相同的方式运行
  • Efficiency: [效率] 自动运行,不许要人参与
  • Skill-Building [技巧] 提升测试人员技术

第一部分 Windows应用程序测试

第一章 API测试

从本质上来说,API测试是用来验证组成软件的那些单个方法的正确性,而不是测试整个系统本身.

API测试也被称为单元测试(Unit Testing), 模块测试(Module Testing), 组建测试(Component Testing), 以及元件测试(Element Testing).

为了将待测的程序和用于测试它们的测试套件(test harness)系统区分开来,待测程序通常叫做SUT(System Under Test), AUT(Application Under Test) 或者IUT(Implementation Under Test)

通常来说,当待测函数或方法都位于DLL当中时,使用术语API测试.当待测方法位于某个类(当然,这个类可能作为一个DLL来实现)中的时候,使用术语单元测试等更为宽泛的术语.

API测试需要注意的点

  • 存储用于测试用例的数据 (文本[自定义的序列化/反序列化,IOReaderWrter],XML[XmlSerializer],数据库[ADO.net])
  • 读入测试用例的数据
  • 解析测试用例
  • 运行测试用例
  • 判定测试结果
  • 纪录测试过程与结果
  • 给测试加上时间戳
  • 综合总结测试结果
  • 纪录测试总耗时
  • 处理输入输出特殊值(null,string.Empty,"",越界值)
  • 处理"方法抛出异常"
  • 发送邮件(Report)
  • 自动运行(.Bat, Task Schedule, Daily Build & Run)(CISystem,TFS,Bamboo)

基于反射的UI测试

     编写基于反射的轻量级的UI测试自动化程序,必须要通过编成完成的任务

  • 通过某种方式从测试套件程序中运行待测程序(AUT:Application Under Test),以便两个程序之间进行通信。
  • 操纵应用程序窗体,从而模拟用户对窗体所实施的moving和resizing操作
  • 检查应用程序窗体的属性,确定应用程序的状态是否正确,从而判定这个测试场景通过与否
  • 调用应用程序的方法,从而模拟一些用户操作,比如模拟单击一个按钮控件

 

 

 

 

posted @ 2009-05-13 16:43  Vincent Yan  阅读(236)  评论(0编辑  收藏  举报