javascript - 如何使用 Browserstack 测试输入类型 ="file"

标签 javascript html intern browserstack

因此,我一直在尝试使用 Browserstack 和 Intern.js 测试 input type="file",但我一直收到“未找到文件”错误,因为 Browserstack 在我的计算机中搜索该文件。

我知道 Browserstack 具有上传/下载功能,但从他们的文档中我不太了解如何使用它。

最佳答案

问题似乎没有什么不同。假设您在测试页面上收到“找不到文件”错误,我相信您的类型命令只是将 key 发送到远程浏览器的元素。

对于'file'类型的输入元素,type命令应该首先将文件从本地机器上传到远程机器,然后透明上传到您的测试页面.如果这不起作用,那么主要是您的元素不是“文件”类型,或者您使用的实习生版本不支持远程上传/有错误。

根据我的说法,如果您有使用 remotewebdriver 的 selenium 独立服务器和 webdriver 设置,它也应该在本地失败。

摘自“https://theintern.github.io/leadfoot/module-leadfoot_Command.html#type” '(由 jason0x43 共享)


从 1.5 开始,如果 WebDriver 服务器支持远程文件上传,并且您在本地计算机上键入文件的路径,该文件将透明地上传到远程服务器,而远程文件名将被键入。如果您不想上传本地文件,请改用 leadfoot/Session#pressKeys。


解决方案(对我有用):


示例代码:

function () {
      return this.remote
        .get(require.toUrl('http://www.fileconvoy.com/'))
        .findById('upfile_0')
          // .type('C:\\Users\\hello\\Desktop\\documents\\doc-sample1.doc')
          .type("//tmp//upload.log")
          .end()
        .findById('readTermsOfUse').click().end()
        .findById('upload_button').click().end()
        .sleep(5000)
    }

------------

conf.js

  capabilities: {
    fixSessionCapabilities: true,
    remoteFiles: true,
    .
    .
    .
  },

关于javascript - 如何使用 Browserstack 测试输入类型 ="file",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45201328/

相关文章:

javascript - 如何用 Javascript 制作登录系统?

javascript - AngularJS ng-repeat 不显示值

jquery - 移动 Bootstrap 导航不工作

Python字符串实习生机制

javascript - 使用 intern.js 进行测试时无法滚动

javascript - JS/lodash : Mutate and return data in one line of code

javascript - 如何搜索字符串

javascript - 尝试用 ng-mouseover 和 ng-mouseleave 改变 ng-class

html - css hover 不适用于返回顶部按钮

javascript - 在本地主机上针对静态 Web 应用程序运行实习生功能测试