我想上传一个文件作为自动测试,使用以下代码,它正确选择文件&点击上传按钮,但点击上传按钮后没有任何反应,我相信它不会触发页面上的javascript:
var fileUpload = './testFile.txt',
absolutePath = path.resolve('./testFile.txt', fileUpload);
$('input[type="file"]').sendKeys(absolutePath);
element(by.model('documentFile'));
element(by.css('button[ng-click="uploadSelectedFiles()"]')).click();
还有其他方法吗?
编辑:我设法做到了这一点,谢谢谁帮助了我,这是我的代码:var fileUpload = './testFile.jpg',
absolutePath = path.resolve('/home/xxx/workspace/xxx/xxx/xxx/xxxxx/test/x/x/x/x/filesToUpload', fileUpload);
var uploadInput = $('input[type="file"]');
uploadInput.sendKeys(absolutePath);
uploadInput.submit();
element(by.css('button[ng-click="uploadSelectedFiles()"]')).click();
答案 0 :(得分:2)
而不是点击"上传"按钮,将键发送到输入以设置路径并通过单击Submit
按钮提交表单:
var uploadInput = $('input[type="file"]');
uploadInput.sendKeys(absolutePath);
var submitButton = element(by.xpath("//input[.='Submit']"));
submitButton.click();
答案 1 :(得分:0)
似乎是“ng-”和“click”之间的空格。