【发布时间】:2020-12-09 19:57:33
【问题描述】:
我有一个带有量角器黄瓜框架和 Chai 断言的 e2e 测试包。
我有一个包含如下数据表的功能文件。
Scenario: Menu Validation
Given I am on the home page
When I do Hover over the menu item I should have the menu dropdown
|menu1 |
|menu2 |
|menu3 |
我的步骤定义如下。
When(/^I do Hover over the menu item I should have the menu dropdown/, (dataTable) => {
let rootMenu : Array<string> = Array.from( dataTable.rawTable )
rootMenu.forEach((ele) => {
console.log(ele[0]);
element(by.id(ele[0])).isPresent().then(function(present) {
expect(present).to.equal(true);
});
});
});
即使菜单元素 ID 不存在,这个测试步骤也永远不会失败,我进一步检查了 expect(present).to.equal(true); 永远不会被执行。我不确定我错过了什么。
【问题讨论】:
-
有很多事情我不明白你为什么这样做...例如为什么你这样做
rootMenu的forEach但是你说ele[0]就像rootMenu是一个数组数组 -
是的,我有黄瓜特征文件,它有一个数据表,数据表是一个数组数组。所以 rootMenu 有这样的特征文件中的数据 [[menu1],[menu2],[menu3]]
标签: protractor cucumber chai