在selenium网格上创建并上传文件

我的一个测试用例是将文件上传到应用程序。 通过创建伪造文件并获取文件的绝对路径并填充输入字段并单击上载,可以轻松完成Witouth网格。 但是,当我使用网格时,该文件不在托管节点的计算机上。 无论如何要么将文件发送到节点或告诉节点创建文件并获取绝对路径。

一旦你知道如何设置本地文件检测器,它实际上非常简单。

import org.openqa.selenium.remote.LocalFileDetector import org.openqa.selenium.remote.RemoteWebDriver WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), DesiredCapabilities.firefox()); driver.setFileDetector(new LocalFileDetector()) 

然后只需正常上传,Selenium将通过线路将文件触发到节点。

在本地计算机上创建文件时,可以以正常方式执行此操作。 见下文,

 File file = new File("\\\\00.00.00.00\\c$\\somefile.txt"); file.createNewFile(); 

这将在远程计算机的“C”驱动器中创建一个名为somefile.txt的文件。 将IP地址更改为远程计算机。