如何在量角器中使用 by.model 定位 angular 元素

How to locale angular element using by.model in protractor

我有这个文本框元素。

<input type="text" name="textbox" class="box-input ng-pristine ng-scope md-input ng-empty ng-valid ng-valid-required ng-touched" ng-required="field.required" ng-model="$ctrl.model[field.nameField.uuid]" ng-disabled="::field.readOnly" id="input_15" aria-invalid="false" style="">

在量角器中我应该如何使用它来定位元素?我不太确定如何使用 ng-model="$ctrl.model[field.nameField.uuid]"

这样试试

let input = element(by.model('$ctrl.model[field.nameField.uuid]'));

我建议尽可能使用唯一 ID,或者一些导致单个元素的独特 class 样式。

如果您使用的是 angular 2 或更高版本 by model 可能不适合您,

您仍然可以使用模型属性通过 css 来识别您的元素,就像这样

$('[ng-model="$ctrl.model[field.nameField.uuid]"]')
    or
element(by.css('[ng-model="$ctrl.model[field.nameField.uuid]"]'))