Javascript自动化测试WebDriverIO

您是否在寻找使用JavaScript进行编程的Selenium的自动化测试框架?

如果是这样,您可以看看WebdriverIO。 

Selenium JavaScript Bindings?

您可能会问的第一个问题是,“为什么不使用Selenium JavaScript Bindings ?”

嗯,如您所知,Selenium只是一个API,需要您自己创建自动化框架的所有部分。

Christian(webdriverIO的作者)说,WebdriverIO为您提供了一个完整的框架。 它不需要你像Selenium一样从头开始实现一堆东西。

它提供了构建可扩展和可持续测试套件所需的一切。

它还具有Selenium版本中没有的额外功能。

Kevin解释说,WebdriverIO的主要好处是它就像SeleniumJS的结合。 它采用了这一基本理念,并通过大量功能,插件和更多功能使其更容易开始测试。

它自动处理建立真实测试框架的所有样板。

更简单的Selenium语法

与我谈过的关于WebdriverIO的每个人都提到使用它编写测试是多么简单。

根据Larry的说法,WebdriverIO非常聪明。 例如,使用常规Selenium WebDriver,您可以通过CSS或ID或名称或部分文本来“查找元素”。

使用WebdriverIO,它只是一个简单的driver.click元素,在任何背景中,它将根据您传递的定位器使用的元素来决定。

因此,如果它是一个CSS,一个部分文本或XPath,它可以自己解决它。

Kevin同意并且还提到了其他基于Selenium的工具,但要使用那些你必须了解Python,Ruby或Java的工具。 与您在WebDriverIO脚本中查看的内容相比,这些语言非常冗长。

WebdriverIO的优点在于它的语法非常简洁。

那么WebDriverIO提供的其他功能有哪些呢?

Shadow Doms支持

构建在软件开发中变得流行的Web组件的趋势之一是使用Shadow Doms。

对于自动化这可能是棘手的,因为这种技术允许隐藏的DOM树与标准DOM中的元素相关联,这意味着许多元素不可用于创建“点击”类型的脚本。

随着WebdriverOP v5.5.0的发布,它现在包含对阴影 Dom的内置支持 ,其中包含两个新引入的命令shadow $和shadow $$。

Shadow $ - 此函数使您可以访问给定元素的ShadowRoot中的元素。

shadow $$ - 此函数使您可以访问给定元素的ShadowRoot中的元素

Larry说这是他喜欢使用WebdriverIO的主要原因之一。

JavaScript测试生态系统

Kevin还指出,WebdriverIO具有出色的插件和服务生态系统,可让您轻松添加服务和插件。

它还有一个很好的安装程序,为您提供了添加不同框架和内置支持其他第三方工具的选项。

例如,在安装过程中,您可以选择要使用的框架:

Mocha

Jasmine

Cucumber


(**根据Christian的说法,最常用的框架是Mocha,但基于twitter pool,Cucumber实际上是最受欢迎的框架。)

报告部分使用什么:

Allure Reporter

Concise Reporter

Dot Reporter

Junit Reporter

Spec Reporter

Sumologic Reporter

Report Portal Reporter

Video Reporter

HTML Reporter

JSON Reporter

Mochawesome Reporter

Timeline Reporter

服务使用什么?

Appium Service

Applitools Service

BrowserStack Service

Crossbrowsertesting Service

Devtools Service

Firefox Profile Service

Sauce Labs Service

Selenium Standalone Service

Static Server Service

Testingbot Service

ChromeDriver Service

Intercept Service

Zafira Listener Service

Report Portal Service

Docker Service


只需单击鼠标,您就可以安装并运行您喜欢的配置而无需执行任何其他操作。

除了易于安装之外,您还可以获得一些不错的调试功能,如监视模式和调试命令。

观察模式

另一个很酷的功能是观察模式。

使用测试运行器,您可以在处理文件时查看文件。 如果您更改应用程序或测试文件中的某些内容,它们会自动重新运行。

通过在调用WebDriver.io命令时添加监视标志,测试运行程序将在运行所有测试后等待文件更改。

调试命令

使用debug命令,可以在运行时停止执行并暂停测试。 暂停将使浏览器保持打开状态,这很酷,因为您可以查看浏览器并检查元素。

查看页面上可以实时交互的所有可用元素很有帮助。 然后,您可以从终端本身发出命令,以便在将它们添加到脚本之前进行尝试。

对QA和Devs有好处

Kevin是一名开发人员,他也相信这个框架对于测试人员来说是个不错的选择。

对于QA人员,我认为使用带有WebdriverIO的JavaScript对于QA人员来说比Java更容易。 即使你所教的人熟悉编程,试图弄清楚Java以及它们如何工作也是非常复杂的。

JavaScript有一个更容易学习的曲线; 与其他语言相比,它看起来肯定更简单。

我也推荐它用于前端开发人员,因为他们不必学习不同的语言来使用它。



社区怎么样?

在选择任何开源工具时,确保项目处于活动状态并且人们正在开展工作至关重要。

没有社区的项目是非常危险的。

对于Christian来说,他在WebdriverIO社区中最为自豪的是项目背后的团队。

例如,有一个Gitter支持渠道 ,成千上万的人经常互相帮助。 因此,无论何时您有问题,都有人可以帮助您,反之亦然。

选择开源工具时另一个有用的指标是它的受欢迎程度。 它越受欢迎,人们可能做出的贡献越多,工具保持增长的可能性就越大。

查看下载数据,到目前为止, Selenium仍然比WebdriverIO更受欢迎。 Cypress.io也越来越多地进入自动化领域。

但除了这两个例外,WebDriveior是JavaScript领域中最受欢迎的框架。

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

推荐阅读更多精彩内容