一、测试背景
1、接口测试需要完成注册-->登录-->充值
使用soapui构建好测试用例、设置断言后,运行结果如下:
![5651a3f14960d209332620ec63003394.png](https://i-blog.csdnimg.cn/blog_migrate/46e3daf893ff528bc64881456b56c511.jpeg)
2、recharge接口运行失败
继续查看该接口具体发送的请求及返回结果有无错误:
![03d5ed522087e0a138b3caeb707573ce.png](https://i-blog.csdnimg.cn/blog_migrate/684608f5180cfe1b5ed52d1370a99338.jpeg)
![6bcddd2e740907828476dba3521d3a24.png](https://i-blog.csdnimg.cn/blog_migrate/c2dbcc9578b973bbc3e38ad14bf5b27c.jpeg)
3、JSESSIONID
用户登录(login)向服务器发起请求,服务器会创建session会话保存用户的信息,并返回一个JSESSIONID值放到响应头set-cookie中。
然后用户继续发起充值(recharge)请求,请求头cookie中会带上同一个JSESSIONID值提交到服务器,从而确定是同一个登录用户发出的请求,服务器就会放行资源,充值成功。
TestCase运行结果中,双击login运行step查看Respouse Message,切换到Raw视图,能看到JSESSIONID相关信息。
那我们现在就是要从登录这个响应头中将JSESSSIONID获取到并赋给充值的请求头中
![76ece29a44c455b445727352896bff3b.png](https://i-blog.csdnimg.cn/blog_migrate/532f3cf35920837d99499ca103d143d6.jpeg)
二、如何实现Cookie设置
1、右键Test Step -->Add Step
再点击Groovy Script。
并命名为Setcookie。
![620c86fb71ae3179a022376c882146dc.png](https://i-blog.csdnimg.cn/blog_migrate/0a0a8d2d92d40112e57ffea38ef3ce12.jpeg)
2、在Setcookie中贴入以下代码:
![668a10b09c180c8d5b21e11148db211b.png](https://i-blog.csdnimg.cn/blog_migrate/60fe84ea527de50b84371b80512ee0fd.jpeg)
3、重新运行TestCase,运行成功
查看recharge(充值)请求详细信息,显示充值成功。
![41063ed40932744af2e9c0e2787b43dc.png](https://i-blog.csdnimg.cn/blog_migrate/5250df667d344310df9cb571a0d4d1b0.jpeg)
![d12d42dc6b78bae9948c8cb9477d0e7d.png](https://i-blog.csdnimg.cn/blog_migrate/57b3105d0158d1a2bc96a8f998e15153.jpeg)