一起读测试论文(2)--基于selenium+testNG的测试框架

乙醇 创建于 8 months 之前

最后更新: less than a minute 之前

阅读数: 498

一起读测试论文(2)--基于selenium+testNG的测试框架

今天给大家带来的论文发表于2015年,全文的主旨是在描述如何使用selenium + testNG来实现一个稳定高效的web自动化测试框架。

文章开篇还是祖传的测试论文三件套

  • 为什么要做测试
  • 什么是web自动化测试
  • 用什么工具做web自动化测试

这里就不展开了。

后面直接上了一张模块图,并对每个模块进行了详细的说明。

Object Repository

对象库。好吧,你说你没有对象...

selenium支持多种定位业务元素的方式,不过如果页面频繁变化的话,用selenium原生的地方方式就会带来一个维护成本偏高的问题。

于是有人就提出了对象库的概念,把所有的元素定位都集中在一个地方管理,我最早是在08年左右在一个叫做QPT的自动化测试工具中了解到这个概念的,如今12年过去了,这种方式依然行之有效。

Input file

在web系统中,用户经常需要输入一些信息,比如登录时候的用户名和密码。这些输入就可以放在input file里维护,这样每次输入相同内容的时候就可以直接从文件里读取了。不过要注意的是,这里仅维护一些必填项,一些可选项我们可以用随机值的方式去代替。

Utility Section

工具库,可以分成下面几种。

  • User Actions File:selenium提供了一些基本的元素操作方式,比如点击,但是另外一些操作,比如选择select box等的复杂操作其实并没有提供(原文大概是这个意思,不过selenium后面的版本确实提供了多种多样的操作行为工具,比如action chains以及select的操作等,可能当年文章写作时selenium是缺乏该能力的),可以将这些操作封装起来,后面调用的时候就可以多次复用了。

  • Utility file: 这个文件封装了一些常用功能,比如登录登出。

  • Screenshot Generation:实现了用例错误时自动截图的功能。

具体截图过程如下

  • 创建文件夹
  • 从testNG拿执行结果
  • 判断执行结果
  • 如果执行失败则自动截图
  • 截图用执行时间来命名
  • 保存截图

Test suite

testNG提供。

Customization of test report

自定义测试报告。基本上就是用的testNG提供的html report。

Email customized report to respective person

发邮件通知相关人员。使用 Mail.jar来实现。

结果对比

文中最后给出了该框架prowork Framework对比传统方式的优势,基本上是全面碾压。

总结

可以看出框架整体的结构是非常简单的,核心思想就是尽量复用TestNG的功能,然后封装一些工具函数,增加框架的可维护性。

如果大家遇到一些技术瓶颈或是想了解最新的一些测试思潮,偶然读一些论文还是很有帮助的。

0

相关课程

mockito简明教程
图文
mockito简明教程

课程分类: 测试工具

mock工具

  • 已完结
  • 已更新7集
  • 最后更新时间: 2024-03-18 12:50:29

免费

查看详情
requests从入门到精通
图文
requests从入门到精通

课程分类: 测试工具 接口测试

python接口测试必会

  • 已完结
  • 已更新16集
  • 最后更新时间: 2024-03-18 12:54:40

免费

查看详情
Locust实用教程
图文
Locust实用教程

课程分类: 性能测试 测试工具

python语言实现的非常出色性能测试工具

  • 已完结
  • 已更新9集
  • 最后更新时间: 2024-03-18 12:24:59

免费

查看详情
TDD测试驱动开发教程
图文
TDD测试驱动开发教程

课程分类: 测试框架 软件测试基础

TDD其实并不神秘

  • 已完结
  • 已更新7集
  • 最后更新时间: 2024-03-18 11:53:22

免费

查看详情
软件测试基础教程
图文
软件测试基础教程

课程分类: 软件测试基础

转码和转行必备

  • 已完结
  • 已更新9集
  • 最后更新时间: 2024-03-18 11:40:05

免费

查看详情
软件测试入门教程
图文
软件测试入门教程

课程分类: 软件测试基础

新人如何转码到软件测试

  • 已完结
  • 已更新9集
  • 最后更新时间: 2024-03-17 11:07:23

免费

查看详情