我们最近遇到了一个问题。我们的团队使用 selenium 进行了自动化测试脚本。现在我们在用户界面中收到了更改请求,所以我们修改了 css。
问题是自动化测试脚本不起作用。我们知道这是由于 css 的变化。
我的问题是:
有效处理这些情况的最佳方法是什么?
我们最近遇到了一个问题。我们的团队使用 selenium 进行了自动化测试脚本。现在我们在用户界面中收到了更改请求,所以我们修改了 css。
问题是自动化测试脚本不起作用。我们知道这是由于 css 的变化。
我的问题是:
有效处理这些情况的最佳方法是什么?
这是测试最大的不便......当某些事情发生变化时,您必须重写您的测试脚本。
您可以选择最适合您的元素本地化方式。但是总是存在 xPath(以及 CSS 或任何其他类型的定位器)将被更改的风险。事实上,你不能为所有可能性编写脚本。当应用程序发生任何更改时,您只需手动更改脚本。
这是你无法回避的事实。
有一些方法可以减少这种不便。一种非常流行的解决方案是使用Page Object 模式。
这个想法是通过在两者之间插入一层来将测试逻辑与被测应用程序分离。这样,如果应用程序发生更改,您不需要更改测试逻辑,您只需要更新受影响的页面对象。
为了简化此更新过程,使用可以生成页面对象类的工具(或创建您自己的工具)也是一个好习惯。