量角器 - 如何通过自定义(非HTML)标签定位元素?

时间:2017-03-09 10:56:39

标签: protractor ui-automation devextreme

最近我使用量角器来自动化使用HTML 5,angular 2,java-script开发的应用程序。我能够毫无问题地实现自动化。但最近开发人员已将控件更改为DevExtreme HTML JS。之后,标签会发生变化(例如dx-text boxdx-tool-tip非HTML)。所以我现在无法使用量角器进行自动化。我已经尝试了所有可能的组合,但它无法正常工作。 那么有人可以帮助我,无论量角器是否支持DevExtreme控件,还是有其他选择?

以下是新代码的HTML: -

HTML code

以前我用id = inputUserName查找它工作正常,但现在它正在抛出错误。我已经尝试了所有可能的方法来找到它但没有运气。 任何人都可以让我知道是否有人使用量角器自动化使用DevExtreme HTML JS控件的应用程序?

1 个答案:

答案 0 :(得分:1)

从技术上讲,它仍然是HTML。您的问题是您使用的ID不再附加到input元素。您现在可以使用element(by.css('#inputUserName input.dx-texteditor-input'));注释中的xpath解决方案可能有效,但如果密码字段也具有相同的类,您将拥有多个元素,包括来自父元素的id,为您提供一些安全性。