【发布时间】:2021-09-17 16:26:03
【问题描述】:
我在 docker 容器上使用远程驱动程序运行 selenium 测试用例。
我想将文件上传到运行在容器上的 chrome 浏览器。
我尝试了以下方法:-
- 将文件从我的本地系统(MyDocuments 文件夹)复制到 docker 容器。 当我点击上传按钮时,我不知道如何浏览文件夹并上传文件。
我试过了,但在“input.sendKeys(imagePath);”我收到消息“元素不可交互”:- https://stackoverflow.com/a/54810763
- 我正在容器上运行测试用例,但屏幕截图保存在我的本地计算机上。是否有可能我也可以从本地机器而不是容器上传文件
【问题讨论】:
-
嗨 Juhi,您是否尝试过将当前工作目录挂载到 hub 容器?更多详情请参考this答案。
-
我已使用 docker cp 命令将本地系统中所需的文件夹添加到 docker 容器中。但是当我在容器中运行我的测试用例以上传文件时,我单击上传按钮并打开一个文件夹弹出窗口,我不确定如何使用 selenium 提供路径或浏览文件夹
-
在 selenium 中上传文件,实际上不需要点击上传按钮来打开操作系统级别的文件选择器。您基本上需要通过sendkeys将文件的绝对路径发送到其相应的输入标签。
-
您也可以分享一个您尝试上传文件的元素的 html sn-p 吗?
-
我要上传文件的元素不在输入标签下。它在一个跨度标签中
标签: java docker selenium file-upload selenium-remotedriver