引言:随着互联网的迅速发展,越来越多的人从事IT行业,其中有一部分人员在行业中做软件测试一职,在软件测试中,越来越多的人会运用自动化测试,下面我就介绍一种测试框架Selenium RC。
Selenium RC 使用编程语言编写脚本,通过Selenium RC服务器作为代理服务器去访问应用从而达到测试的目的。
由于Selenium RC不再需要依附Firefox,所以其可以在其它更多的浏览器上进行测试。
Selenium RC的使用包括两部分:
第一部分是服务器。服务器下载后即可使用,记得开始跑脚本时把服务器打开。它是一个已经打包好的JAVA程序,运行 java -jar selenium-server.jar即可。
另一部分是脚本,脚本需要我们自己编写。它可以使用多种语言编写,如C#、Ruby、JAVA等,在这里我采用的是JAVA。它可以在多个测试框架上应用,比JUnit/Nunit,Testng等,这里采用的是Junit。在整个测试框架中,Selenium提供了封装好的Selenium接口与类,如果使用JUnit它同样提供了封装好的测试类。
Selenium IDE和Selenium RC对浏览器的支持情况比较
Selenium RC的框架
Selenium RC的程序文件同样包括两个部分。
Selenium Server:负责控制浏览器行为,它主要包括3个部分:Launcher,Http Proxy,Selenium Core。其中Selenium Core是被Selenium Server嵌入到浏览器页面中的。其实Selenium Core就是一堆JS函数的集合,就是通过这些JS函数,我们才可以实现用程序对浏览器进行操作。
Client Libraries:提供了编写测试用例控制Selenium Server所需的多种编程语言库。
Selenium RC的工作流程
测试用例(TestCase)通过Client Libraries的接口向Selenium Server发送Http请求,要求和Selenium Server建立连接。 Selenium Server的Launcher启动浏览器,把Selenium Core加载入浏览器页面当中,并把浏览器的代理设置为Selenium Server的Http Proxy。 测试用例通过Client Libraries的接口向Selenium Server发送Http请求,Selenium Server对请求进行解析,然后通过Http Proxy发送JS命令通知Selenium Core执行操作浏览器的动作。 Selenium Core接收到指令后,执行操作。 浏览器收到新的页面请求信息(因为在上述图片第4步中,Selenium Core的操作可能引发新的页面请求),发送Http请求,请求新的Web页面。由于Selenium Server在启动浏览器时做了手脚,所以Selenium Server会接收到所有由它启动的浏览器发送的请求。 Selenium Server接收到浏览器的发送的Http请求后,自己重组Http请求,获取对应的Web页面。 Selenium Server的Http Proxy把接收的Web页面返回给浏览器。 相信大家也了解了自动化框架Selenium RC,在软件测试中,熟练运用这一框架,可以让自己在测试过程中更顺畅,完成整个测试流程。想必大家也都会在测试过程中掌握更多的技巧,那么如何让自己在软件测试这一行业中更有优势呢?如果在此基础上再多一个额外的证书,相信肯定会对自身更有帮助!我们可以了解一下ISTQB证书,它是国际认可的一个软件测试工程师认证证书。
如果有任何疑问,欢迎添加qq群测试入门到大神 755431660 共同学习~
领取专属 10元无门槛券
私享最新 技术干货