求JMeter Selenium WebDriver插件上传文件的WDS代码示例
JMeter WebDriver插件(WDS)基于Robot类的文件上传代码片段
以下是适配JMeter WDS环境、基于Robot类实现文件上传的代码示例:
// 1. 定位并点击页面上的文件上传按钮,触发系统文件选择弹窗 WDS.browser.findElement(org.openqa.selenium.By.id("uploadBtn")).click(); // 2. 初始化Robot类,用于模拟系统键盘操作 java.awt.Robot robot = new java.awt.Robot(); // 等待文件选择弹窗加载完成,可根据实际系统响应速度调整时长 robot.delay(1000); // 3. 输入目标文件的绝对路径(替换为你实际的文件路径) String targetFilePath = "D:\\testFiles\\sample_upload.pdf"; // 逐个字符输入路径,避免系统无法识别连续输入 for (char c : targetFilePath.toCharArray()) { robot.keyPress(java.awt.event.KeyEvent.getExtendedKeyCodeForChar(c)); robot.keyRelease(java.awt.event.KeyEvent.getExtendedKeyCodeForChar(c)); robot.delay(50); } // 4. 按下回车键确认文件选择 robot.keyPress(java.awt.event.KeyEvent.VK_ENTER); robot.keyRelease(java.awt.event.KeyEvent.VK_ENTER); // 等待上传操作启动 robot.delay(1500);
关键注意点:
- 必须使用文件绝对路径,Java中路径分隔符用双反斜杠
\\或正斜杠/ delay时长需根据系统性能调整,避免弹窗未加载就执行后续操作- 上传按钮的定位器(示例中用
id)需替换为你页面实际的定位方式(如By.xpath、By.className等) - Robot类操作依赖系统焦点,执行脚本时需确保浏览器窗口处于前台
内容的提问来源于stack exchange,提问作者zenitsu Agastuma
相关产品推荐
相关产品推荐

