我正在用量角器编写下面的JS代码。这里我使用了一个data.json文件来读取我的测试用例的数据。在这个测试用例中,我很简单地从这个JSON中读取项目,并将其与我从浏览器中读取的值进行比较。变量正在递增不正确
我在这里面临的问题是在我的Expect语句中,来自JSON文件的值不正确。
有没有人可以帮助找出问题。
var datafile = require('./Data.json')
beforeEach(() => {
browser.get("https://angularjs.org");
});
describe('Test Angular Page ',() =>
{
it('user name should be displayed correctly #try',() =>
{
var count = datafile.length;
for (var i=0; i<count; i++)
{
var value = datafile[i];
browser.refresh();
element(by.model('yourName')).sendKeys(value);
(element(by.binding('yourName'))).getText()
.then(function (txt)
{
expect(txt).toEqual('Hello '+ value+'!');
//this is failing
})
}
});
下面
是我data.json
[
"A1","A2","A3"
]
下面
是的result-
1) Test Angular Page user name should be displayed correctly #try
Message:
Expected 'Hello A1!' to equal 'Hello A3!'.
Stack:
Error: Failed expectation
at D:\Demo_Protractor\test.spec.js:24:44
at elementArrayFinder_.then (C:\User s\leenasharma\AppData\Roaming\npm\node_modules\protractor\lib\element.ts:840:22)
at ManagedPromise.invokeCallback_ (C:\Users\leenasharma\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:1366:14)
at TaskQueue.execute_ (C:\Users\leenasharma\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:2970:14)
at TaskQueue.executeNext_ (C:\Users\leenasharma\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:2953:27)
at asyncRun (C:\Users\leenasharma\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:2813:27)
at C:\Users\leenasharma\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:676:7
at process._tickCallback (internal/process/next_tick.js:109:7)
Message:
Expected 'Hello A2!' to equal 'Hello A3!'.
Stack:
Error: Failed expectation
在【例5】看看(https://stackoverflow.com/ a/111111/4472840) –