WTD测试框架(一)框架功能模块
2017-03-26 00:00
162 查看
作者 何坤158109016@qq.com V2.0 2017/3/26 www.snappydata.top
webui case存放目录在框架根目录下的 wtdwebuicases 文件夹中。webUI自动化测试引擎可以直接调用原生为编译的java类型的case文件。也就是说,只要将.java结尾的case文件放入case目录中,就可以直接运行,不需要将此java文件编译成.class类型文件。这样极大的方便了case的开发。
具体步骤是先将.java类型的case文件动态编译成.class类型的文件。然后利用java反射机制实例化此case。之后调用此case中的execute()方法。这样,这个case就开始运行了,测试人员只需要在case的execute()方法中写case的测试步骤。测试步骤中支持WTD框架封装的一些方法和webdriver自带的所有方法。而且支持case对当前页面截图保存,以便后续排查错误使用。
case的编写方式及其简单,只需要创建一个xml文件,并且指定要测试的URL地址,类型,参数,及期望的返回值。
接口测试case在框架根目录下的 wtdapicases目录下。此框架支持公共接口和用户自定义变量。比如由于很多接口是需要在用户登录状态下才能执行的,所以我们的测试框架实现了用户自定义变量的功能。测试开发人员可以先定义一个公共的登录的xml接口文件。在真正测试的接口中预先调用登录的xml接口。并将返回的cookie或者其他登录有关的信息存储在测试开发人员自定义的变量中。这样用户在执行接口时就可以加上此变量的值,而绕过登录。
WTD测试框架功能模块图:
1.webui 测试case 引擎
selenium在webui测试的地位很高的,它集成了webdriver来对各种浏览器的模拟操作。目前webdriver支持的浏览器很多,包括chrome, firefox,IE,safari等。而且还支持无界面的浏览器htmlunitdriver。目前WTD支持chrome,firefox,ie,safari,支持在windows,linux, mac上部署执行(但我推荐用chrome在windows上执行,稳定性高)。webui case存放目录在框架根目录下的 wtdwebuicases 文件夹中。webUI自动化测试引擎可以直接调用原生为编译的java类型的case文件。也就是说,只要将.java结尾的case文件放入case目录中,就可以直接运行,不需要将此java文件编译成.class类型文件。这样极大的方便了case的开发。
具体步骤是先将.java类型的case文件动态编译成.class类型的文件。然后利用java反射机制实例化此case。之后调用此case中的execute()方法。这样,这个case就开始运行了,测试人员只需要在case的execute()方法中写case的测试步骤。测试步骤中支持WTD框架封装的一些方法和webdriver自带的所有方法。而且支持case对当前页面截图保存,以便后续排查错误使用。
2.API接口自动化case引擎
目前API case引擎支持get,post, jsonrpc类型的接口自动化测试。case的编写方式及其简单,只需要创建一个xml文件,并且指定要测试的URL地址,类型,参数,及期望的返回值。
接口测试case在框架根目录下的 wtdapicases目录下。此框架支持公共接口和用户自定义变量。比如由于很多接口是需要在用户登录状态下才能执行的,所以我们的测试框架实现了用户自定义变量的功能。测试开发人员可以先定义一个公共的登录的xml接口文件。在真正测试的接口中预先调用登录的xml接口。并将返回的cookie或者其他登录有关的信息存储在测试开发人员自定义的变量中。这样用户在执行接口时就可以加上此变量的值,而绕过登录。
3.结果生成及截图模块
WTD框架可以为每一个case生成一个目录文件,其中包括测试log文件,测试结果文件,截图文件。在整轮case跑完后,框架会将所有case结果文件整合成一个结果文件。整个log文件夹在框架根目录下的 bin\logs目录中。4.报告生成及发送模块
在结果生成模块执行后会生成一个allResult.xml的总的结果文件。WTD会将此xml文件转换成一个结果的html富文本文件,其中包括总的case数量,以及每种类型case pass和fail的数量和pass 的比例。然后将结果发送给所有的测试人员。测试人员列表可以在框架根目录的 config\conf\wtd.cfg.xml中添加。相关文章推荐
- AFNetworking3.1.0源码分析(一)整体框架和功能模块
- odoo11新开发功能模块测试指南
- Android图片加载框架最全解析(六),探究Glide的自定义模块功能
- 集合框架_Collection集合的功能概述、Collection集合的基本功能测试
- Android图片加载框架最全解析(六),探究Glide的自定义模块功能
- php简单测试slim框架的功能
- python 和 selenium实现web UI功能自动化测试框架(米兔888)
- 使用sqlite3(数据库知识)的接口函数完成一个用户注册功能模块设计 要封装成函数,在独立的main中调用测试
- 2018_03_08 搭建基础mybatis框架,以及使用junit测试crud功能
- opencv的框架与各模块功能介绍
- maven+springMVC精简web项目框架无具体功能,仅登录模块
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->用户管理模块新增“重置用户密码”功能
- 基于httpclient和mysql的接口功能自动化测试框架
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->新增模块管理界面导出功能(可按条件导出)
- Python UnitTest 框架执行功能自动化测试
- 软件功能测试框架
- SOAPSonar测试框架容易部署,并提供功能、性能、一致性和安全性测试
- Winform开发框架中的内容及文档管理模块功能介绍
- 用java构建企业级自动化框架(第四篇-构建框架分布式并发执行测试用例功能1)
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->用户管理模块新增“重置用户密码”功能