编辑推荐: |
本文来自csdn,文章主要围绕自动化测试框架运行原理,自动化测试框架基础来介绍,更多详细内容请看下文。 |
|
1、为什么开发这个框架呢?
首先,自从做测试行业以来,没有属于自己的东西,功能测试这块可以说没有什么技术性的积累,都是经验;性能测试方面,用过jmeter、loadrunner,积累的经验比较浅薄;自动化测试接触过java+selenium;
在网上或者测试行业现阶段分析了一下,python这门语言学习起来简单一些但是功能强大,最后2016年下半年决定在空余时间学习研究python+selenium,最终在年底开发出来一个可使用的基于web页面的自动化测试框架。
2、开发框架的历程
2016-08,学习python的基础知识:python基础教程-菜鸟教程
2016-09,练习python的基础案例,自己动手编写:可以在网上搜索一下也可以使用菜鸟教程中的100案例
2016-10,搭建Eclipse+python2.7的开发环境,并编写基础的web元素定位、取值、输入数据等操作流程
2016-11,通过网上搜索和自我研究设计一个自动化测试框架流程
3、自动化测试框架介绍
1)我把自动化测试框架作为一个工作流程来设计,它定义了几层架构,定义了各层互相通信的方式。通过这个架构我们才能在上面进行拓展我们的测试计划、测试场景、测试用例、测试组件等,如图:自动化测试框架流程
测试计划:制定测试执行计划,内容包含:两个sheet页:计划描述、执行计划(包含执行的测试场景列表)
测试场景:制定测试场景,内容包含:场景描述、场景执行步骤(包含执行的测试用例列表)
测试用例:设计测试用例,内容包含:用例描述、用例执行步骤(包含用例执行步骤列表)
业务组件注册登记:各个模块的测试用例组件--类路径、类、方法名称等
计时器:记录测试用例执行时间点
测试用例执行器:测试用例执行开始、执行、结束等类
测试报告生成器:测试报告生成的类
2)自动化测试框架程序的分层如下:
Testcore:测试框架核心程序类
TestPlan:测试计划表格
TestResult:测试结果报告
TestSuite:测试场景表格
TestCaseclass:测试用例所有程序类
Testcase:测试用例-表格
3)自动化测试框架运行原理:
根据1)中ed自动化测试流程图基本上已经可以看出该框架的运行机制了,具体如下:
(1)、首先调用selenium的WebDriver启动浏览器(这里用默认浏览器火狐)-通过ConfigParser模块获取配置文件的url、数据库相关信息等,启动web系统
(2)、第一层循环执行找到所有的测试场景列表
(3)、第三层循环执行测试场景中配置的所有用例
(4)、第三层循环执行测试用例下的所有用例步骤
(5)、记录测试用例步骤、测试用例、测试场景、测试计划等执行结果、时间点等
(6)、把整个测试计划的数据和执行结果传入测试报告生成器中生成测试报告
|