input.getAttribute('value') 返回的字符串缺少一个字符
returned string from input.getAttribute('value') is missing a character
我正在为 angular 应用程序开发 e2e 测试,但我 运行 遇到了问题。我正在使用 .getAttribute('value') 方法从 < input type="text" /> 检索值,但它缺少一个字符。我已经检查了包含该值的元素的 HTML 属性并且它正确显示了它。我已经在应用程序中手动追溯了这些步骤,并且它也可以正确显示。这对我来说似乎很不合逻辑,但也许有人有过这个问题的经验。提前致谢。
HTML代码:
<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”。
很难说不能重现问题,但我想尝试的解决方法是使用 evaluate()
和 "evaluate" 模型的值:
element(by.id('cronValue')).evaluate('schedule.cronValue').then(function(value) {
CRON = value;
});
如果 CRON
值仍然具有相同的不正确值 - 那么,至少,您会知道该值确实是在模型上设置的,并且它可能原样来自数据库。
我正在为 angular 应用程序开发 e2e 测试,但我 运行 遇到了问题。我正在使用 .getAttribute('value') 方法从 < input type="text" /> 检索值,但它缺少一个字符。我已经检查了包含该值的元素的 HTML 属性并且它正确显示了它。我已经在应用程序中手动追溯了这些步骤,并且它也可以正确显示。这对我来说似乎很不合逻辑,但也许有人有过这个问题的经验。提前致谢。
HTML代码:
<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”。
很难说不能重现问题,但我想尝试的解决方法是使用 evaluate()
和 "evaluate" 模型的值:
element(by.id('cronValue')).evaluate('schedule.cronValue').then(function(value) {
CRON = value;
});
如果 CRON
值仍然具有相同的不正确值 - 那么,至少,您会知道该值确实是在模型上设置的,并且它可能原样来自数据库。