添加一个性能测试模板
This commit is contained in:
parent
1439f4aa63
commit
f7fa777677
67
src/test/java/cmbpoc/JmeterTest.java
Normal file
67
src/test/java/cmbpoc/JmeterTest.java
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
package cmbpoc;
|
||||||
|
|
||||||
|
|
||||||
|
import org.apache.jmeter.config.Arguments;
|
||||||
|
import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;
|
||||||
|
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;
|
||||||
|
import org.apache.jmeter.samplers.SampleResult;
|
||||||
|
|
||||||
|
import java.nio.charset.StandardCharsets;
|
||||||
|
import java.util.Base64;
|
||||||
|
|
||||||
|
public class JmeterTest extends AbstractJavaSamplerClient {
|
||||||
|
|
||||||
|
private byte[] publicKey;
|
||||||
|
private byte[] plainData;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Arguments getDefaultParameters() {
|
||||||
|
Arguments params = new Arguments();
|
||||||
|
params.addArgument("publicKeyBase64", "MFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAE...");
|
||||||
|
params.addArgument("plainText", "Hello JMeter");
|
||||||
|
return params;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setupTest(JavaSamplerContext context) {
|
||||||
|
// 初始化:将 Base64 参数转为字节数组,避免每个循环都转换
|
||||||
|
String pubBase64 = context.getParameter("publicKeyBase64");
|
||||||
|
String plainText = context.getParameter("plainText");
|
||||||
|
publicKey = Base64.getDecoder().decode(pubBase64);
|
||||||
|
plainData = plainText.getBytes(StandardCharsets.UTF_8);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SampleResult runTest(JavaSamplerContext context) {
|
||||||
|
SampleResult result = new SampleResult();
|
||||||
|
// 调用待测函数
|
||||||
|
String function = context.getParameter("function");
|
||||||
|
|
||||||
|
result.sampleStart(); // 开始计时
|
||||||
|
try {
|
||||||
|
switch (function) {
|
||||||
|
case "SYD_SM2_Sign":
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
// result.setResponseData(encrypted); // 可选
|
||||||
|
result.setSuccessful(true);
|
||||||
|
result.setResponseCodeOK();
|
||||||
|
result.setResponseMessage( function + "执行成功" );
|
||||||
|
} catch (Exception e) {
|
||||||
|
result.setSuccessful(false);
|
||||||
|
result.setResponseCode("500");
|
||||||
|
result.setResponseMessage( function + "执行失败。" + e.getMessage());
|
||||||
|
} finally {
|
||||||
|
result.sampleEnd(); // 结束计时
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void teardownTest(JavaSamplerContext context) {
|
||||||
|
// 释放资源(如有)
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user