![29ea7a5089b21b0647b1ac81bb10dece.png](https://i-blog.csdnimg.cn/blog_migrate/7c89aa8e097872cc31ebfd55a58e8963.jpeg)
在使用Jmeter做接口自动化测试中,经常会使用到公共的数据,那么就需要对这些公共的数据分离出来,不管是基于测试框架的思想,还是使用工具来进行做自动化测试,公共数据的分离首先是需要思考的。这里就以获取电话号码归属地来作为测试的案例,看接口的文档如下:
![6bc38f0b8295b2926c96aa0201c02fdb.png](https://i-blog.csdnimg.cn/blog_migrate/0b45a462f46aab50a98352dd3ca20d3f.jpeg)
在如上信息中,可以得出如下的信息:
![34ef11cd05addc5a60c2d3331f89eda5.png](https://i-blog.csdnimg.cn/blog_migrate/90f39281a8c20b89e4928bc3e87d8b21.jpeg)
其中请求参数中userID可以为空,而请求参数mobileCode不能为空
打开Jmeter测试工具,创建线程组并且新增该接口的测试用例,如图所示:
![fb57c2aa425d5b8c954958336da88d16.png](https://i-blog.csdnimg.cn/blog_migrate/3fefd1dcb849d390a764c5e8bb0546db.jpeg)
那么在这个案例中,参数mobileCode它就是一个变量,我们完全可以把它分离出来,因为依据测试用例的不同查询的电话号码是不同的,在计划中,添加用户自定义的步骤为:添加--->配置元件--->用户自定义的变量,添加用户自定义变量后,定义变量mobile,如下图所示:
![fdf6dac9f2bdcf31835497ce0d054f41.png](https://i-blog.csdnimg.cn/blog_migrate/9b6bd97f24496e5296e61fc944d782a2.jpeg)
那么下来就是调用该变量,在Jmeter中调用的方式为&{自定义的变量},在接口变量中调用,我们在请求参数中直接调用mobile的变量,如下图所示:
![87bb27a208f2d187addf408e2cf78562.png](https://i-blog.csdnimg.cn/blog_migrate/b640d695ae8fe069b4d755c481e9db8c.jpeg)
再次执行接口用例,执行的结果如图所示:
![c5adddcdaa66e77919b958f24dc179fd.png](https://i-blog.csdnimg.cn/blog_migrate/06d9d4b9d2963b11f1fbbe933e28181c.jpeg)
见发送请求后,服务端返回的响应数据:
![8959abbb3aeac7cdf1abbcc19ea2d377.png](https://i-blog.csdnimg.cn/blog_migrate/d9f9108f0ba34bd64e74fd434bfa6277.jpeg)
也许看到这里,有人心里会想,那么每次请求可以除了这种方式可以自定义不同的电话吗?答案是可以的,这在以后的知识体系会讲。敬请关注!