当前位置: 首页 > 面试题库 >

为什么我们使用WebDriver代替Selenium IDE?

公孙智
2023-03-14
问题内容

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

我需要明确的解释,因为我对使用WebDriver非常困惑!

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


问题答案:

为什么我们不能只在IDE中记录所有测试用例,将其导出到java / webdriver并在webdriver中运行

很好的问题,这是答案:

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

让我给你一个实际的例子。您记录了测试,并且找到了具有动态ID的元素。当然,我们可以将其导入eclipse,但是当该测试开始失败时会发生什么?为什么不简单地让您的测试敏捷而独立,从而首先抓住这些。

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

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

谁能解释一下为什么IDE记录的脚本在Webdriver中失败了?

我已经有一段时间没有使用IDE了,但之所以失败,是因为导出的脚本只是 步骤 而已,而不是整个Java文件。这也是因为Selenium
IDE导出在运行测试方面不可知。假设我是jUnit的用户。如果Selenium
IDE一直将其导出到TestNG怎么办?那将是不公平的。.老实说,我宁愿创建自己的测试,也不希望每次创建测试文件时都更改一行。

您可能会阅读一项名为“
为什么Web应用程序的记录/重播测试会中断的研究”的全文?



 类似资料:
  • 问题内容: 我是一个完整的初学者。 我已阅读了有关解决方案的Google文档。我在互联网上搜索了同样的内容。 但。一切似乎都是技术性的。 据我了解,.Flush有助于在功能出现时立即执行这些功能,而无需将它们捆绑在一起。 我对吗? 如果不是的话,外行人的含义是什么?并请举一个简单的例子。谢谢。 问题答案: 程序员在希望确保在继续之前将先前代码的输出和/或效果写入电子表格时会使用。如果您不这样做,则

  • 问题内容: 据我所知,以下两个代码段将达到相同的目的。为什么有块呢? 代码A: 代码B: 问题答案: 如果您未处理的异常被抛出会怎样?(我希望你不会抓到…) 如果从try块内部返回会怎样? 如果catch块引发异常会怎样? 一个代码块确保 无论 您退出该代码块(以几种方式明确地中止整个过程),该代码块都将被执行。这对于确定性清除资源很重要。

  • 问题内容: 在PHP页面上的表单中,可以使用: 要么 要么 在表单的动作属性中。由于echo 不会传递要使用的变量,而您必须使用,为什么还要使用它呢? 我问是因为我花了一些时间才弄清楚这些变量没有随传递。谢谢。 问题答案: 该属性将默认为当前URL。这是“将表格提交到它来自的地方的最可靠,最简单的方法”。 没有理由使用,并且根本不提交表单(除非附加了事件处理程序来处理提交)。

  • 问题内容: 我开始使用RxJS,但我不明白为什么在此示例中我们需要使用类似or 的函数;数组的数组在哪里? 如果有人可以直观地解释正在发生的事情,那将非常有帮助。 问题答案: 当您有一个Observable的结果是更多Observable时,可以使用flatMap。 如果您有一个由另一个可观察对象产生的可观察对象,则您不能直接过滤,缩小或映射它,因为您有一个可观察对象而不是数据。如果您生成一个可观

  • 问题内容: 我是Java或Selenium的新手。 我只需要帮助来了解一个基本问题。 为什么我们将firefoxdriver实例分配给WebDriver?WebDriver driver =新的FirefoxDriver() 我知道这是Java中的后期绑定,因为我们可以在以后的时间将IEDriver或其他实例分配给WebDriver。 问题1:但这适用于课堂,对吗? Question2:WebDr

  • 问题内容: 它为什么如此重要?根据XML映射的优势是什么?你能解释这些吗?谢谢。 问题答案: 它不是“强制性”中的重要内容。有优势和劣势的可能性是不同的。 优点: 编译时检查:如今在IDE中,用Java(而不是Xml)编写非常易于使用。启动应用程序(渐进式编译)时,没有发现 更多错别字 ,也没有什么值得记住的( 完成 )… 使用代码进行本地化(类级别):不必打开两个文件(java和xml)以获取完