Drop down menu 打开选择框的量角器屏幕截图不工作

Drop down menu 打开选择框的量角器屏幕截图不工作,drop-down-menu,protractor,screenshot,Drop Down Menu,Protractor,Screenshot,我的量角器灾难列表中的下一个: 我有一个例子,我点击一个select元素并将鼠标悬停在顶部的空选项上,然后抓取该元素的屏幕截图。至少我试过了。它抓取屏幕截图,没有错误,然后继续。但是,在“选择”框处于打开状态时,则不会。只是一个封闭的选择框 我错过了什么?以下是片段: createPage.userid.click(); // Take screenshot of page browser.takeScreenshot().then(function (jpg) { writeScreen

我的量角器灾难列表中的下一个:

我有一个例子,我点击一个select元素并将鼠标悬停在顶部的空选项上,然后抓取该元素的屏幕截图。至少我试过了。它抓取屏幕截图,没有错误,然后继续。但是,在“选择”框处于打开状态时,则不会。只是一个封闭的选择框

我错过了什么?以下是片段:

createPage.userid.click();

// Take screenshot of page
browser.takeScreenshot().then(function (jpg) {
  writeScreenShot(jpg, 'screenshots/deleteUser.jpg');
});
我尝试了一些我在这里找到的其他东西,比如尝试单击打开它,然后悬停选项,等等。但是没有任何效果

编辑:
我注意到可能与此有关。当我让浏览器在另一个打开的窗口后面运行时,当下拉菜单打开时,它显示在所述窗口的前面,与浏览器完全分离。这让我想起了当我还是一个wee web开发人员时学到的一个关键概念,即下拉菜单在打开时会被赋予一个z索引,几乎高于其他任何东西。难道仅仅是量角器看不到打开的下拉列表,因为它太高了吗?

我认为这可能又是一个计时问题。请尝试用“async”开头您所使用的函数,然后在createPage.userid.click()前面加上单词“await”。这样,您可以确保在拍摄屏幕截图之前单击已完成。顺便说一句,然后您还可以说let jpg=wait browser.takeScreenshot(),并将writeScreenShot作为自己的下一行,而不使用整个then函数。或者,如果这不起作用或看起来很混乱,请首先在选择框中找到一个元素,该元素具有标识符或定位器,然后说一些类似的例子,基本上会出现的情况是,在拍摄快照之前,单击没有达到预期的效果。但至少学习上述两种方法中的一种是值得的,而不是增加睡眠(这会使事情变得比需要的慢得多,或者如果你的照片在比赛中失利,有时会失败)。很抱歉我查看了链接,我的问题是,当我尝试引用gravor.ExpectedConditions时,我的脚本不知道我在说什么。我不知道如何正确使用async/await。也许我应该去学。FTR,我也试过睡觉,但根本不起作用(另外,打开选择框的屏幕截图并不是我在较大的“it”块中所做的第一件或最后一件事。单击之前的等待是否会阻止它发生之前的一切,或者只是阻止它发生之前脚本中的那一点?