我有一个场景,其中有2个下拉列表,每个下拉列表都有一些值,然后有一个添加按钮。 所以我们需要从一个下拉列表中选择1个值,然后从其他下拉列表中选择1个值,然后单击“添加”按钮,然后再从下拉列表中选择另一个值。但是,当我选择1下拉列表的值时,它会抛出一条错误消息 -
当时无法点击元素
以下是代码:
activityPage.activitiesTab.click()
browser.driver.sleep(2000);
activityPage.newActivity.click();
browser.driver.sleep(2000);
activityPage.entityDropdown.click();
browser.driver.sleep(2000);
activityPage.entitesList(function (items) {
for (var i = 1; i < items.length; ++i) {
items[i].click()
browser.driver.sleep(2000);
activityPage.activityDropdown.click()
activityPage.entitesList(function (activitiesName) {
for (var j = 1; j < activitiesName.length; ++j) {
activitiesName[j].click();
activityPage.activityDropdown.click()
browser.driver.sleep(2000);
activityPage.entityDropdown.click();
items[i].click()
}
});
}
});
答案 0 :(得分:1)
问题是,像往常一样,量角器中的所有东西都是一个承诺,因此你不能简单地将东西称为for循环。它基本上会立即运行所有循环,而不是等待任何异步承诺解析。
这是一个很好的答案,可以更彻底地解释它: https://stackoverflow.com/a/27910350/2374517