工具引用jar包语言都是beanshell
问题起因:metersphere 接口自动化实现过程中,如何实现字符串加密且加密方法依赖第三方库;
使用语言:beanshell脚本语言,java语言
使用工具:idea jmeter metersphere
1.首先根据开发或者网上给出的加密方法方式 写出代码逻辑
这里开发已经提供了sm2加密的jar包
查看代码:
2.将jar包上传到项目设置-文件管理里面
3.查看jar包打开加载jar包开关
4.找对应的接口去进行测试,选择beanshell脚本
import com.example.encryption.DemoApplication; //包名.类名
DemoApplication d= new DemoApplication();
String encryptedString = d.encryption("Hello, world!"); //调用方法进行传参
log.info(encryptedString);
接口调试可以查看到加密成功
如果遇到报错Error invoking bsh method和 not found in namespace,可以看下
查看包是否引用第三方依赖,如果有打包的是需要依赖一起打包
pom文件里面配置:
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<!--这部分可有可无,加上的话则直接生成可运行jar包-->
<!--<archive>-->
<!--<manifest>-->
<!--<mainClass>${exec.mainClass}</mainClass>-->
<!--</manifest>-->
<!--</archive>-->
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
jemter
1、添加线程
2.添加http请求,添加beanshell前置处理
3.在测试计划里面 引入jar包
4.beanshell脚本里面编写引用方法,点击右上角查询日志
可以看到已经引用成功,加密成功