机动化尝试东西(10款好用的机动化尝试东西)

咱们都蓄意为 Web 运用步调建立易保护的尝试。动作这个目的的一局部,咱们都蓄意能会合精神在尝试自己,而尽管制止困在实行的简直详细中。从深刻来看,尝试该当口口网是可保护的,对软硬件按期的变换并不会妨害尝试自己大概让共青团和少先队的开拓节拍变慢。

机动化尝试东西(10款好用的机动化尝试东西) 第1张

迭代速率 / 实际情况

某些尝试东西不妨在做出变动和察看截止之间供给简略的反应轮回,但不许透彻地抄袭欣赏器的动作。其余东西大概会运用本质的欣赏器情况,但会贬低迭代速率,而且在贯串集成体例中大概会变得越发薄弱。

Selenium

机动化尝试东西(10款好用的机动化尝试东西) 第2张

著名的欣赏器 web 运用尝试框架,不妨用 Java、C#、Ruby、JavaScript、R 和 Python 等多种编制程序谈话编写尝试案例。

机动化尝试东西(10款好用的机动化尝试东西) 第3张

Selenium 为每种谈话供给存户端 API。

Selenium WebDriver 尽大概运用原生操纵体例级其余功效,而非鉴于欣赏器 JavaScript 的吩咐来启动欣赏器。

如许就绕过了原生功效和 JavaScript 吩咐之间因为纤细分辨而爆发的题目(囊括安定控制)。它供给了很大的精巧性,以至还扶助 if口口网rame 和多个欣赏器标签。

特出的跨欣赏器功效令人回忆深沉。不妨在合流欣赏器(Chrome、Firefox、Safari、Edge、Internet Explorer)上实行 Selenium 尝试。

Selenium Grid 不妨与 WebDriver 一道运用,以在长途体例上实行尝试。

运用 Selenium 的独一缺陷是,它须要洪量的本领,而且编写尝试特殊耗费时间。对没有编制程序体味的人来说,乍一看用 Selenium 编写尝试犹如很简单;然而即使没有最好试验,将引导名目内的尝试机动化框架难以保护且不够宁静真实。

https://www.selenium.dev/

机动化尝试东西(10款好用的机动化尝试东西) 第4张

Endtest

Endtest 是智能机动化尝试处置计划,它运用多个开源和闭源组件去简化创造和实行尝试的过程。个中之一即是 Recorder 组件不妨让用户不必编制程序本领就能创造和实行尝试。你不妨用图形化界面编纂处置本人的尝试案例,而不必编写任何代码。

它和 Selenium 一律具有精巧性,承诺你机动化尝试场景,个中包括 iframe、多个欣赏器标签、文献上传、ShadowDOM, 之类。它同 Selenium 一律具有跨欣赏器的个性, 扶助一切合流的欣赏器(Chrome、Firefox、Safari、Edge、Internet Exp口口网lorer)。同声,它也囊括跨欣赏器的云框架,扶助 Windows、Mac 以及挪动摆设上的欣赏器。

其余,它再有扶助 JavaScripts 实行的组件,以及发送 API 乞求和贯穿数据库实行 SQL 语句的组件。

那些组件可用来在尝试中增添特殊的考证办法,并可筹备或整理尝试情况。

https://endtest.io

机动化尝试东西(10款好用的机动化尝试东西) 第5张

Watir

Watir 是一个 Ruby 的欣赏器机动化尝试开源库。

Watir 与对欣赏器的互动办法和生人是一律的:如点击一个网页元素,填输出字符。

它的底层运用了 Selenium 而且供给同样的精巧性,也扶助跨欣赏器。同声,它也扶助 iframes 以及多个欣赏器标签。

Watir 最大的便宜是 API 很简单运用,它在复杂的 Selenium API 之上减少了一层大略性。

然而,它的重要缺陷是,它不如 Selenium 受欢送,在探求谜底妥协决计划上面你会遇到少许艰巨。

http://watir.com/

Puppeteer

一个 Node 库,它供给了高档的 API 并经过 DevTools 和议来遏制 Chrome(或 Chromium)。

我觉得将来它不妨包办 Selenium。它也具备扶助 iframe 和多个欣赏器标签的精巧性。

犯得着一提的是,它有 2 种各别的软硬件包:puppeteer-core 和 puppeteer

独一的辨别是 puppeteer-core 在安置后不会机动载入 Chromium。

puppeteer 的重要缺陷是不足跨欣赏器功效,由于它仅实用于鉴于 Chromium 的欣赏器。

纵然 Opera 和 Edge 迁徙到 Chromium,也没辙保护 Firefox 和 Safari 未来也会如许做。

另一个缺陷是,独一受扶助的谈话是 Node.js。纵然到 2020 年十足犹如都环绕 JS 打开,然而仍旧有少许用户大概想运用其余谈话举行机动化尝试的开拓。

https://pptr.dev/

Playwright

一个 Node 库,可经过单个 API 在 Chromium、Firefox 和 WebKit 欣赏器上实行机动化尝试。

Playwright 旨在连接延长的 Web 欣赏器集上实行机动化操纵。Playwright 一致于 Puppeteer。

它扶助多页面、多域名和 iframes 尝试,还不妨模仿挪动端摆设,地舆指向和权力遏制也是不妨尝试的。

纵然它具备更普遍的跨欣赏器扶助,但它也不扶助 Internet Explorer。

由于它是一个对立较新的库,以是你大概此刻在线上找不到很多资源。

即使你在编写 Node.js 代码上面有坚固的体味,那么 Playwright 不妨一试。

https://playwright.dev/

Sikuli

在运转 Windows、Mac 或 Linux 的台式计划机屏幕上看到的任何实质,都不妨运用 Sikuli 实行机动化尝试。

它运用由 OpenCV 扶助的图像辨别来辨别视觉组件。即使没辙轻快考察 GUI 里面或要操纵的运用步调或网页的源代码,这个东西会特殊简单。本质上,这是大普遍新颖 RPA 处置计划背地的本领。

Sikuli 的便宜是,元素具备独一属性或属性能否变动都可有可无,由于 Sikuli 仅依附于视觉辨别。

它的重要缺陷是视觉忍耐度让用户很难在各别的欣赏器和屏幕尺寸之间实行机动化。

而且,运用 Sikuli 库须要编制程序本领,而且你不妨在 Python、Ruby 和 Java 之间采用。

机动化尝试东西(10款好用的机动化尝试东西) 第6张

即使你有波及 Web 运用步调和桌面运用步调的搀和机动化尝试,则较好的做法是将 Selenium 用来 Web 组件,将 Sikuli 用来桌面组件。