考虑这个HTML:

<my-toolbox my-toolboxtitle="{{entity.name || 'New Entity'}}">
    <input ng-model="entity.name">
</my-toolbox>


在升级到量角器2.0之前,我可以使用以下工具箱:

element(by.css("[my-toolboxtitle='New Entity']")).then(function(toolBox) {

    //do stuff with toolBox

    toolBox.element(by.css("input")).sendKeys(....);

    //still do some stuff with toolBox even though the title changed

});


即使entity.name更改了,promise中的toolBox也不会更改。现在,在升级到量角器2.0之后,在更改工具箱中的名称后,测试失败并显示“找不到使用定位器的元素...”。有没有办法保留对toolBox元素的引用?

最佳答案

据我了解,以下应按原样工作:

var toolbox = element(by.css("[my-toolboxtitle='New Entity']"));
toolBox.element(by.css("input")).sendKeys("test");

关于javascript - Protractor 2.0通过更改属性获取元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29537775/

10-15 09:32