三、脚本编写
回到项目实战
先新建测试计划
因为整个项目里面的ULR都是一样的,所以统一使用配置软件请求默认值
IP地址就是复制域名,粘贴后不需要HTTP协议
这样以来,整个HP请求的时候,我们就不用写路径了
编码格式,我们写UTF-8
最后记得保存
然后开始写线程组
第一个线程组写完了以后,我们把请求加上去
再把格式搭建一下,搭建一个通用的格式,查看结果数
内容根据之前写的接口测试用例走
运行之后查看结果数,确认是否执行成功无误
以此类推复写其他用例
测试预期结果404或400的用例,执行结果也与之对应是404和400的,说明这条用例通过
查看结果树报红看着不舒服,可以通过断言式通过解决
添加响应断言,名称写上对应的404或400
因为400和500本身就是断言,因此我们需要勾选忽略状态
忽略原有JMeter自己的一个判断,用我们自己的判断
如上操作后,之前变红的情况,现在变绿了
扩展,如果觉得写固定的数不行,要求必须真正的随机数,那我们可以设置函数参数来实现(是不是真随机数其实对测试不重要)
因为函数中没有随机小数,只有随机整数,我们选择它
设置范围最小值和最大值
为了实现随机小数,我们只需要在0.后面粘贴随机整数,名称也要对应修改
假设循环10次,运行效果
查看结果
回到项目
依赖请求图片验证码
方法和路径根据测试用例进行对应修改
方法头会自动修改
从剪贴板复制的数默认后面都有空白,因为他把换行转换为空格了,因此必须要删除
现在需要将图片验证码和短信验证码进行关联
在配置元件中添加Cookie管理器
添加后即可,只要上条请求返回要求设置cookie
cookie管理器会自动记录
下条请求的时候,只要域名相同,他会自动附加,不用你管
他跟浏览器一样,自动记录,自动请求,自动附加
启动后效果
可以看到Cookic的效果
因为Cookic管理器的作用会出现命令
管理器看到命令后会自动设置Cookic
在下条请求后会自动添加
扩展:短信验证码需要用到手机号,注册的时候要用,登录的时候也要用,包括验证码
有没有什么好的办法,不然我们每次都得改数,一改全改
在测试计划里面加几个变量,给参数化
设置正确的和错误的
暂时先添加以下几个,后面需要用到其他的再加
这样替换参数的时候只需要改一次
这样数据要换的话,瞬间就可以换了
线程组太多看上去密密麻麻不方便怎么办
我们可以新建一个线程组用来切割分类
记得右键禁用他,这样我们连跑的时候,他不能跑,不能运行
注册脚本编写
复制测试用例 剪贴板添加 填写参数 值可以修改调用之前写的
如果执行注册失败,说明账号已经存在,可以清空数据,或者更换账号
测试注册失败用例,修改账号和验证码的参数值
记得修改短信验证码的参数值与其相同
不一致的情况下,Cookie会报错
执行过后可以看到成功了,有感叹号的才是真正的图片验证码报错
短信验证码也得写phone2,这样我们获得的Cookie信息是同一个Cookie信息
手机号已存在就只需要填phone1就可以了,因为之前注册过了
执行后可以看到没问题
密码为空
注意:手机改2,并且短信验证码也得是手机2保持一致,密码填空
执行后发现密码为空还是注册成功,说明是BUG
发现BUG后加在名称上,并且禁用
未同意条款
注意:因为phone2已经注册成功了,因此改为phone3,且必须与短信验证码一致,同意条款改为off不同意
发现执行注册成功,说明是BUG,BUG后加在名称上,并且禁用
获取图片验证码、短信验证码总结:
1、随机数为空、随机数为字符串,响应状态码为404/404,如果需要变绿,就需要加断言且勾选“忽略状态”
2、获取短信验证码依赖图片验证码,需要先请求图片验证码。添加Cookie管理器进行关联。
注册总结:
1、密码为空、未同意条款为缺陷
2、注册接口中手机号必须和获取短信验证码接口手机号一致