自动化测试框架的目标定义

时间:2021-09-23 11:18:22

最近公司对现有的自动化测试框架进行反思,自己的心得体会记录下:

总的自动化测试框架的目标

a.易写,业务表达简单直白,自然语言化;

b.模块化,参与人员易贡献;

c.自动化能力易扩展,能与其它框架的library集成;

d.易debug;failed时候,能rerun指定的case step,而不是整个case rerun, 跑case的时候,能提供指定case预处理不跑,case所需的环境变量通过手动设置job变量来传递过去;

e.易排错,failed原因易查;初步做法是,能具体指出哪一类错误,而不是简单地显示一个failed信息。

f.case易提交运行;case 能方便从命令行提交运行。

g.易查看case运行的历史记录及log记录;捕捉到的log 清晰简单易理解, 要有一个总的log文件,跟踪记录case步骤的行为。

h.能与其他持续集成工具集成。

i. 资源管理和job运行的调度  所有资源要拓扑化描述。

j. case 语法或规范检查; 运行前可以预检查。

k.case 能支持tag分类方法;方便归类。

l.交互式session或session的重用机制;

m.自动化case 能generate 出case doc。

n.job 运行结果通知模块;邮件是最起码的要求。

o.对测试suite来说,运行结果可以自己定义base line 。

p. library 注册机制和共享查询机制。


case语言的 无限层级的include, 能使业务更模块化,抽象层级高--case语言级别模块化;

step command 命令 能按照参数规范 *地扩展;即test library bin 可以*地扩展--library bin 级别模块化;

宏变量替换 能使case表达更简洁;