基于Selenium工具对Web应用进行功能测试

                                                               基于Selenium工具对Web应用进行功能测试

一、背景。

       最新一年(2019)的软件测试大赛即将拉开帷幕,今天与往年相比,增加了自主可控的分赛项,进一步的丰富了比赛的内容,各项评分依据也更加明确,因此能够根据分数更有针对性的找出自己的代码问题了,从而获得更好地分数,提高脚本编写能力。评测工具完善速度之快,超出个人想象,可以看得出来主办方费心了,预祝软件测试大赛发展的越来越好。(更多内容,可参阅程序员在旅途)

        自主可控赛项的比赛内容有三部分构成,分别为:功能测试、性能测试、众包测试,其中功能测试的内容就是利用Selenium测试工具对Web应用进行功能测试。之所以称作为自主可控,是因为待测试Web应用是部署在国产的应用服务器上面的,采用的国产CPU、操作系统等,具备完全自主知识产权,编写的脚本也必须启动国产浏览器(360浏览器、QQ浏览器)来测试Web应用才可以得分。

        有关Selenium的介绍与环境安装,在之前的一篇博客里面也写过,链接为 Selenium介绍及环境搭建,经过又一段时间的学习,对这个有了进一步的认识,加上此次比赛需要使用国产浏览器的环境,此前并不了解这方面的东西,因此打算在这里再次记录一下学习过程与心得体会。

        对软件测试感兴趣的,想参加的比赛的,官网地址在这里全国大学生软件测试大赛

二、Selenium介绍以及环境配置。

       2.1、Selenium介绍:

       我们知道,软件测试的目的在于在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估。由于在某些特定的场景下,例如:重复单一的数据录入或是击键等测试操作,使用手动测试会进行大量重复性的操作,浪费大量时间和人力,因此,这种情况下有必要引入自动化测试来对手动测试进行补充,从而提高测试效率。

      根据对测试模块规模的不同,敏捷大师Mike Cohn提出了测试金字塔的概念,从而为测试分层打下基础,以此来提高自动化测试的效率。测试金字塔如下图所示:

测试金字塔

      随着测试规模的不断增大,测试成本与测试难度也在不断增加。图中的三层,代表的含义如下:①Unit测试即单元测试,是对程序的函数方法进行测试,属于白盒测试的一种类型,通常由开发人员编写相关的测试脚本进行测试。在Java中我们常会用Junit框架进行测试。②Service服务测试即对相关的API接口进行测试,目的是为了测试服务提供的数据等输出结果是否能够正常获取,以此来验证相关业务逻辑代码是否书写正确,常见的工具有Postman等。③UI测试是对整个系统进行的完整模块的测试,主要来验证系统的界面元素是否符合规范、提供的功能是否满足预期,常见的测试工具有Selenium、Appium等。

       Selenium是进行UI测试的一种框架,主要是对Web应用进行功能测试,从2004年诞生至今,已经发展到3.0版本,是一个非常优秀的开源测试框架。Selenium的框架底层使用JavaScript模拟真实用户对浏览器进行操作,测试脚本执行时,浏览器根据脚本代码做出点击,输入,打开,验证等操作,从普通终端用户的角度测试应用程序,以期来发现程序的Bugs,促进程序功能的完善。如果需要进一步了解此框架,可以去github了解源码,或者官网了解他的近期发展情况。

     

评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值