jmeter实现mk接口登录以及考试过程

一、 登录MK系统
Mk系统用户登录使用的RSA加模式,直接使用明文密码或者从数据库中查询表密码都是无法直接登录系统的。可使用fiddler中抓取接口(/data/sys-auth/login)密码,可实现登录系统。
jmeter实现mk接口登录以及考试过程

获取到密码后,在jmeter中的的接口填写模式如下:
jmeter实现mk接口登录以及考试过程

备注:用户的id都是mke1-mke20,在循环过程中,可以递增器实现登录。密码都是相同的

登录 结果如下:
jmeter实现mk接口登录以及考试过程

在成功登录系统后,将token保存在HTTP Cookie管理器中,作为全局登录
jmeter实现mk接口登录以及考试过程
jmeter实现mk接口登录以及考试过程
二、 使用接口创建考试用户
考试用户的创建规则为mke(0-20),密码都是1,这样的话,可是实现使用计数器递增登录系统

jmeter实现mk接口登录以及考试过程
创建用户接口如下:
jmeter实现mk接口登录以及考试过程

创建用户过程中,登录名、编号、用户名都是用递增器,这样创建的数据比较有规律
三、 查看考试用户状态
token获取成功以后,查看当前人考试的状态接口(/data/kms-exam/kmsExamActivity/myStatus)接口返回字段将考生试卷id提取出来,考试活动中,每个考生试卷的id都是独立的。所以需要单独获取。
jmeter实现mk接口登录以及考试过程
查看结果树中,返回结果如下:
jmeter实现mk接口登录以及考试过程
由于返回的相应结果为json,所以使用json提取器提取字段即可
四、 开始考试
获取到考生的试卷id后,可以通过进行开始考生操作,接口为(/data/kms-exam/kmsExamCandidatePaper/examine)
jmeter实现mk接口登录以及考试过程
开始考试接口中,传递的参数为:考生试卷id(fdId)以及考生活动id(fdActivityId)
进行开始考生操作后,查看结果树中会返回试题id信息,这个将会在暂存考试操作 中用到
五、 暂存试题
暂存试题将会记录考生的试题(试题id,是否为标记、答案),试题被引用到试卷中,则会生成新的试题id,所以不能去试题库的id来使用。
jmeter实现mk接口登录以及考试过程
六、 提交考试
提交考生试卷
jmeter实现mk接口登录以及考试过程
七、 查看考生活动列表
可以查看到所有的考生的试题已经被成功提交
jmeter实现mk接口登录以及考试过程
八、 配置原件说明
使用http请求默认值,这样下面的所有请求都使用请求方式,跟请求链接即可
jmeter实现mk接口登录以及考试过程
用户自定义变量
设置考试活动id为自定义变量,这样后面的参数都可以直接使用了,这样下来,整一场考试活动流程跑下来,只需要每次都修改考试活动那个id即可,我都是在原有的考试基础上,复制考试活动,然后再jmeter中,修改id

jmeter实现mk接口登录以及考试过程