【问题标题】:Sahi: Cannot execute scripts recorded in a browser in multiple browsersSahi:无法在多个浏览器中执行记录在浏览器中的脚本
【发布时间】:2013-01-11 10:52:17
【问题描述】:

我们的 Web 应用程序设计为从 CSS 中挑选文本转换。 一个网页上有多个链接;因此,我将以 Next 链接为例。

当我将鼠标悬停在 FF 中的 Next 链接上时,它会显示以下代码: _click(_link("下一步"));

同样,当我将鼠标悬停在 Chrome 中的同一链接上时,它会显示以下代码: _click(_link("NEXT"));

当脚本在FF中记录并在chrome中执行时,它在该位置失败,因为“Next”链接不可用。这是链接的一个示例,有多个链接和多个页面。对于这种情况,我是否需要验证每个链接的文本,或者是否有通用方法,即 toLowercase 方法可以帮助我。

谢谢。

【问题讨论】:

  • 您使用的是哪个 Sahi?是Sahi Pro吗?还是 Sahi 操作系统?

标签: browser hyperlink cross-browser sahi


【解决方案1】:

正如 Kshitij 指出的那样,您可以通过使用正则表达式作为访问器来实现这一点……但您也可以检查控制器中的 Alternatives 下拉菜单。也许有一个更适合两种浏览器的替代访问器。

【讨论】:

  • 嗨,Brian,我看到你有使用 Sahi 和 Protractor 的经验。你对哪些工具更适合测试 Angular 应用有意见吗?
  • 嘿,Leo,由于 Protractor 能够定位模型/绑定,它似乎有利于测试 Angular 应用程序。而且由于它位于 WebDriver 之上,因此 Protractor 在移动设备上也可能拥有更光明的未来。也就是说,Sahi 确实是一个很好的工具,当然可以在 Angular 应用程序上使用。 Sahi 的优势 (IMO) 是它的易用性……非常适合编码知识较少的 QA 团队。
【解决方案2】:

我认为,问题应该是 Sahi 如何通过忽略区分大小写来识别带有文本的元素。 任何工具都只能记录当时浏览器上可用的属性。

您可以使用以下代码来实现该功能:

_click(_link("/Next/i"));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-21
    • 2020-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多