未经允许,禁止转载!!!
在selenium里面处理文件上传的时候可以使用sendKeys(keysToSend) 上传文件
例如: element.sendKeys(“C:\\test\\upload\\test1.txt”)
但是不能使用这种方法一次性批量上传文件,如下面的做法是错误的!
element.sendKeys(“C:\\test\\upload\\test1.txt”, “C:\\test\\upload\\test2.txt”...)
那么如何批量上传文件呢?其实可以循环使用sendKeys(keysToSend) 个方法
如下面的代码就实现了批量上传文件
/** * * @Description: 在百度云上测试文件批量上传功能,主要是通过循环的方式去做单一 * 的上传动作 , 登陆过程已经去掉 */ @Test public void test_mutilUploadFile() throws Exception { System.out.println("upload start"); // 获取上传控件元素 WebElement uploadButton = driver.findElement(By.name("html5uploader")); // 构建上传文件路径,将需要上传的文件添加到 CharSequence 数组 CharSequence[] files = new CharSequence[5]; files[0] = "C:\\test\\test1.txt"; files[1] = "C:\\test\\test2.txt"; files[2] = "C:\\test\\test3.txt"; files[3] = "C:\\test\\test4.txt"; files[4] = "C:\\test\\test5.txt"; // 循环列出每支需要上传的文件路径,做单一上传动作 for(CharSequence file: files){ uploadButton.sendKeys(file); } Thread.sleep(2000); System.out.println("upload end"); }
当执行结束后,效果如下图 :
时间: 2024-10-13 02:35:04