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. 使用二阶微分锐化图像(拉普拉斯算子)基本原理及Python实现

    1. 拉普拉斯算子 1.1 简介 一种典型的各向同性的微分算子,可用于检测图像中灰度图片的区域 $$ \nabla^{2} f=\frac{\partial^{2} f}{\partial x^{2} ...

  2. Python进阶编程 面向对象

    一.面向对象 1.1面向对象的基本格式 class 类名: def 方法名(self): print(123) return 123 def 方法名(self): print(123) return ...

  3. Codeforce1196_D_F

    D RGB Substring 题意 给定一个只含RGB三种字符的字符串,问最少修改多少个字符,能使得修改后的字符串存在一个长度为\(k\)的子串是...RGBRGB...这个循环字符串的子串. 分析 ...

  4. 缓存---LRU算法实现

    2.LRU   以下是基于双向链表+HashMap的LRU算法实现,对算法的解释如下:   设置一个map存放对应的键和值,同时设置一个双向链表,来保存最近最久未使用的关系,如果访问一个键,键存在于m ...

  5. MVC和MVVM设计模式简单理解

    1.mvc设计模式理解 Model: 模型 持有所有的数据状态和业务逻辑; 泛指数据库,链接数据库,建立数据模型 View: 视图 用来展示数据模型在页面上,泛指前端 Controller: 控制器, ...

  6. ELK-全文检索技术-lucene

    ELK   :  ELK是ElasticSearch,LogStash以及Kibana三个产品的首字母缩写 一.倒排索引 学习elk,必须先掌握倒排索引思想, 参考文档: https://www.cn ...

  7. vue video.js使用

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

  8. 使用 dataset 管理数据(官网)

    ECharts 4 开始支持了 dataset 组件用于单独的数据集声明,从而数据可以单独管理,被多个组件复用,并且可以基于数据指定数据到视觉的映射.这在不少场景下能带来使用上的方便. ECharts ...

  9. LDP - Linux文档工程的简介,包括帮助,向导和文档

    总览 SYNOPSIS Linux文档工程(LDP)为Linux社区提供多种自由文档资源,包括向导 (guide),常见问答 (FAQ),入门 (HOWTO) 以及手册页 (man-pages). 作 ...

  10. Python杂章

    IDLE常用的快捷键: Ctrl+]:缩进代码 Ctrl+[:取消缩进 Alt+3:注释代码 Alt+4:去掉注释 F5:运行代码 Ctrl+Z:撤销一步 print('你好,Python!')