量角器browser.actions()。dragandDrop async等待不起作用

时间:2018-01-19 20:57:25

标签: selenium-webdriver async-await protractor

  • 节点版本:8.2.1
  • 量角器版本:5.2.2

我正在将现有测试转换为使用带有量角器的async await,我似乎无法使此代码正常工作。我意识到它并没有回复承诺,至少根据量角器docs

似乎发生的动作是,它单击我想要拖动的区域,然后我想要拖动它的区域将选择所有文本。

所以它点击了第一个元素,但不知何故不拖动它。

有没有人使用dragAndDrop和async等待成功?

我愿意采取其他解决方法。

    browser.actions()
    .dragAndDrop(
        elem1,
        elem2
    ).perform());

1 个答案:

答案 0 :(得分:0)

经过多次尝试并尝试不同的事情。我发现这个解决方案可行。我将把它实现为一个向前发展的辅助函数。

const audio = document.querySelector(`audio[data-key="${e.keyCode}"]`);
const key = document.querySelector(`div[data-key="${e.keyCode}"]`);
if (!audio) return;
key.classList.add('playing');
audio.currentTime = 0;
audio.play();