給你從你需要代理的參數傳遞給該的Java程序的單獨 Java程序運行JMeter的。有關於如何可以這樣做多種方式,檢查我們的Java Networking and Proxies文章全面的信息,你似乎是通過代碼所做的一切的粉絲所以推出JMeter測試之前,只需添加以下行:
System.setProperty("http.proxyHost","your_proxy_host");
System.setProperty("http.proxyPort", "your_proxy_port");
System.setProperty("https.proxyHost","your_proxy_host");
System.setProperty("https.proxyPort","your_proxy_port");
System.setProperty("http.nonProxyHosts","");
萬一完整的代碼演示瞭如何使用run an existing JMeter test通過JMeter API作爲JMeter's HTTP(S) Test Script Recorder代理
import org.apache.jmeter.engine.StandardJMeterEngine;
import org.apache.jmeter.reporters.ResultCollector;
import org.apache.jmeter.reporters.Summariser;
import org.apache.jmeter.save.SaveService;
import org.apache.jmeter.util.JMeterUtils;
import org.apache.jorphan.collections.HashTree;
import java.io.File;
public class JMeterFromCode {
public static void main(String[] argv) throws Exception {
//Define JVM Proxy Settings
System.setProperty("http.proxyHost", "localhost");
System.setProperty("http.proxyPort", "8888");
System.setProperty("https.proxyHost", "localhost");
System.setProperty("https.proxyPort", "8888");
System.setProperty("http.nonProxyHosts", "");
// JMeter Engine
StandardJMeterEngine jmeter = new StandardJMeterEngine();
// Initialize Properties, logging, locale, etc.
JMeterUtils.loadJMeterProperties("/tmp/jmeter/bin/jmeter.properties");
JMeterUtils.setJMeterHome("/tmp/jmeter");
JMeterUtils.initLocale();
// Initialize JMeter SaveService
SaveService.loadProperties();
// Load existing .jmx Test Plan
HashTree testPlanTree = SaveService.loadTree(new File("/tmp/jmeter/bin/test.jmx"));
Summariser summer = null;
String summariserName = JMeterUtils.getPropDefault("summariser.name", "summary");
if (summariserName.length() > 0) {
summer = new Summariser(summariserName);
}
ResultCollector logger = new ResultCollector(summer);
logger.setFilename("/tmp/jmeter/test.jtl");
testPlanTree.add(testPlanTree.getArray()[0], logger);
// Run JMeter Test
jmeter.configure(testPlanTree);
jmeter.run();
}
}
德米特里嗨,它沒有工作。我試過了,但仍然沒有成功,通過代理使用https運行代碼。任何其他想法? –
我喜歡「它不工作」的問題和評論,就是這樣。你對我有什麼期望?你會如此友好,至少打開JMeter中的調試日誌,並查看* jmeter.log *文件,如果你沒有找出原因,用這些信息更新你的問題? –
對此我很抱歉。 –