selenium - 为什么我们使用 WebDriver 而不是 Selenium IDE?

标签 selenium webdriver selenium-webdriver selenium-ide

为什么我们不能在 Selenium IDE 中记录所有测试用例,将其导出到 Java/WebDriver 并使用 Eclipse 在 WebDriver 中运行它?

我需要一个清晰的解释,因为我在使用 WebDriver 时非常困惑!

谁能解释一下为什么 IDE 录制的脚本在 WebDriver 中失败?

最佳答案

why cant we just record all of our test cases in IDE, export it to java/webdriver and run it in webdriver

很好的问题,答案如下:

Selenium IDE 是一个录制和回放工具,非常易于使用,但非常不可靠。在 Web 应用程序中,录制和播放通常是不受欢迎的。由于 Web 应用程序经常更改,因此 IDE 并不是生产环境的理想解决方案,因为可能会出现维护噩梦。

让我给你举一个实际的例子。您记录您的测试,然后找到一个具有动态 ID 的元素。当然,我们可以将其导入到 Eclipse 中,但是当测试开始失败时会发生什么?为什么不简单地让您的测试变得敏捷和独立以首先捕获这些内容。

它还可以归结为您的测试自动化原则。在我看来(以及其他几位专业人士),测试自动化认为应该从编程的角度来处理测试自动化。程序员应该编写测试并维护测试。理想情况下,您的质量保证人员应该接受过编写和维护自己的测试的培训。

再次回到您的问题,IDE 被设计为自动化的快速解决方案,而不是完整回归套件的解决方案。

And can anyone please explain why IDE recorded scripts fail in Webdriver?

我已经有一段时间没有使用IDE了,但是它们失败的原因是因为导出的脚本只是步骤,而不是整个java文件。这也是因为 Selenium IDE 导出在如何运行测试方面应该是不可知的。假设我是 jUnit 的用户..如果 Selenium IDE 始终将其导出到 TestNG 会怎么样?这不公平..老实说,我宁愿创建自己的测试,也不愿每次创建测试文件时都更改这一行。

您可以阅读一项名为 Why do Record/Replay Tests of Web Applications Break? 的研究的全文。

关于selenium - 为什么我们使用 WebDriver 而不是 Selenium IDE?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19683100/

相关文章:

java - 无法在 ExtentReport 中添加两个类的结果

javascript - Protractor 是否适用于 Angular Material 对话框弹出窗口?

python-3.x - Selenium 使用 2captcha Python 提交 recaptcha

java - 如何在 Selenium Webdriver Java 中设置多个代理

javascript - JavaScriptExecutor 中引用 selenium 元素

java - "Next"Button in Javascript & used JavascriptExecutor to click on "next"button 但它没有帮助我

python - Python Selenium WebElements 和 .text 的问题

python - 错误类型-消息: unknown error

css - 提取 :after using XPath 中的内容

android - By和MobileBy的区别