这是我怎么做:
原文链接:https://www.f2er.com/angularjs/146404.htmlvar path = require('path'); it('should upload a file',function() { var fileToUpload = '../some/path/foo.txt',absolutePath = path.resolve(__dirname,fileToUpload); element(by.css('input[type="file"]')).sendKeys(absolutePath); element(by.id('uploadButton')).click(); });
>使用路径模块解析要上传的文件的完整路径。
>设置输入type =“file”元素的路径。
>点击上传按钮。
这不会在firefox上工作。量角器会抱怨,因为元素不可见。要在firefox中上传,您需要使输入可见。这就是我所做的:
browser.executeAsyncScript(function(callback) { // You can use any other selector document.querySelectorAll('#input-file-element')[0] .style.display = 'inline'; callback(); }); // Now you can upload. $('input[type="file"]').sendKeys(absolutePath); $('#uploadButton').click();