量角器 - 使用模式上传文档

Protractor - Uploading a Document using a Modal

我目前正在使用量角器来验证用户在 Web 应用程序中的步行。要继续(按钮被禁用,直到执行操作),用户必须上传文档,然后启用按钮,然后继续该过程。

在我的本地代码中,我有一个文件夹,其中包含需要上传才能继续的文档。但是,当我通过量角器与网络应用程序交互时,我很难上传它。

现在有效:

  1. 点击link上传文档
  2. 使用浏览按钮显示模式 select (Modal Image)
  3. 必须使用浏览按钮来浏览文件 - 无法插入 'text box'
  4. Select 使用日历工具的日期
  5. 提交按钮随即变为活动状态
  6. 点击“提交”即可继续完成应用程序

我已经尝试过这里的解决方案: How to upload file in angularjs e2e protractor testing ,但问题是 'text area' 将路径插入 returns 和 'Invalid Element State Error' - 我不能像上面的解决方案所暗示的那样简单地将路径插入框中。

底线是我需要上传这个文件,同时必须使用浏览按钮,但我不能使用量角器来操作用于浏览机器的本地对话框。

我的代码:

it('should upload the example doc', function() {
  var path = require('path');
  var fileToUpload = 'path/path/path/',
    absolutePath = path.resolve(__dirname, fileToUpload);
  page.findInput().sendKeys(absolutePath);
  browser.sleep(3000);
  expect(page.submitBtnClick());
});

想法?

下面的功能代码:

uploadDoc() {
return browser.findElement(by.css('input[type=file]')).sendKeys('full/path/of/the file/with.extension');
}