selenium WebDriver

最近常常有人提问,你如何理解和看待这个selenium?html

针对这一问题,官网上已经给了很明确的答复:"浏览器的自动化操做,你想干吗就干吗.....就这么简单!"java

Selenium automates browsers. That's it! What you do with that power is entirely up to you.android

 

今天我本身也从头缕缕思路大笑git

 

selenium的projects包含以下几个方面:程序员

1.Selenium IDE 、 2.Selenium Remote Control 、 3.Selenium Grid 、4.Selenium WebDrivergithub

1. Selenium IDE做为Firefox上的一个插件,提供录制功能,我的观点,若是能手写代码,就不要用这个东西。web

2. Selenium Remote Control是一个客户端/服务器系统,能够在本地或在其余电脑上控制Web浏览器,使用几乎任何编程语言和测试框架。chrome

3. Selenium Grid 能够远程的控制到并在多个服务器上同时运行测试编程

4. Selenium WebDriver能够在本地或远程计算机上的驱动浏览器api


简单的了解了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了,他会以为你这个好麻烦,搞不懂,仍是我本身点点吧。因此这个东西强求不得。对于自动化工程师的职业发展,也一样看本身的规划了,你能够选择作一名精通于某一个工具或者技术的工程师,你也能够选择作一个名气十足的架构师,这彻底看我的的爱好,其实再好的架构,上面的代码仍是须要工程师来写的,我仍是那句话,各有各的价值,没有高低之分。

一点点我的偏见!

 -----------------------------------------

本文摘自:http://blog.csdn.net/wanghantong/article/details/28897879

相关文章
相关标签/搜索