当前位置:网站首页>接口自动化测试平台FasterRunner系列(三)- 操作示例
接口自动化测试平台FasterRunner系列(三)- 操作示例
2022-07-25 18:44:00 【wangmcn】
接口自动化测试平台FasterRunner系列(三)
操作示例
目录
- 1、Get请求
- 2、Post请求
- 3、依赖请求
本篇模拟接口请求链接使用moco生成。
关于moco的部署与使用等,可点击moco系列章节进行查阅。
1、Get请求
接口请求地址:
http://localhost:8083/getdemo?username=admin&password=123456
如图所示:先使用Postman,访问此接口。
GET请求,2个参数username、password
返回数据为admin,123456
1、登录FasterRunner,项目(DEMO)、API模板(module 1)、域名管理(测试环境)、配置管理(测试配置)已创建完成。
域名管理
配置管理
2、API模板,添加接口,接口名称TestGet。
请求方法选择GET,填写请求地址/getdemo
(1)Request:选择params,填写2个参数username、password和所对应的值。
(2)Validate:填写接口断言。
检查content 比较方式equals 预期结果admin,123456
3、执行用例,例如在用例列表里选中此用例,之后选择环境和配置,点击确定执行。
执行结果,接口断言验证通过。
2、Post请求
接口请求地址:
http://localhost:8083/postdemo
如图所示:先使用Postman,访问此接口。
POST请求,2个表单参数username、password
返回数据为admin,123456
1、登录FasterRunner,项目(DEMO)、API模板(module 1)、域名管理(测试环境)、配置管理(测试配置)已创建完成。
域名管理
配置管理
2、API模板,添加接口,接口名称TestPost。
请求方法选择POST,填写请求地址/postdemo
(1)Request:选择表单,填写2个表单参数username、password和所对应的值。
(2)Validate:填写接口断言。
检查content 比较方式equals 预期结果admin,123456
3、执行用例,例如在用例列表里选中此用例,之后选择环境和配置,点击确定执行。
执行结果,接口断言验证通过。
3、依赖请求
有两个接口,接口1执行后返回的数据里有接口2需要用到的请求参数,则执行接口2时,要先执行接口1获取返回的指定数据。
接口1请求地址:
http://localhost:8083/demo?aaa=123&bbb=456&ccc=789
如图所示:先使用Postman,访问此接口。
GET请求,3个参数aaa、bbb、ccc
返回json数据为:
{
"mystatus": "操作成功",
"mytoken": "eyJhbGciOiJIUzI1NiJ9"
}接口2请求地址:
http://localhost:8083/demo2
如图所示:先使用Postman,访问此接口。
POST请求,请求头有2个参数Content-Type、mytoken
返回json数据为:
{
"mystatus": "操作成功",
"mystatusid": "1"
}发送的json串。
一、登录FasterRunner,项目(DEMO)、API模板(module 1)、域名管理(测试环境)、配置管理(测试配置)已创建完成。
域名管理
配置管理
二、配置管理,修改测试配置
Variables:填写变量(接口1和接口2都有参数ccc,可以设置为公用)。ccc:789
三、全局变量
新增变量名为id,变量值为1,用于接口2进行引用。
四、执行接口1。
1、API模板,添加接口,接口名称Test1。
请求方法选择GET,填写请求地址/demo
(1)Request:选择params,填写3个参数aaa、bbb、ccc和引用所对应的变量值aaa、bbb、
(2)Extract:抽取接口返回值(接口2会调用此变量值)token:content.mytoken
(3)Validate:填写接口断言($token调用抽取的返回值content.mytoken):
检查status_code 比较方式equals 预期结果200
检查content.mystatus 比较方式equals 预期结果操作成功
检查$token 比较方式equals 预期结果eyJhbGciOiJIUzI1NiJ9
(4)Variables:填写局部变量,只在当前接口1用例有效。
aaa:123
bbb:456
2、执行接口1用例,例如在用例列表里选中此用例,之后选择环境和配置,点击确定执行。
执行结果,接口断言验证通过。
五、执行接口2。
1、驱动代码,新增get_sleep()函数
# debugtalk.py
import time
# 等待
def get_sleep(n):
time.sleep(n)2、API模板,添加接口,接口名称Test2。
请求方法选择POST,填写请求地址/demo2
(1)Header:请求头($token调用抽取接口1的返回值content.mytoken):
Content-Type:application/json
mytoken:$token
(2)Request:选择json,json串里引用所对应的变量值id 、ccc
json串:
{
"id": "$id",
"username": "test",
"password": "123456",
"ccc": "$ccc"
}(3)Validate:填写接口断言。
检查status_code 比较方式equals 预期结果200
检查content.mystatus 比较方式equals 预期结果操作成功
检查content.mystatusid 比较方式equals 预期结果1
(4)Hooks:设置hook机制。
测试之前执行的方法调用驱动代码脚本里的get_sleep()函数,调用此函数方法是${get_sleep(2)}
含义为:当接口1执行完成后,等待2秒,之后再执行接口2。
3、测试用例,新建分组TestSuite,之后添加用例,选择配置、接口1、接口2,保存为测试集Case1。
4、执行组TestSuite,执行方式为异步执行。
5、在“历史报告”下,查看报告执行结果,测试结果为成功。
打开测试报告,执行2个接口(先执行Test1,之后执行Test2)。
接口断言验证通过,例如Test2。
边栏推荐
- Ceres analytic derivation
- If you want to do a good job in software testing, you can first understand ast, SCA and penetration testing
- There was an error while marking a file for deletion
- Communication between processes (pipeline communication)
- GDB help
- Share six practical applet plug-ins
- 【翻译】LFX 2022年春季导师资格开放--2月13日前申请CNCF项目!
- 优秀的测试/开发程序员突破,不忘初心,方得始终......
- 黄鹤楼超震撼视角,这样的VR全景你绝对没见过!
- 关爱一线防疫工作者,浩城嘉业携手高米店街道办事处共筑公益长城
猜你喜欢

对迁移学习中域适应的理解和3种技术的介绍

MySQL index optimization introduction

ThreadLocal夺命11连问

How high are the young people in this class for "ugly things"?

VC/PE正跑向青岛

There are several browser cores. How to upgrade if the browser version is too low

Powell's function of Ceres

With a market value of 30billion yuan, the largest IPO in Europe in the past decade was re launched on the New York Stock Exchange

Register carefully! The number of applicants for these double non-governmental institutions exceeded 10000!

What is 3DE experience platform
随机推荐
What is 3DE experience platform
Osmosis extends its cross chain footprint to poca through integration with axelar and moonbeam
Visual model network connection
Ceres curve fitting
「Wdsr-3」蓬莱药局 题解
VC/PE正跑向青岛
黄鹤楼超震撼视角,这样的VR全景你绝对没见过!
怎么禁止使用360浏览器(怎么才能把自带的浏览器停用)
[applet development] page navigation details
Process communication (Systemv communication mode: shared memory, message queue, semaphore)
Save the image with gaussdb (for redis), and the recommended business can easily reduce the cost by 60%
F5:企业数字化转型所需六大能力
11.2-hj86 find the maximum number of continuous bits
Register carefully! The number of applicants for these double non-governmental institutions exceeded 10000!
Introduction notes of JVM foundation and problem analysis
从目标检测到图像分割简要发展史
3de 回复
解决You can change this value on the server by setting the ‘max_allowed_packet‘ variable报错
微软Azure和易观分析联合发布《企业级云原生平台驱动数字化转型》报告
银行理财子公司蓄力布局A股;现金管理类理财产品整改加速