如何在blazemeter中运行 Jmeter webdriver sampler文件上传脚本?

How to run Jmeter webdriver sampler file uploading script in blazemeter?

我有一个 Jmeter webdriver 采样器脚本,它在 Jmeter 中 运行 没问题。现在我想让它在 blazemeter 上 运行。因为我在 Jmeter 中使用本地目录,所以很好。但我无法使用任何路径上传文件。有人可以帮忙吗?我需要使用 jmeter webdriver 采样器在 blazemeter 中上传文件。我可以给什么路径,我应该把我的文件放在哪里?

我还尝试将我的文件保存在 Blazemeter 的共享文件夹中。但我失败了。请有人为它提供一些语法。

import org.apache.jmeter.services.FileServer;
import org.openqa.selenium;
import java.awt.Robot;
import org.openqa.selenium.interactions.Action;
import org.openqa.selenium.interactions.Actions;
import java.awt.Toolkit;
import java.awt.datatransfer.StringSelection;
import java.awt.event.KeyEvent;
import org.openqa.selenium.firefox.FirefoxProfile;
import java.time.temporal.ChronoUnit;
import java.time.format.DateTimeFormatter;  
import java.time.LocalDateTime;   
import org.openqa.selenium.WebElement;
import org.openqa.selenium.By;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.FileWriter;
import java.util.concurrent.TimeUnit;
import java.util.ArrayList;
import org.testng.asserts.SoftAssert;
import java.util.List;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.openqa.selenium.support.ui.ExpectedConditions;
WebDriverWait wait= new WebDriverWait(WDS.browser,20);
WDS.sampleResult.sampleStart();


wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//ul[@class='menu-main']/child::li"))).click();
wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//p[@class='btn btn-outline']"))).click();
WDS.log.info("Dialog box");
Robot robot= new Robot();
robot.setAutoDelay(2000); 
filepath="home/jmeter/Deepak/ColumnFunctionFile.csv";
StringSelection stringselection = new StringSelection(filepath);
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(stringselection, null);

robot.setAutoDelay(1000);
WDS.log.info("Copy");
 robot.keyPress(KeyEvent.VK_CONTROL);
      robot.keyPress(KeyEvent.VK_V);
WDS.log.info("release");
      robot.keyRelease(KeyEvent.VK_CONTROL);
      robot.keyRelease(KeyEvent.VK_V);
WDS.log.info("enter press release");
      robot.keyPress(KeyEvent.VK_ENTER);
      robot.keyRelease(KeyEvent.VK_ENTER);
      robot.setAutoDelay(2000);
//upload file status

WebDriverWait wait2= new WebDriverWait(WDS.browser,5);
oldTimeForProgress=LocalDateTime.now();
try{
wait2.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//div[@class='progress progress-mini']")));
WDS.log.info("--------------------------------Progress bar gets invisible now-------------------");
}
catch(Exception e)
{
WDS.log.info("---------------Looking like file got stuck in processing messages----------------");
}

据我在 Selenium Webdriver Based Testing 文章中所见,您只需上传您的 .jmx 脚本,BlazeMeter 就会将其拾取。请确保不要使用 Internet Explorer,因为他们的系统在 Linux 上似乎是 运行,因此仅支持 Firefox 和 Chrome。

此外,我的期望是,如果有任何问题,您应该联系 BlazeMeter Support,他们应该比这里的任何人都更了解他们的基础设施。