Selenium简介

作者: 自如_ | 来源:发表于2019-06-11 10:33 被阅读0次

    1.1是什么?有什么用

    我们用户上网是通过Web浏览器经过Internet访问各个站点的Web应用的。浏览器和Web Server之间是通过Http协议进行交互的。对测试人员来说,根据模拟的对象,常见的Web应用的自动化测试有两种方式。

    • 方式一:模拟整个http客户端,就是不需要浏览器,直接用测试工具模拟浏览器发送http请求给服务端。如下图所示。这种方式最常见的是性能测试工具(想一想,为什么),比如Jmeter等。
    image.png
    • 方式二:模拟用户操作

    这种方式,测试程序模拟用户操作浏览器(比如chrome、火狐等),进行对整个web应用进行测试,如下图所示

    image.png

    这种测试常见于功能测试工具,我们要讲的Selenium,就是典型代表。

    Selenium官网开头这样写着:Selenium可以(用程序控制)自动化浏览器。这是它的能力。至于你怎么用这种能力,用到什么程度,完全看你了。你可以只把他用在自动化测试方面,也可以用在日常的web操作上,比如100个新员工注册公司内部平台账号,又比如在12306网抢票。当今世界,web应用非常广泛。而web应用的客户端就是浏览器,也是驱动web应用的最源头,所以,驱动了浏览器,就基本驱动、控制整个web应用。而Selenium就是为了从浏览器端自动化web应用,量身定做的开源项目。可以这么说,目前它已经是这个领域最广泛使用的开元工具了。web测试自动化是很多公司控制成本,提高效率的急迫需求。所以我们打开招聘类网站,对测试人员(尤其是测试开发)的招聘说明中经常把Selenium技能作为一项重要的加分项目。Selenium目前已经获得主流web浏览器(比如Chrome、Firefox、Safari、Opera、Edge)的官方的驱动支持,自动化能力强,效率高。

    1.2工具包里有什么

    Selenium是一个工具包,里面有好几种工具用作不同web自动化用途。主要有下面这样常用的工具

    • Selenium RC (Selenium 1)

    Selenium RC就是Selenium 1,它是Selenium 23之前的版本。现在也仍然在维护中。和Selenium 2 、3使用Web Driver的方式不同,Selenium1主要依靠的是Remote ServerSelenium Core(Selenium 命令解释器)注入到浏览器,通过JavaScript实现Web 自动化。下面是其原理示意图

    image.png
    • Selenium Web Driver (Selenium 2、Selenium 3)

    Selenium Web Driver提供了web自动化的各种语言(java,python,ruby等等)调用接口库和各种浏览器的驱动(Web driver)。这是课程的重点,后面会详细讲解。下面是其原理的示意图

    image.png

    目前有两个版本Selenium 2Selenium 3Selenium WebDriver几乎支持目前所有的浏览器。

    • Selenium IDE
      Selenium IDE是火狐(Firefox)的一个插件,它提供了一个图形化界面,实现简单的IDE功能。它可以录制、回放用户在web页面上的操作,并可以编辑、调试命令,还能将命令脚本导出成不同的语言的Selenium自动化脚本。下面是其界面示例。
    image.png
    • Selenium Grid
      Selenium Grid可以用来在多台机器上同时执行Selenium自动测试。如果要执行的测试用例非常多,或者其中某些测试非常耗时,可以使用这种方法。

    相关文章

      网友评论

        本文标题:Selenium简介

        本文链接:https://www.haomeiwen.com/subject/mnmtfctx.html