单独的一个打卡,跟前面关联不强的,如果有问题没解决的,也可以尝试
失误了,应该把Jmeter连接数据库放到前面的打卡里面的,这样子就可以在前置处理器取测试数据了。
接口信息说明:
用户管理模块
登录接口
api:post
method:post
request data:
{
"loginName":"IDO",
"passwd":"123"//base编码
}
退出接口:
api:get
method:get
添加用户接口:
api:post
method:post
headers:{
"Content-Type":"application/json",
"token":""
}
request data:
{
"login_name":"IDO",
"phone":"13100000000",
"real_name":"老徐",
"token":""
}
删除用户接口
api:put
method:put
headers:{
"Content-Type":"application/json",
"token":""
}
request data:
{
"login_name":"IDO",
"phone":"13100000000",
"real_name":"老徐",
"token":""
}
博文管理模块:
添加博文接口:
api:post
method:post
headers:{
"Content-Type":"application/json",
"token":""
}
request data:
{
"blog_name":"21天打卡",
"bolg_title":"Jmeter打卡之Day16",
"blog_details":"21天打卡",
"token":""
}
删除博文接口:
api:delete
method:delete
headers:{
"Content-Type":"application/json",
"token":""
}
request data:
{
"blog_name":"21天打卡",
"bolg_title":"Jmeter打卡之Day16",
"blog_details":"21天打卡",
"token":""
}
1. 前置处理器说明
- 在做功能测试的时候,前置处理器常用的有以下两种,其他的就先搁置一下,暂时用不到
- 后置处理器的时候分析了使用场景,做接口管理,脏数据处理等操作,那么前置处理器用在什么场景?
- 大家在做测试之前要做哪些事情?
1.准备测试数据
2.数据是否加密
3.是否需要连接数据库取数据
1.1 JDBC预处理程序
- 由于之前的失误,没有提前给大家设置JDBC的打卡,这个JDBC的操作要延后才能进行
- 换个角度看,大家平时在测试中操作数据库多么?都干什么?如果不会SQL的,移步隔壁的SQL打卡。
- 场景
- 准备了大量的测试数据,CSV文件使用不方便,就放到数据库里,那么,测试之前需要把测试数据读取出来
- 接口参数比较多,一个一个入参比较麻烦,从库里导出准确数据,然后进行修改调整
具体操作,明天进行,提前备好数据库
1.2 BeanShell 预处理程序
- BeanShell 这个在调整乱码的时候用到过,大家已经知道这个组件就是编写Java代码的了
- 那么,这个组件的使用场景有哪些?
1.最直接的,接口数据加密(执行测试用例之前进行加密)
抛出来一个问题:大家了解的加密方式有哪些?适用于什么场合?
- 常见的加密方式如下
//base64加密
import sun.misc.BASE64Decoder;//引入模板
String tmp = new sun.misc.BASE64Encoder().encode("${passwd}".getBytes());//将原密码经过base64编码后赋给tmp
//熟悉下面的语句么?抛出变量
vars.put("passwd_base", tmp);
//MD5加密在函数助手里,第二阶段详细聊
//AES加密在函数助手里,第二阶段详细聊
2.作业场景
- a.之前大家提取公共变量的时候,把项目的接口相关信息抽离了出去,但是遗留了用户名和密码
- b.在提供的接口信息中,登录接口中有一个密码base加密,一直没有完成过,今天,用前置处理器的beanshell来进行加密并传进登录接口中
3.示例脚本
3.1 图片示例
加密前加密后
网友评论