基于selenium的web自动化测试脚本设计研究
摘要近些年来web软件开发项目渐进复杂 因此自动化测试技术在web测试中的作用日益重要但是目前很多自动化测试的脚本设计不合理造成维护测试数据与测试脚本变得极其复杂因此如何设计拥有良好结构的自动化测试的脚本变得十分重要。本文在selenium开源测试框架的基础上实现了测试数据与测试脚本分离此外采用数据驱动脚本技术以及三层脚本结构组织测试框架提高测试效率。
关键词自动化测试测试脚本 S e le nium
1研究现状
Web自动化测试就是利用相应的自动化测试工具如S e le nium、Watir、Ma xQ等以及测试脚本模拟用户与网页交互的过程然而目前软件项目开发周期越来越短版本迭代越来越频繁如果相应版本的页面更改后如何合理组织测试数据和测试脚本实现测试脚本的重用同时将测试数据和测试脚本分离这是自动化测试中的难点和重点。
Selenium IDE
通过一个浏览器的插件记录浏览器与用户的相互作用的动作在Selenium中自动生成与web对应的测脚本。然后可以通过运行脚本完成实际用户与浏览器的交互过程。
S elenium Re mote Co ntro l
主要由两部分组成 client lib和Selenium server。 Selenium server主要负责控制浏览器Client lib使用软件测试脚本来调用Se lenium server的库当运行web测试脚本的时候脚本将通过c lient lib向 se lenium S erver发送http或者https请求 selenium server对该请求进行解析之后发送javascript脚本命令给通Selenium的核心组件。
虽然Selenium操作简单但是它的用户友好度比较差操作界面比较简单粗糙提供的功能也很有限虽然提供了最基本的操作但在测试组件和测试用例调试等方面的功能较差对浏览器页面元素的维护的支持也不全面。
1.2 自动化测试相关术语
1数据驱动
通过预先定义的变量从外部的文件如中读取测试用例或脚本所需的测试数据。
最近发现一个比较怪异的事情,在访问和登录大部分国外主机商和域名商的时候都需要二次验证。常见的就是需要我们勾选判断是不是真人。以及比如在刚才要访问Namecheap检查前几天送给网友域名的账户域名是否转出的,再次登录网站的时候又需要人机验证。这里有看到"Attention Required"的提示。我们只能手工选择按钮,然后根据验证码进行选择合适的标记。这次我要选择的是船的标识,每次需要选择三个,一...
昨天有在"盘点2021年主流云服务器商家618年中大促活动"文章中整理到当前年中大促618活动期间的一些国内国外的云服务商的促销活动,相对来说每年年中和年末的活动力度还是蛮大的,唯独就是活动太过于密集,而且商家比较多,导致我们很多新人不懂如何选择,当然对于我们这些老油条还是会选择的,估计没有比我们更聪明的进行薅爆款新人活动。有网友提到,是否可以整理一篇当前的这些活动商家中的促销产品。哪些商家哪款产...
今天中午的时候有网友联系到在选择网站域名建站和主机的时候问到域名和IP地址有没有关联,或者需要注意的问题。毕竟我们在需要建站的时候,我们需要选择网站域名和主机,而主机有虚拟主机,包括共享和独立IP,同时还有云服务器、独立服务器、站群服务器等形式。通过这篇文章,简单的梳理关于网站域名和IP之间的关系。第一、什么是域名所谓网站域名,就是我们看到的类似"www.laozuo.org",我们可以通过直接记...