我正在尝试使用量角器和打字稿上载文件。上传按钮位于工具栏上,该工具栏还包含其他两个按钮。与我在这里看到的许多示例不同,此上载按钮是作为链接而不是输入实现的。控制台中存在此警告。没有错误,但文件未上传。
以下警告:
more than one element found for locator By(css selector, a.mat-icon-button) - the first result will be used
下面的HTML:
这就是我尝试上传文件的方式。
const fileToUpload = './Test_file.xlsx';
const absolutePath = path.resolve(__dirname, fileToUpload);
const uploadlink = element(by.css('a.mat-icon-button'));
uploadlink .sendKeys(absolutePath);
答案 0 :(得分:0)
答案 1 :(得分:0)
为定位符By(css选择器, a.mat-icon-button)-将使用第一个结果
如果您有3个元素,而第3个是处理上传的元素,则其他2个只是链接参考?
尝试为“上传”标签编写更具体的定位符。
如果代码中存在输入,您是否可以单击按钮进行验证?
如果没有其他解决方案,请使用AutoIt。
答案 2 :(得分:0)
const fileToUpload = './Test_file.xlsx';
const absolutePath = path.resolve(__dirname, fileToUpload);
const uploadlink = element(by.css('a.mat-icon-button>span.mat-button-wrapper>div.command-text'));
uploadlink .sendKeys(absolutePath);
如果上述方法不起作用,请尝试使用javascript执行程序 https://blog.ng-book.com/executing-raw-javascript-in-protractor/