1

背景:

在正确设置我的基础架构以让实习生针对一组 VM 运行功能测试之后。所有机器都存在于同一个网络上。

我正在使用实习生来运行我的功能测试。

*不使用酱实验室,而是使用硒网格 2 - 集线器和节点。

问题:

所有功能测试用例都失败了。

错误:学生姓名字段应包含与输入相同的字符串:预期“”等于“qwerty” AssertionError:学生姓名字段应包含与输入相同的字符串:预期“”等于“qwerty”

观察:

我看到表单字段被填写,但是当我执行断言时 - 像获取文本并将其与预期输入匹配一样简单,我得到错误响应 7。

我在 这里尝试的是功能测试用例的典型样板。

       studentName: function () {
             return this.remote
                 .get('http://some.ip.addr:3000/#students')
                 .elementById('name')
                .clickElement()
                .type('qwerty')
                 .end()
                 .elementById('name')
                 .text()
                 .then(function(resultText){
                    assert.equal(resultText, 'qwerty', 'Student Name field should contain same string that was entered');               
                  });
       }

其他说明:
链接到上面提到的状态响应代码

4

1 回答 1

1

返回 '​​' (空字符串)的解决方案是使用:

.elementById('name')
    .getAttribute('value')

代替

.elementById('name')
    text()

这是由从事该项目的联系人发送给我的。这是他的解释:

基本上,.text() 不会获取表单字段的值,所以需要使用 WebDriver 的 getAttribute()

于 2014-03-03T22:33:08.593 回答