【发布时间】:2018-03-07 08:14:22
【问题描述】:
我想用这个代码测试文件上传,找到here:
var path = require('path');
var fileToUpload = '..\\..\\files\\avatarPicture.jpg';
var absolutePath = path.resolve(__dirname, fileToUpload);
var fileElem = element(by.css('input[type="file"]'));
browser.executeScript(
"arguments[0].style.visibility = 'visible'; arguments[0].style.height = '1px'; arguments[0].style.width = '1px'; arguments[0].style.opacity = 1", fileElem.getWebElement());
browser.executeAsyncScript(function(callback) {
document.querySelector('input[type="file"]').style.display = 'inline';
callback();
});
$('input[type="file"]').clear().sendKeys(absolutePath);
还有一个 WebDriverError:
Failed: File not found: C:\works\project\files\avatarPicture.jpg
- 我已经检查了路径 - 它是正确的。我可以轻松地从命令行打开文件
- 我尝试同时使用反斜杠和斜杠。还是一样的错误。
- WebDriver 版本:gecko v0.17.0
- Windows 10 专业版
- Chrome 上一切正常,但我需要 Firefox 的解决方案。
【问题讨论】:
-
@VenuDuggireddy 好的,到目前为止,我知道这是 Firefox 问题,该文件在 Chrome 等设备上可见,但 Firefox 仍然找不到该文件。
标签: angularjs file-upload protractor