Selenium上传文件
在Selenium中处理文件上传可以简化人工工作,并只需使用发送键()方法即可完成。上载文件后显示一条消息,确认文件是否已成功上载。还有更多此类文件上传的自动化方法。
本教程涵盖的主题包括HTML中的文件上传,Selenium中处理文件上传的方法(其中包括以下方法:使用sendKeys,然后使用AutoIT和Robot类)。
本教程还说明了在Selenium中使用这些方法处理文件上传的代码的实现,此后,我们将看到一些示例,这些示例在Selenium的帮助下执行文件上传。
HTML文件上传
以下代码实现说明了HTML页面上的文件上传操作。HTML代码显示了如何执行上传操作,方法是先单击“选择文件”按钮浏览要上传的文件,然后单击“上传文件”选项,此后我们可以看到文件已成功上传。
上面的图片由HTML创建的页面组成,下面是该页面的HTML代码。让我们快速看一下HTML代码。
<html>
<head><title>上传文件</title></head>
<body>
<form action="photo_upload.png" method="post" enctype="multipart/form-data">
<h2> 上传文件 (上传图片文件) </h2>
选择要上传的文件:
<input type="file" name="fileToUpload" id="fileToUpload">
<input type="submit" value="Upload File" name="submit">
</form></body></html>
因此,在通过单击“上传文件”选项上载所需的文件时,将显示以下页面(图像)(即显示已上载的图像文件),该页面确认选择上载的文件已成功上载。
在Selenium中上传文件的方法
让我们看看一些处理文件上传的方法,以及相同的代码实现。
可以使用以下方法在Selenium中上传文件:
使用sendKeys方法
使用AutoIT工具
Robot Class
#1)使用sendKeys方法
在Selenium中上传文件的最基本方法是使用sendKeys方法。它是Selenium中用于文件上传的内置功能。
语法如下:
WebElement upload_file = driver.findElement(By.xpath(“ // input [@ id ='file_up']”)));
upload_file.sendKeys(“ C:/Users/Sonali/Desktop/upload.png”);
让我们了解上述技术的代码实现:
为了使用这种方法上传文件,我们首先需要检查提供文件上传的元素或按钮,然后使用sendKeys浏览保存要上传的实际文件的路径。将路径以及文件名放在sendKeys中,以便程序导航到提到的路径以获取文件。
此后,单击保存或提交按钮,该文件将被视为已上传。有时,我们还会收到一条消息,说明文件已成功上传。
使用sendKeys方法的代码实现: