基于迭代开发的自动化测试脚本开发流程1

来源自己参与编写的一个项目英文文档,这里只做简单概括提取.使用的工具是基于selenium的Tellurium框架

一.概述
本文档定义了自动化测试脚本开发流程,描述了脚本开发的方法以及过程.

二.角色定义
1.Dev-负责开发需要被自动化的程序
2.QC-执行回归测试的人员,他们也是自动化测试完成后的使用者
3.ART-自动化测试脚本开发成员

三.角色间交互流程图

说明:在IterationN, Dev在开发Iteration N, QC在设计Iteration N 的测试用例,在测试Iteration N-1的程序,ART在开发Iteration N-2的自动化脚本
四.QC向ART交付Test Case
所有的Test cases在交付之前应该遵循如下标准,Iteration N-2的build应该准备好.
  • test case所要遵循的
  • 1.Zephyr做为测试用例的管理工具,所有需要开发的测试用例,应该都能在Zephyr中被找到
    2.所有测试用例应该遵循测试用例模板
    3.所有的测试用例应该是可以理解以及步骤明确的,包括前置条件,测试步骤,期望结果.....
    4.测试数据被明确定义
    5.每个测试用例应该是独特唯一的ID
    6.每个测试用例都应该可以追溯到某个User Story 或者Epic
    7.每个测试用例都应该经过QC手工测试通过
    8.测试用例应该划分优先级,ART将从优先级最高的测试用例开始开发

  • 测试环境
  • 1.Iteration N-2的测试环境应该是稳定的
    2.Dev Team应该让HTML的页面元素拥有唯一的ID

  • QC向ART交付步骤
  • 1.创建测试用例集合
    2.验证,排优先级
    3.在每个新的Iteration开始之前的最后一天(上个Itearation的最后一天)交付

    五.ART Iteration过程
    每个Iteartion跟Dev的Iteration一样,是两个星期,工作内容如图:


    六.自动化测试脚本设计活动
  • 测试用例评审和分析
  • 在评审过程中,Art Team会发现有些测试用例不能被100%自动化,此时,应该向QC manager沟通,以便撤销某个测试用例,或者,减少自动化测试的步骤,不能自动化的主要原因有:
    1.技术问题,由于采用测试用具的限制,某些功能不能实现
    2.时间成本问题,某些验证如果自动化,需要写很多代码,效率太低,需要权衡
  • 设计脚本
  • 1.脚本应该遵循测试用例,每一步都与测试用例相对应

    七.脚本开发
  • 录制脚本
  • 主要工具是Selenium IDE, Tellurium的Firefox插件以及Firebug.
  • 创建脚本
  • 数据管理原则
  • 1.测试执行前后,数据库的数据应该不发生变化,通过测试中的setUp和tearDown方法实现.
    2.可以考虑使用DBunit实现
    3.DEV应该帮助ART了解数据库的结构,以便更好得操作数据


    猜你喜欢

    转载自lijingshou.iteye.com/blog/914295