首页 > 解决方案 > 鼠标操作在量角器中无法正常工作

问题描述

我正在尝试上传图片。但是当我上传时,图像的某些部分可能会被剪切。所以我们可以选择裁剪该图像。所以我拖动图像的两侧并点击上传按钮。所以点击上传按钮后,它成功上传手动执行图像的完整部分。当我通过自动化脚本执行所有这些操作时,图像似乎没有完全上传,但它看起来像被剪切了。

这种裁剪是在 iframe 中完成的。下面给出了我使用的代码,并附上了图像的屏幕截图和 html 代码。

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

browser.switchTo().frame(element(by.css(".a-va")).getWebElement()).then (function(){
  var element1= element(by.css('.Nf-ko'));
  var element2= element(by.css('.Nf-ko:nth-child(3)'));
  browser.actions().dragAndDrop(element1,{x:0,y: -100}).mouseUp().perform();
  browser.actions().dragAndDrop(element2,{x:0,y: 100}).mouseUp().perform();
  element(by.css("[role='button']")).click();
});

我也试过

browser.switchTo().frame(element(by.css(".a-va")).getWebElement()).then (function(){
  var element1= element(by.css('.Nf-ko'));
  var element2= element(by.css('.Nf-ko:nth-child(3)'));
  browser.actions().mouseDown(element1).mouseMove({x:0,y: -100}).mouseUp().mouseDown(element2).mouseMove({x:0,y: 100}).mouseUp().perform();
 element(by.css("[role='button']")).click(); 
});

通过使用上面的代码,我可以在浏览器中看到执行了拖动操作。但是在单击上传按钮后,它显示的是未裁剪的图像,而不是裁剪的图像。我不明白这里的错误操作是什么。谁能帮忙我提前致谢

标签: node.jsdrag-and-dropprotractor

解决方案


当我更改上传按钮的定位器时,它工作得很好。

 browser.switchTo().frame(element(by.css(".a-va")).getWebElement()).then (function(){
   var element1= element(by.css('.Nf-ko'));
   var element2= element(by.css('.Nf-ko:nth-child(3)'));
   browser.actions().dragAndDrop(element1,{x:0,y: -100}).mouseUp().perform();
   browser.actions().dragAndDrop(element2,{x:0,y: 100}).mouseUp().perform();
   element(by.css(".Nf-tb-Qk-mk")).click();
 });

推荐阅读