自动化测试模型
线性测试:
我们发现它优势就是每一个脚本都是独立的,任何一个脚本文件拿出来就能单
独运行;当然,缺点也很明显,用例的开发与维护成本很高:
一个用例对应一个脚本,假如登陆发生变化,用户名的属性发生改变,不得不需要对每一个脚本进行
修改,测试用例形成一种规模,我们可能将大量的工作用于脚本的维护,从而失去自动化的意义。
这种模式下数据和脚本是混在一起的,如果数据发生变也需要对脚本进行修改。这种模式下脚本的没
有可重复使用的概念。
模块化与类库:
其实有不少内容是重复的;于是我们就考虑能不能把重复的部分
写成一个公共的模块,需要的时候进行调用,这样就大大提高了我们编写脚本的效率。
数据驱动:
数据驱动应该是自动化的一个进步;从它的本意来讲,数据的改变(更新)驱动自动化的执行,从而
引起测试结果的改变。这显然是一个非常高级的概念和想法。其实,我们可直白的理解成参数化,
输入数
据的不同从而引起输出结果的变化。
关键字驱动:
理解了数据驱动,无非是把“数据”换成“关键字”,通过关键字的改变引起测试结果的改变。
关键字驱动用编程方式就不太容易表现了。QTP、robot framework 等都是以关键字驱动为主的自动
化工具,因为这类工具主打的易用性,“填表格”式的关键字驱动帮我们封装了很多底层的东西,我们只
要考虑三个问题就可以了:我要做什么? 对谁做?怎么做?。