开发在定义接口时经常在请求URL的参数上使用“时间戳”,来区分请求的时效,避免重复请求。
那么测试人员在进行接口自动化时如何解决动态获取时间戳呢?
有代码功底的测试人员,可使用pyhon或者java等代码写一个时间函数来解决时间戳的问题,那么没代码功底的可在使用jmeter模拟该含有时间戳的接口请求时,可通过Function Helper Dialog函数助手来获取时间戳。
- 接口文档
通过接口文档可获得以下信息:
- 接口域名:详细见上图
- 接口路径:详细见上图
- 接口入参:详细见上图
- 接口请求方法:get
- 接口请求成功标志:reason
- 使用时间戳函数
菜单路径
1.生成13位时间戳:${__time(/1000,)}
Choose a function:选择一个函数
Generate© to clipboard:生成并复制到粘贴板
2.生成10位时间戳:${__time(/1000,)}
- Jmeter模拟接口请求
添加sample-HTTP request请求:配置域名、地址、请求方法、入参,以上信息均可从接口分析里面获取,具体如下图:
- 添加断言
通过jsonpath进行断言,语法:$.reason
- 添加监听
- 运行结果
1.Jmeter模拟发起GET类型的接口请求时会自动拼接参数,如下图:
2.请求成功,获得接口返回的“笑话”数据,如下图: