我正在为角度应用程序开发e2e-tests但我遇到了一个问题。我正从<中检索值。 input type =“text”/>使用方法.getAttribute('value')但它缺少一个字符。我检查了保存值的元素的HTML属性,并正确显示它。我已经在应用程序中手动回溯了这些步骤,并且它也正确显示。这对我来说似乎非常不合逻辑,但也许有人有过这个问题的经验。提前谢谢。
HTML code:
<input class="form-control ng-pristine ng-untouched ng-valid" ng-model="schedule.cronValue" id="cronValue" disabled="disabled">
用于检索元素值的量角器代码:
//fill our CRON variable with the generated CRON value
element(by.id('cronValue')).getAttribute('value').then(function(attr){
CRON = attr;
});
预期输出是我的数据库中的值。从输入类型文本中检索CRON值。 如果需要,情况的屏幕截图:http://imgur.com/Co4mGyL
Console.log输出:
Expected value:0 0 0 1/1 * ? *
CRON:0 0 0 1/ * ? *
如您所见,在'/'。
之后缺少'1'答案 0 :(得分:1)
很难说无法重现问题,但我会尝试使用evaluate()
并“评估”模型的值:
element(by.id('cronValue')).evaluate('schedule.cronValue').then(function(value) {
CRON = value;
});
如果CRON
值仍然具有相同的不正确值 - 那么,至少,您会知道该值实际上是在模型上设置的,并且它可能来自数据库。