量角器不会点击下拉项目(Angular Material 2)

时间:2018-02-13 23:23:35

标签: angular protractor

嗨,我的量角器测试用例有问题。我在Web应用程序上有一个文本字段。我想单击该字段,然后单击出现的下拉列表中的第一个元素。问题是量角器不会点击列表中的任何项目。

我的堆栈是:量角器,黄瓜和测试的应用程序在Angular2上。

我的代码如下所示:

this.When(/^I click first element in "([^"]*)"$/, function (name) {
    return element(pageCtx.elements[name].boxSelector).all(pageCtx.elements[name].elementSelector)
        .first()
        .click();
});

看起来该功能没有进入下拉列表,因此不会点击其中的任何项目。 我确实在互联网上阅读了这些问题,例如this article。可能我应该做一些等待的事情,但我并列,但在我看来它并没有改变任何东西。也许我把等待放在错误的地方。

我感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

您需要先单击下拉列表,然后单击列表中的第一个元素。您可能希望使用async / await。例如:

this.When(/^I click first element in "([^"]*)"$/, async function (name)
   {
     await element(pageCtx.elements[name].boxSelector).click();
     await element.all(pageCtx.elements[name].elementSelector)
            .first()
            .click();
    });