Selenium 自述
Selenium 是由Jason Huggins软件工程师编写的一个开源的浏览器自动化测试框架。主要用于测试自动化Web UI应用程序。

Selenium 工作原理
通过编程语言(C#、java、javascript、Python、Ruby)来调用Selenium API,从而驱动浏览器进行自动化Web UI应用测试。

Selenium 特点
开源:使用c语言编写的,开放源代码,任何人都阅读源码,自由修改。
真实:模拟用户各种操作(鼠标与键盘上操作),支持相对复杂交互。
跨平台: 支持多浏览器。(IE、Chrome、Firefox)
              支持多服务端平台。(C#、java、javascript、Python、Ruby)

Selenium 组件

Selenium IDE:

一款浏览器chrome/Firefox的Selenium插件,可以在浏览器端自动创建测试与执行测试用例,支持脚本记录与回放。
运行模式由Selenium IDE与浏览器组成。

Selenium WebDriver:

通过编程语言(C#、java、javascript、Python、Ruby)可以在单一本地或远程计算机上本地模拟用户进行操作浏览器。
运行模式由编程语言、Selenium、浏览器组成。

Selenium Remote Control:

通过编程语言(C#、java、javascript、Python、Ruby)可以在远程服务器中远程控制本地或其他计算机模拟用户进行操作浏览器。
运行模式由编程语言、Selenium Remote Control Server、Selenium、浏览器组成。
PS:随着Selenium 2的发布,Selenium Remote Control已被正式弃用,推荐使用Selenium WebDriver。

Selenium Grid:

是对Selenium Remote Control扩展,通过编程语言(C#、java、javascript、Python、Ruby)可以在远程服务器中控制多台本地或其他计算机模拟用户进行操作浏览器。
运行模式由编程语言、Selenium Grid、Selenium、浏览器组成。

总结:浏览器自动化测试可以减少重复Web UI测试工作与测试成本,从而提高测试效率。

         浏览器自动化测试页面频繁更改会增加测试脚本维护成本,而且浏览器自动化测试不能完全取代人工测试。

Selenium 上手:Selenium扫盲区的更多相关文章

  1. Selenium (3) —— Selenium IDE + Firefox录制登录脚本(101 Tutorial)

    Selenium (3) -- Selenium IDE + Firefox录制登录脚本(101 Tutorial) selenium IDE版本: 2.9.1 firefox版本: 39.0.3 参 ...

  2. Selenium (4) —— Selenium是什么? WebDriver是什么?做什么?(101 Tutorial)

    Selenium (4) -- Selenium是什么? WebDriver是什么?做什么?(101 Tutorial) selenium版本: v2.48.0 (Standalone Seleniu ...

  3. Selenium (2) —— Selenium WebDriver + Grid2(101 Tutorial)

    Selenium (2) -- Selenium WebDriver + Grid2(101 Tutorial) jvm版本: 1.8.0_65 selenium版本: v2.48.0 (Standa ...

  4. Selenium (1) —— Selenium安装与测试(101 Tutorial)

    Selenium (1) -- Selenium安装与测试(101 Tutorial) jvm版本: 1.8.0_65 selenium版本: v2.48.0 (Standalone Selenium ...

  5. selenium - 查看selenium版本信息

    1. pip list 2. pip show selenium 3. cmd>>python >>> import selenium>>> help( ...

  6. 【selenium】- selenium简介

    本文由小编根据慕课网视频亲自整理,转载请注明出处和作者. 1. Selenium的来历 2. Selenium家庭成员 Selenium RC: Selenium 1 Selenium Webdriv ...

  7. 自动化测试模型 Selenium IDE Selenium Gird2

    1.线性测试 每个测试脚本相对独立,且不产生其他依赖与调用,其实就是单纯的来模拟用户完整的 操作场景.前一篇所写的测试脚本就属于线性测试. 优点:每个脚本完整且独立 缺点:测试用例的开发与维护成本高 ...

  8. Selenium(一)---Selenium的安装和使用

    一.前言 最近在帮一个老师爬取网页内容,发现网页是动态加载的,为了拿到全部的网页数据,这里使用到了Selenium.Selenium 是一个用于Web应用程序测试的工具,它可以模拟真实浏览器,支持多种 ...

  9. selenium上手

    功能自动化 前提 自动化的主要目的并不是为了找Bug,是为了证明功能可用 不只是所有的功能都可以自动化,如UI 并不是所有的项目都可以使用自动化,如selenium只能使用bs项目,小项目不适合使用自 ...

随机推荐

  1. [Vue] vue-router-interview

    1.vue-router 怎么重定向页面? 路由中配置 redirect 属性 使用路由的别名来完成重定向 2.vue-router 怎么配置 404 页面? path: '*',放在最后一个 3.切 ...

  2. 通过web.xml监听器启动main方法

    web.xml中添加要启动的类 <listener> <listener-class>server.NettyServer</listener-class> < ...

  3. vue video.js使用

    插件github地址:https://github.com/videojs/video.js 这边做一个切换视频vue url的解决记录 this.$nextTick(() => { let u ...

  4. css实现div水平垂直居中

    中秋快到了,祝大家中秋快乐. 平时大家写bug过程中肯定会遇到让div框水平或者垂直居中,然而有时候能居中,有时候不能居中.我把平时遇到的一些方法写出来,如果对你有用,那便是晴天. 1.text-al ...

  5. php 克隆 __clone

    php 克隆 clone 在实际编程过程中,我们常常要遇到这种情况:有一个对象A,在某一时刻A中已经包含了一些有效值,此时可能会需要一个和A完全相同新对象B,并且此后对B任何改动都不会影响到A中的值, ...

  6. python之堆排序算法代码

    以下是个人写的堆排序代码,原理我就不解释了(简单来说就是先建立一个大顶堆,然后进行顶点和最后节点的互换,互换之后需要重新建堆,两两比对,具体的话可以参照其他的,不过代码还是会于注释的. #根据问题进行 ...

  7. centos7 php-fpm 开机启动

    拷贝php-fpm脚本至/etc/init.d目录(文件在php解压目录) cp /usr/local/src/php-/sapi/fpm/init.d.php-fpm /etc/init.d/php ...

  8. Linux磁盘分区与lvm逻辑卷

    硬盘接口的种类分四类:(价格由低到高) IDE SATA硬盘:别名串口硬盘,具有较强的纠错能力. SCSI硬盘:即采用SCSI接口的硬盘,SCSI接口具有应用范围广,多任务,带宽大,CPU占用率低. ...

  9. Qualcomm_Mobile_OpenCL.pdf 翻译-5-性能优化的概述

    这章提供了一个OpenCL应用程序优化的总体概述.更多的细节将会在接下来的章节中找到. 注意:OpenCL程序的优化是具有挑战性的.相比初始的程序开发工作,经常需要做更多的工作. 5.1 性能移植性 ...

  10. 【转】linux下 如何切换到root用户

    转自:https://www.cnblogs.com/xinjie10001/p/6295020.html 默认安装完成之后并不知道root用户的密码,那么如何应用root权限呢? (1)sudo 命 ...