我必须测试单击链接时是否下载了pdfs文件。 我已经设置了一个默认文件夹,以便能够使用硒下载它们,但我需要保存服务器而不是节点的这些文件夹。
chromePrefs.put("download.default_directory", "C:\SOIF\Temp\downloads");
options.setExperimentalOption("prefs", chromePrefs);
我尝试使用:
((RemoteWebDriver) getWebDriver()).setFileDetector(new LocalFileDetector())
但这仅在我尝试从带有节点的服务器上传文件时才有效。
如果不在服务器上设置默认下载文件夹,这甚至可能吗?
您需要从服务器共享文件夹。然后用映射驱动器号映射所有节点,一旦映射完成。您可以在所有测试中使用该路径进行下载,也可以测试文件是否已下载
Z:
是最常用的一种,但您可以将其与任何其他字母驱动程序一起使用。 ,然后仅使用这些路径。
像"Z:\shared_server_path\SOIF\Temp\downloads"
提到的@DebanjanB的例子
编辑-1
如果您需要为每个测试用例单独下载,那么您可以选择执行以下操作。在启动 Web 驱动程序之前,请生成一个 UUID 字符串并将其附加到下载文件夹
`"Z:\shared_server_path\SOIF\Temp\downloads\fd411526-e3aa-43b1-a351-e484da4508d9"`
创建此文件夹并以此作为下载目录启动 Web 驱动程序。测试完成后,您始终可以知道测试用例名称是什么。创建目录
"Z:\shared_server_path\SOIF\Temp\downloads\TestCase1"
并将文件移动到该文件夹。这是我能想到的可行解决方案