jmeter 测试可用
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package cmbpoc;
|
||||
|
||||
|
||||
import com.sunyard.SydApi;
|
||||
import com.sunyard.proto.Util;
|
||||
import org.apache.jmeter.config.Arguments;
|
||||
import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;
|
||||
@@ -16,8 +17,11 @@ public class JmeterTest extends AbstractJavaSamplerClient {
|
||||
private byte[] publicKey;
|
||||
private byte[] plainData;
|
||||
private byte[] encryptedData;
|
||||
private String sign;
|
||||
private int sleep = 1;
|
||||
|
||||
private byte[] privateKey4Sign;
|
||||
private byte[] publicKey4Sign;
|
||||
private byte[] privateKey4Ende;
|
||||
private byte[] publicKey4Ende;
|
||||
|
||||
@@ -36,6 +40,8 @@ public class JmeterTest extends AbstractJavaSamplerClient {
|
||||
params.addArgument("plainDataLen", "1024");
|
||||
params.addArgument("publicKey4Ende", "", "加密用的公钥");
|
||||
params.addArgument("privateKey4Ende", "", "解密用的公钥");
|
||||
params.addArgument("publicKey4Sign", "", "验签用的公钥");
|
||||
params.addArgument("privateKey4Sign", "", "签名用的公钥");
|
||||
params.addArgument("ip", "192.168.100.145");
|
||||
params.addArgument("ip2", "172.1.41.96");
|
||||
params.addArgument("port", "8889");
|
||||
@@ -45,6 +51,16 @@ public class JmeterTest extends AbstractJavaSamplerClient {
|
||||
|
||||
@Override
|
||||
public void setupTest(JavaSamplerContext context) {
|
||||
// 签名密钥对
|
||||
String publicKey4Sign = context.getParameter("publicKey4Sign");
|
||||
if ( null != publicKey4Sign && !publicKey4Sign.isEmpty()) {
|
||||
this.publicKey4Sign = Util.hexString2Bytes(publicKey4Sign);
|
||||
}
|
||||
String privateKey4Sign = context.getParameter("privateKey4Sign");
|
||||
if ( null != privateKey4Sign && !privateKey4Sign.isEmpty()) {
|
||||
this.privateKey4Sign = Util.hexString2Bytes(privateKey4Sign);
|
||||
}
|
||||
|
||||
// 加密密钥对
|
||||
String publicKey4Ende = context.getParameter("publicKey4Ende");
|
||||
if ( null != publicKey4Ende && !publicKey4Ende.isEmpty()) {
|
||||
@@ -82,7 +98,8 @@ public class JmeterTest extends AbstractJavaSamplerClient {
|
||||
case "SYD_SM2_Decrypt":
|
||||
this.encryptedData = this.api.get().SYD_SM2Encrypt(this.publicKey4Ende, this.plainData);
|
||||
break;
|
||||
case "SYD_SM2_Sign":
|
||||
case "SYD_SM2_Verify":
|
||||
this.sign = this.api.get().SYD_SM2_Sign_HA(SydApi.DATA_HASH, this.privateKey4Sign, this.publicKey4Sign, this.plainData);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -106,6 +123,10 @@ public class JmeterTest extends AbstractJavaSamplerClient {
|
||||
this.api.get().SYD_SM2Decrypt(privateKey4Ende, this.encryptedData);
|
||||
break;
|
||||
case "SYD_SM2_Sign":
|
||||
this.api.get().SYD_SM2_Sign_HA(SydApi.DATA_HASH, privateKey4Sign, publicKey4Sign, this.plainData);
|
||||
break;
|
||||
case "SYD_SM2_Verify":
|
||||
this.api.get().SYD_SM2_Verify_HA(SydApi.DATA_HASH, publicKey4Sign, this.plainData, this.sign);
|
||||
break;
|
||||
case "sleep":
|
||||
Thread.sleep( this.sleep );
|
||||
|
||||
Reference in New Issue
Block a user