1:介绍:
在介绍自动化测试模型之前,我们先来解释自动化测试库、框架和工具之间区别。
库的英文单词叫Library,库是由代码集合成的一个产品,供程序员调用。面向对象的
代码组织形成的库叫类库,面向过程的代码组织形成的库叫函数库。所以webDriver属于库的
范畴。它提供了一系列的web页面操作方法,所以我们可以称它为WEB自动化测试库。
框架单词叫Framework,框架是为解决一个或一类问题而开发的产品,用户一般只需要
使用框架提供的类或函数,即可实现全部功能。unittest就是一个框架,它主要用于实现测试用例的组织和执行,以及测试结果的生成。因为它的主要任务就是帮助我们完成测试工作,所以我们通常把它叫做单元测试框架。
工具英文单词叫Tools,在我看来工具和框架所做的事情类似,只是工具会有更高的抽象,屏蔽了底层的代码,一般会提供单独的操作界面供用户操作。如Selenium IDE和QTP是自动化工具。
自动化测试模型的概念,我认为自动化模型可以看作自动化测试框架与工具设计的思想。随着自动化测试技术发展,演化为以下几种模型:线性测试、模块化驱动测试、数据驱动测试和关键字驱动测试。
2:自动化测试模型介绍
1:线性测试
通过录制或编写对于的程序的操作步骤产生相应的线性脚本,每个测试脚本相对独立,并不产生其他依赖和调用,这也是早期自动化测试的一种形式:它们其实就是单纯的来模拟用户完整的操作场景。
优势:每个脚本都是完整且独立
劣势:
1:开发成本高,测试用例直接可能会存在重复的操作,不得不为每一个用例去录制或编写这些重复的操作。例如每个用例中重复登录和退款操作。
2:维护成本很高,正是因为测试用例之家存在重复的操作&