写的时候建议大家从api开始,从内到外的顺序,我这里展示的是分层的调用顺序。
一、在testsuites中添加testcases 这样的好处是可以让代码分层更加清楚
二、testcases编写执行login的步骤
主体流程:我这里的接口需要先获取登录的token,然后作为参数,再获取切换公司的token
关键字:extract 其实也就是一个json提取器 这样理解就很方便啦!
extract:
accesstoken: content.data #响应结果中取得返回值
代码如下:
- config:
name: user_login_income
variables:
account: lqwtest
password: abcd1234
output: # 作为全局的输出变量
cToken,accesstoken
- test:
name: login
api: api/get_token/account_login.yaml
validate:
- eq : ['status_code',200] # 断言
extract:
accesstoken: content.data # 取响应参数
- test:
name: get_X_C_Token # 切换不同公司
api: api/get_token/change_current_company.yaml
variables: # 请求变量
accesstoken: $accesstoken # 作为请求参数赋值
companyId: 'XXX'
taxNo: 'XXX'
validate:
- eq: ['status_code',200]
extract:
cToken: content.data
三、api 单接口 接口尽量写的清楚简单点 有利于个人理解
代码如下:
name: change_current_company
variables:
url: XXX
request:
method: GET
url: $url
headers:
X-Access-Token: $accesstoken
Contnet-Type: application/json
params:
companyId: $companyId
taxNo: $taxNo
validate: # 断言
- eq: ['status_code',200]
name: account_login
variables:
url: api/v2/base/login/account-login
request:
url: $url
method: POST
json: # 请求参数是json格式
"account": $account
"password": $password
validate: # 断言
- eq: ['status_code',200]
大家一定要动手写哦~ 我一开始也以为很简单,其实一点也不会,靠自己一个个踩坑,才会更加了解。每天进步一点点!!加油!