我必须测试一个表单,一旦用户点击提交,就会下载一个文件。我不能使用简单的File.exists作为生产我们正在使用网格,并且该文件可能与运行测试的机器不在同一台机器上。
答案 0 :(得分:0)
我认为说实话这一点并不容易。这个链接可以帮到你。 https://blog.codecentric.de/en/2010/07/file-downloads-with-selenium-mission-impossible/
如果它是word / excel文件,我会做的是尝试从文件下载到的目录中获取selenium以准备文件。然后在读取成功后通过/失败测试。
答案 1 :(得分:0)
在Chrome上,我打开chrome://downloads
页面,然后检查来自shadow DOM的下载文件:
const dowloads = document
.querySelector('downloads-manager')
.shadowRoot.querySelector('#downloads-list')
.getElementsByTagName('downloads-item');
它还包含有关文件路径,下载数据等的数据,唯一的缺点是它仅限于chrome。