selenium简介-----如何理解selenium-WebDriver
最近经常有人提问,你如何理解和看待这个selenium?
针对这一问题,官网上已经给了很明确的答复:"浏览器的自动化操作,你想干嘛就干嘛.....就这么简单!"
Selenium automates browsers. That's it! What you do with that power is entirely up to you.
今天我自己也从头缕缕思路
selenium的projects包含如下几个方面:
1.Selenium IDE 、 2.Selenium Remote Control 、 3.Selenium Grid 、4.Selenium WebDriver
1. Selenium IDE作为Firefox上的一个插件,提供录制功能,个人观点,如果能手写代码,就不要用这个东西。
2. Selenium Remote Control是一个客户端/服务器系统,可以在本地或在其他电脑上控制Web浏览器,使用几乎任何编程语言和测试框架。
3. Selenium Grid 可以远程的控制到并在多个服务器上同时运行测试
4. Selenium WebDriver可以在本地或远程计算机上的驱动浏览器
简单的了解了selenium之后,看看到底selenium哪里适合你?
1. 如果你想做一个强健的、基于浏览器的回归测试
2.多环境下分发和扩展可运行的脚本
这时候就可以选择selenium webdriver, 你可以使用多种脚本语言来驱动浏览器,目前,Selenium WebDriver 已经正式弃用Selenium Remote Control,而Selenium Server 内置了网格功能。
Selenium WebDriver的优点:它将Webdriver的API融入了进来,让selenium有进一步的增强。Webdriver是一套面向对象的API。相比selenium1而言,Selenium WebDriver能够进行更有效的功能测试的覆盖,比如文件上传、下载,弹出窗和对话框的问题,同时也克服了webdriverSelenium RC的单主机同源策略的限制的问题。
如果你使用Java语言来调用selenium WebDriver,那么下面这些接口一定都应该熟悉一下:
AndroidDriver,ChromeDriver,EventFiringWebDriver,FirefoxDriver,HtmlUnitDriver,InternetExplorerDriver,PhantomJSDriver,RemoteWebDriver,SafariDriver
最常用的就应该是FirefoxDriver,扩展一下就应该是InternetExploreDriver和ChromeDriver和SafairyDriver.
如果你想进行一个扩展EventFiringWebDriver也是必不可少的。
吹吹的说起来
selenium WebDriver不过是一个自动化测试工具罢了,优点就是开源易用,支持多种语言,多种浏览器,对于selenium WebDriver的使用来说,无非是在了解其基本操作的API之后,将业务逻辑和功能测试执行流程转换为计算机可读的代码,来代替我们进行复杂重复的人工测试。我们之所以使用它,无非是它能够帮助我们完成任务,达到实际的工作目标。这是从使用者或者说一个程序员的角度来讲,只要熟读API,能够准确的分析页面的DOM,遇到不同的问题,都能想出实际的解决方案,我觉得这作为一个自动化工程师已经很优秀了。如果说这时候你非要做一个平台,能够实现各种功能,要有良好的架构,良好的延展性,稳定性,叫什么软件测试架构师在做的事情,然后非要把那些手动测试的人也拉入到自动化的team中来,然后人家不想学你这个自动化,因为没有编码基础,学起来很费劲,这时候你就说要做一个万能的平台,不需要手动测试去学写代码也能进行自动化测试。。。等等一丢丢的理由吧。。。这时候我想提一个问题,为什么自动化测试现在这么火,但是每个公司或者说每一个team都必须要有手动测试人员呢???答案是很唯一的,因为任何人也取缔不了手动测试人员的角色,既然存在了就肯定有存在的道理。平台固然要作,个人对自动化测试平台的理解是,没有万能的平台,只有适合你自己业务需求的平台,你想用这些功能,你添加进去就好了,对于一个系统的生命周期,我不去评论,因为经验还没到那么多,但是我想说,国内外真的有多少系统能用到7年以上呢?一个系统能做到百年不倒?是不是架构师这个职位就不需要招人填补空缺了呢?或者说,只需要这些架构师整天看着程序员们写代码就可以了呢?腾讯算是国内比较大的互联网公司了,拿腾讯QQ来说,这短短10几年,QQ似乎也做了4次较大版本的改动吧,尤其是第四次的重新架构,可谓是大换血吧,平均算下来,万能的平台靠谱吗?
话说回来,无论使用哪种工具,解决问题才是关键,企业不同于学校,不管你使用了什么样的方法,你能把问题解决掉,那么你就是成功的。最最重要的是看人们给自己的定位,我就见过那种就喜欢做手动测试的人,代码框架你放那,让他配置个参数直接跑就OK了,他会觉得你这个好麻烦,搞不懂,还是我自己点点吧。所以这个东西强求不得。对于自动化工程师的职业发展,也同样看自己的规划了,你可以选择做一名精通于某一个工具或者技术的工程师,你也可以选择做一个名气十足的架构师,这完全看个人的爱好,其实再好的架构,上面的代码还是需要工程师来写的,我还是那句话,各有各的价值,没有高低之分。
一点点个人偏见!
忠 信
对朋友忠诚,对朋友信义,是最可珍藏的汗青.以信义交友,人字是大写的,情谊是纯净的;以信义交友,才能感觉到每天的太阳都那么光彩照人,才能体会到生命的真实存在.
selenium简介-----如何理解selenium-WebDriver相关推荐
- selenium简介_什么是Selenium? Selenium简介
selenium简介 什么是Selenium? (What is Selenium?) Selenium is a free Open source functional Testing tool u ...
- Python爬虫——Selenium 简介和下载
文章目录 Python爬虫--Selenium 简介和下载 1.Selenium 简介 2.Selenium 下载安装 3.Selenium 简单使用 Python爬虫--Selenium 简介和下载 ...
- selenium简介,原理,优点,工作过程,定位方式
1.selenium简介 selenium是一个用于web应用程序自动化测试工具,可以直接运行在浏览器,就行用户真正的在浏览器操作一样,支持的浏览器包括:IE,Firefox,Chrome,Safar ...
- Selenium简介以及selenium环境搭建
一.Selenium简介 1.Selenium : 是一款用于Web应用程序测试的工具,它支持多平台.多语言.多浏览去实现自动化测试,支持IE.Chrome.Firefox等浏览器 2.架构:Java ...
- Selenium - 简介
目录 selenium是什么? 应该具备的知识 Selenium功能特性 Selenium的局限性 Selenium与QTP比较 Selenium工具套件 Selenium集成开发环境(IDE) Se ...
- Selenium笔记(一)selenium简介、安装
前言 招聘要求中,基本都要求selenium,在测试群里问了下,实际使用的并不多,好吧,为了找工作,下面开始学习selenium:首先参考官方文档,大概操作一遍,然后参考博客再操作一遍,最后在开源系统 ...
- selenium 操作 html 5,[Selenium] WebDriver 操作 HTML5 中的 video
测试播放,停止播放 http://www.videojs.com/ 示例: package com.learningselenium.html5; import static org.junit.As ...
- selenium 简介
Selenium 是一个用于Web 应用程序测试的工具,支持多平台,多浏览器,多语言去实现自动化测试.目前在Web 自动化领域应用越来越广泛. Selenium也是一款同样使用Apache Licen ...
- 移除Selenium的浏览器window.navigator.webdriver等20多个指纹特征
Selenium特征指纹 一般Selenium自动打开浏览器后,会给其增加一些特征指纹,如下图: 怎样才能去掉这些特征呢? 有一种现成的nodejs库puppeteer-extra,这里面有一个ext ...
最新文章
- dex文件结构(二):dex文件加载基本原理
- chrome developer tools小技巧
- 0027-如何在CDH集群启用Kerberos
- FormatUtil
- python脚本运行一段时间后就停止了_CMD运行python程序自动暂停问题解决
- JS正则限制价格输入 0.01~ 99999.99
- iOS 检查指定日期是否在当前日期之前
- 计算机多重网络intnet,南昌大学计算机网络实验(全).doc
- python如何编辑pdf_python3.6 导入并编辑pdf 错误在哪里啊
- awk '/#BEGIN/,/#END/{next}1' 1是什么意思?-转
- 高等代数第3版下 [丘维声 著] 2015年版_书籍推荐 | 关于数学分析和高等代数
- Excel常用函数公式20例
- Java第四课:用类描述CPU速度和HardDisk容量
- 经典的java角色扮演,盘点2010年十大经典角色扮演类游戏合集
- 樱(桜) - 堀江由衣 (日语-中文-罗马)
- java todo注释_Java自定义注解
- mysql生成 my.cnf_mysql配置文件my.cnf一键生成工具
- ipa 安装包不用市场如果扫码下载安装 免费IOS安装API
- 在Windows7 系统上部署DNS服务器
- 结束进程导致桌面图标消失