视觉回归测试
我们认为如果一个界面通过第一次的人工验证并发布之后,它就是一个正确的标准界面,并且是包含了人工测试价值的资产。当下一次测试的时候,这部分价值就应该被保留并重用起来,用于减少新的一次测试的时间,从而实现界面的快速回归测试。
视觉回归测试包含以下几个主要的测试步骤:
回归和感知测试流程差不多只是差异值要更小一点,并且只有效果图需要替换内容。
视觉测试用于评估Web应用程序跨浏览器的响应能力。通过执行视觉测试,您可以查看前端的UI / UX组件,以决定受测试的应用程序是否可以适配于各种浏览器,设备和屏幕分辨率,因为它们都提供了不同的体验。
据《The Selenium Guidebook》的作者Dave Haeffner介绍:
视觉测试是一种验证应用GUI是否正确地展示给用户的操作。测试目标是找出应用在可视化上存在的软件缺陷,例如,字体、布局和渲染问题。这使得所发现的软件缺陷可在被最终用户看到前得到修正。
此外,视觉测试可用于验证页面的内容,非常适用于一些提供图形功能(例如图表、仪表盘等)的站点。如果使用传统的自动化功能测试工具,那么实现此类验证是非常具有挑战的工作。
视觉测试在本质上是十分复杂的,其中需要考虑的因素很多,例如Web浏览器、操作系统、屏幕分辩、响应设计、国际化等。
之前业界里面对视觉测试的最佳实践就是: 截图比较用于视觉验证。
视觉回归测试包含以下几个主要的测试步骤:
1、对于产品版本进行截图(线上环境或者类线上环境)
首先人工完成第一个软件版本的测试并部署上线,在第二个版本需要进行测试的时候首先对第一个版本的所有界面进行截图形成基线。
2、对于新的发行版进行截图(比如测试环境)
然后对第二个需要进行测试的版本的所有界面也进行截图。
3、配对URL(忽略hostname)
通过配对URL,对所有的截图按照相同的URL进行分组。当然有时候会出现新的界面,有时候老的界面会被删除。对于新的界面就需要人工进行首次验证测试 。
4、像素级别的图形比较
对于分组之后的截图进行像素级别的比较并生产差别图。有时候为了降噪,可以只对局部关心的组件进行比较。
5、人工查看所有不同
最后通过人工审查差别图报告完成测试。
实质上,视觉回归测试就是用于图像比较的工具。比较好一点的图像比较 工具 还需要允许用户可以将需要忽略的区域设置为使用动态组件,从而避免误报。比如你的项目需求为开发只是改了一个CSS样式,而测试人员需要检查应该只影响一个点的布局更改时(例如,当您需要跨多个设备/屏幕分辨率进行跨浏览器测试和验证应用程序时),这将非常有用。 (例如当产品的小姐姐希望只有下图中的中间字体变化时)
修改1.png
(最后发现,网站中的另外的不希望变化的网页也被变化了)
修改2.png
比较有名的视觉回归测试的开源框架有: - AET 基于 Java 的视觉回归测试工具 还在更新中 - Gemini 基于Selenium的 还在更新中 - Dpxdt 用 Python 编写的,忧伤的是最新的更新也是2016年的了。
商用的比较火的就是以下这家咯: - Applitools Eyes 云服务加AI的视觉回归测试工具,Applitools公司在2017年7月获800万美元B轮投资,到目前为止,它已经获取到了1500万美元的风投,也成为了2018年全球最值得关注的100家AI公司之一。
欢迎加入 51软件测试大家庭,在这里你将获得【最新行业资讯】,【免费测试工具安装包】,【软件测试技术干货】,【面试求职技巧】... 51与你共同学习,一起成长!期待你的加入: QQ 群: 755431660
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- kudiffy-一个很酷的自动化回归平台
- 机器学习算法之岭回归、Lasso回归和ElasticNet回归
- [机器学习实战-Logistic回归]使用Logistic回归预测各种实例
- 线性回归背后的数学
- PyTorch 学习:线性回归
- 逻辑回归——详细概述
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Implementing Responsive Design
Tim Kadlec / New Riders / 2012-7-31 / GBP 27.99
New devices and platforms emerge daily. Browsers iterate at a remarkable pace. Faced with this volatile landscape we can either struggle for control or we can embrace the inherent flexibility of the w......一起来看看 《Implementing Responsive Design》 这本书的介绍吧!