node.js - 鼠标操作在量角器中无法正常工作
问题描述
我正在尝试上传图片。但是当我上传时,图像的某些部分可能会被剪切。所以我们可以选择裁剪该图像。所以我拖动图像的两侧并点击上传按钮。所以点击上传按钮后,它成功上传手动执行图像的完整部分。当我通过自动化脚本执行所有这些操作时,图像似乎没有完全上传,但它看起来像被剪切了。
这种裁剪是在 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();
});
通过使用上面的代码,我可以在浏览器中看到执行了拖动操作。但是在单击上传按钮后,它显示的是未裁剪的图像,而不是裁剪的图像。我不明白这里的错误操作是什么。谁能帮忙我提前致谢
解决方案
当我更改上传按钮的定位器时,它工作得很好。
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();
});
推荐阅读
- matlab - MATLAB:在这个函数中,为什么不让我设置小数点后的精度来从文本文件中读取数据?
- javascript - 如何在 Promise 中将 Express 错误返回到前端?
- node.js - refreshToken 和 accessToken 一起使用有什么好处?
- spring - 春季交易 | 不回滚部分代码
- mysql - issue in MySQL query due Table name 'CASE'
- javascript - 如何使用javascript重定向?
- java - 如何在android中创建PDF时将长文本分成多行?
- javascript - 如何向 VSCode 添加自动完成字体?
- python - 我无法理解这个关于重载运算符的示例
- google-apps-script - 如何将真正实时的 Google 表格电子表格嵌入网页?