如何select最佳自动化与selenium工具组合
这可能是基于意见的问题,但我真的很困惑select自动化工具组合。
到目前为止,我一直在使用Selenium webdriver,maven和Java来构build自动化框架。 这似乎完全正常工作。
现在有一天我觉得很多自动化工程师WebdriverJS
使用WebdriverJS
, WebdriverIO
, WebdriverIO
等等。
有人告诉我,如果使用WebdriverJS
/ WebdriverIO
/ WebdriverJS
构build自动化框架,那么执行速度将比Java
快。
我知道我应该根据自己的需求来select工具,但是同时我觉得我们不能在某些网站中使用WebdriverJS
/ WebdriverIO
/ WebdriverIO
在这种网站中所有的元素都必须被xpath
为dynamic改变class / id
大多数元素。
所以,如果任何人都可以给我提示哪些工具select哪种网站,那么这将是非常有帮助的。 即对于AngularJS
网站Node.Js
对于selenium自动化Node.Js
是很好的。
根据Selenium Official Webpage
Download Section
,您可以在Selenium Client & WebDriver Language Bindings
部分看到以下内容:
-
Java
-
C#
-
Ruby
-
Python
-
Javascript (Node)
所以从我个人的观点来看,这5个variables是Selenium Clients
Automation Framework
使用最广泛的Selenium Clients
Documentation
除了Selinium的GitHub ducumentation之外,它在互联网上可用的绝大多数文档都在Selenium (Java)
。 这是因为Java
作为一种Language
在世界范围内广受欢迎。 所以学习变得更容易 即使是Selenium (Java) Client Releases
的频率也会支持我的本地观点。
但是,我个人发现Selinium's GitHub Documentation
所有客户端绑定Selinium's GitHub Documentation
是完美的和精确的。
WebdriverIO
WebdriverIO是Selenium版本的另一个变体。 毫无疑问, WebdriverIO
团队已经在Selenium Client Releases
中搭build了一个追赶游戏的难题。 但我认为WebdriverIO
仍在不断发展。
Functional Perspective
:
从function的angular度来看,我将采用WebdriverJS
或WebdriverJS
。 原因很简单当浏览器加载完成后,我们inject
javascript functions
注入到浏览器中,然后使用它的javascript
来驱动浏览器中的“ Application Under Test
的Application Under Test
我仍然在实践中感受到了Selenium-RC
方式。