Selenium自动化测试框架介绍

工欲善其事必先利其器,对于自动化测试也是同样的道理。进入自动化测试之前,怎么能不了解我们都有哪些框架、工具,又有哪些是主流的呢?

1. 行业自动化测试框集

对于大多数同学来说,并不需要全面了解自动化测试工具都有哪些,来看看现在主流的测试工具有哪些就行了。如下,给大家列出来:

UFT: 惠普提供的UFT,毫无疑问是现在商业界排第一的了。它的前身叫做QTP,升级了之后,对BS、CS,包括接口测试的支持性都非常好,也做了很好的扩展。但最近两年,UFT的势头有所减弱。

Selenium: Selenium最近几年趋势越来越火。因为大家都追求开源,而Selenium刚好满足开源的情况。它是一个基于BS测试工具,可以支持多浏览器IE、Chrome、Firefox,也可以跟多语言结合起来做。

RF,Robot Framework: 当有了RF之后,好多同学就不再使用UFT了,相应的,有些公司替换UFT到Robot fromework了,或者Watir等。

Watir:Watir也是一款非常优秀的自动化测试工具,这个工具通过Ruby语言开发,同属于开源阵列,免费使用。具有简单友好的API调用,但并不热门,社区论坛等不够活跃,遇到问题很难询问获得解答。

以上是目前自动化测试工具里边影响力比较大的,随着开源趋势越来越火,Selenium也逐渐成为了一个很好的自动化测试工具。目前,已经有很多团队在使用,其中也包括我们的团队。

当然,并非局限一种自动化测试工具,可以将多个工具结合起来,发挥每个测试工具的优势,例如,使用Selenium来做B/S测试,UFT来做C/S测试。

2. Selenium自动化测试框架

再来深入看看Selenium工具,Selenium是现在开源框架里一个常用的UI自动化测试框架。如果把QTP(Mercury)比作有毒的汞,那么,Selenium就可以看做是硒了,是专门对付这种“有毒"工具的克星!

为什么我们没有使用QTP,这与它的商业收费性质有巨大的关系。在05到07年之间,惠普收购了Micro QTP,成为了商业版本上收费的一个巨头。

Selenium都有什么特定呢,总结如下:

开源,免费

多浏览器支持:Firefox、Chrome、IE

多平台支持:Linux、Windows、Mac

多语言支持:Java、Python、Ruby、Php、C#

对Web页面支持友好

API简单,调用灵活,开发语言驱动

支持分布式测试用例的执行

Selenium自动化测试框架,对Web(Html)页面支持比较良好。在Web自动化测试方面,相比于基于对象识别的UFT,它则是一个基于元素的识别框架。虽然功能、使用上差不多,但个人觉得Selenium更加友好:简单的API调用,多开发语言的支持,甚至,支持分布式自动化测试用例的执行!

2.1 Selenium的版本发展

Selenium已经经过了三个版本的迭代。分别是1.0版本、2.0版本,以及现在的3.0版本。

1.0 版本由三大组件构成:IDE、Grid、以及Selenium RC。来看看Selenium 1.0家谱:

IDE就是常用的可视化集成开发工具,用于录制,回放自动化测试用例。

Grid就是分布式,是Selenium支持分布式的关键模块。能够对不同的软件,采取分布式方式运行,在同一时间段运行不同的脚本,对BS结构服务器进行测试,以及支持多台机器上并行运行。

RC就是它的核心库,全称Remote Control。这里边有各种客户端库,Server。这里有各种协议,应用开发人员可以使用自己喜欢编程语言,针对不同的浏览器进行操作。

2.2 Selenium 主流版本

Selenium 2.0,也是现在的主流版本,在原有的版本上进行了功能丰富,添加了WebDriver。

可以说,Selenium 1.0 + WebDriver就是我们的2.0版本了,也就是WebDriver代替了1.0中的Selenium RC。其实早期Selenium RC的灵活性并不太好,之后又研发了web driver,最终合到了一起,替代了Selenium RC。

2.0的版本已经比较成熟、稳定,3.0的版更多的是进行了功能的优化,与扩展:

最大的变化就在于去掉了Selenium RC

只支持Java8 及以上

可以支持FireFox47及以上版本(需要单独下载geckodriver,并配置path)

从版本迭代来看,3.0和2.0的差别、用法并不太大,掌握2.0后,切到3.0也是较容易的。


最后

基于Selenium的自动化测试在实践中应用较多,知识点儿也很多,那么,如何学习Selenium呢?现在网上有非常多的课程,但并不是所有的都是大家需要的。个人建议,大家把重点放在Web Driver上,选择一门开发语言,例如Python等,在实践中不断掌握基于Selenium的自动化测试!

关注公众号:IT赶路人,免费获得更多IT相关知识!

加油,IT赶路人

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,036评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,046评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,411评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,622评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,661评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,521评论 1 304
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,288评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,200评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,644评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,837评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,953评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,673评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,281评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,889评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,011评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,119评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,901评论 2 355

推荐阅读更多精彩内容