jmeter测试修改

This commit is contained in:
waner
2025-07-18 09:44:54 +08:00
parent d80e225158
commit 1f2709326f
4 changed files with 121 additions and 81 deletions
+38
View File
@@ -0,0 +1,38 @@
package com.Sample;
import racal.sunyard.main.SydApi4j;
public class SydUtils {
private final SydApi4j sydApi4j;
static {
System.setProperty("com.sunyard.dnsort", "true");
}
public SydUtils(String ip1, String ip2, int port, int timeout) {
SydApi4j.SYD_Set_Parameter_HA(ip1, ip2, port, timeout);
sydApi4j = (SydApi4j) new SydApi4j();
}
public void disconnect() {
sydApi4j.disconnect();
}
public byte[] SYD_NakedSign(byte[] orgData, String SM2dn) {
return sydApi4j.SYD_NakedSign(orgData,SM2dn);
}
public boolean SYD_NakedVerify(byte[] orgData, byte[] nakedSign, String SM2dn){
return sydApi4j.SYD_NakedVerify(orgData, nakedSign, SM2dn);
}
public boolean detachedVerify(byte[] orgData, String sign) {
return sydApi4j.detachedVerify(orgData, sign);
}
public String detachedSign(byte[] orgData, String sCertDN) {
return sydApi4j.detachedSign(orgData, sCertDN);
}
}
+24 -11
View File
@@ -1,5 +1,6 @@
package com.jmeter.test;
import com.Sample.SydUtils;
import com.google.gson.Gson;
import com.sunyard.SydApiException;
import com.sunyard.entity.ImportResult;
@@ -132,14 +133,17 @@ public class Test4Jemter extends AbstractJavaSamplerClient {
sr.setSampleLabel("testDemo");
//设置开始标志,否则无法统计tps等
sr.sampleStart();
SydUtils sydUtils = null;
try {
orgData = oData.getBytes(); //SM2裸签
sydUtils = new SydUtils(ip, ip2, port, timeout);
// orgData = new byte[dataLength];
//执行业务逻辑
switch(type){
case 1:
// api.get().SYD_NakedSign(SM2dn, orgData, (byte[]) null);
byte[] nakedSign = api.get().SYD_NakedSign(orgData,SM2dn);
// byte[] nakedSign = api.get().SYD_NakedSign(orgData,SM2dn);
byte[] nakedSign = sydUtils.SYD_NakedSign(orgData,SM2dn);
if (logSwitch == 1) {
System.out.println("p1签名(hex):"+ Util.bytes2HexString(nakedSign));
}
@@ -151,7 +155,8 @@ public class Test4Jemter extends AbstractJavaSamplerClient {
case 2:
// api.get().SYD_NakedVerify(SM2dn, Util.decodeBase64(sign), orgData, (byte[])null) ;
boolean flag = api.get().SYD_NakedVerify(orgData,Util.hexString2Bytes(sign), SM2dn);
// boolean flag = api.get().SYD_NakedVerify(orgData,Util.hexString2Bytes(sign), SM2dn);
boolean flag = sydUtils.SYD_NakedVerify(orgData,Util.hexString2Bytes(sign), SM2dn);
if (logSwitch == 1) {
System.out.println("p1验签:"+ flag);
}
@@ -175,7 +180,7 @@ public class Test4Jemter extends AbstractJavaSamplerClient {
case 5:
// api.get().detachedSign(1, orgData, SM2dn);
//p7 detached签名
String detachedSign1 = api.get().detachedSign(orgData, SM2dn);
String detachedSign1 = sydUtils.detachedSign(orgData, SM2dn);
if (logSwitch == 1) {
System.out.println("p7 detach签名:"+ detachedSign1);
}
@@ -186,7 +191,8 @@ public class Test4Jemter extends AbstractJavaSamplerClient {
case 6:
// api.get().detachedVerify(1, orgData, sign);
//p7 detached验签
boolean ver = api.get().detachedVerify(orgData, detachedSign);
// boolean ver = api.get().detachedVerify(orgData, detachedSign);
boolean ver = sydUtils.detachedVerify(orgData, detachedSign);
if (logSwitch == 1) {
System.out.println("p7 detach验签:"+ ver);
}
@@ -246,7 +252,7 @@ public class Test4Jemter extends AbstractJavaSamplerClient {
case 15:
api.get(). generateDE(RSAdn.getBytes(), 4, 1, orgData);
api.get().generateDE(RSAdn.getBytes(), 4, 1, orgData);
// byte[] cipherKeyRSA = (byte[]) genRSA.get(SydApi.RET_CIPHER_KEY);
sr.setResponseCodeOK();
//sr.setResponseData(new String(cipherKeyRSA), StandardCharsets.UTF_8.displayName());
@@ -265,7 +271,7 @@ public class Test4Jemter extends AbstractJavaSamplerClient {
sr.setResponseCodeOK();
break;
case 18:
testAhnx();
testAhnx(sydUtils);
sr.setResponseCodeOK();
break;
case 19:
@@ -287,24 +293,27 @@ public class Test4Jemter extends AbstractJavaSamplerClient {
sr.setResponseData(e.getMessage(), StandardCharsets.UTF_8.displayName());
sr.setSuccessful(false);
}finally {
if (sydUtils != null) {
sydUtils.disconnect();
}
sr.sampleEnd();
}
return sr;
}
public void testAhnx() {
public void testAhnx(SydUtils sydUtils) {
//裸签
byte[] nakedSign = api.get().SYD_NakedSign(orgData,SM2dn);
byte[] nakedSign = sydUtils.SYD_NakedSign(orgData,SM2dn);
//裸签验签
boolean ver = api.get().SYD_NakedVerify(orgData,nakedSign, SM2dn);
boolean ver = sydUtils.SYD_NakedVerify(orgData,nakedSign, SM2dn);
//detach签名
String detachedSign = api.get().detachedSign(orgData, SM2dn);
String detachedSign = sydUtils.detachedSign(orgData, SM2dn);
//detach验签
boolean ver1 = api.get().detachedVerify(orgData, detachedSign);
boolean ver1 = sydUtils.detachedVerify(orgData, detachedSign);
// testImportCert();
}
@@ -347,5 +356,9 @@ public class Test4Jemter extends AbstractJavaSamplerClient {
@Override
public void teardownTest(JavaSamplerContext context) {
System.runFinalization();
if (api != null) {
api.get().disconnect();
api.remove();
}
}
}