4.json.dumps():把字典、json对象转化为字符串
json.loads():把字符串转化成字典 json对象
6. requests 库添加 cookie 的方式有哪些?
7、httprunner 如何通过脚手架工具创建项目?
创建脚手架项目: hrun --startproject 项目名称
例如: hrun --startproject weixin_demo
8、httprunner 如何设置环境变量?
./.env:填写BASE_URL
./api/.xxx.yml: 填写:base_url: ${ENV(BASE_URL)}
定环境变量.Env 的详细路径 --dot-env-path
例如:
hrun --dot-env-path ./config.ini ./testsuites/testsuite_demo_01.yml
9、Httprunner 中进行参数化如何实现?
可以使用faker库或者随机数,pysql参数化实现。
./debugtalk.py:
./testsuite/testsuite_xxx.yml
10、Debugtalk.py 在 Httprunner 中的作用是什么?
写辅助函数,实现复杂的功能。有些复杂的逻辑,需要写个函数去实现,比如操作数据库等。
11、测试用例脚本中的 validate 和 extract 参数的含义是?
Validate:断言。实际结果与预期结果。
例如:validate:
- eq: [$error_code,$excepted_code]
extract :在引用的时候,把上一个用例中的部分参数在下一个用例中使用。
例如:extract:
- token_id
12、Httprunner 如何实现把测试用例 yml 的参数传递到其它 yml 文件中?
export跨用例传输参数。
13、Httprunner 如何设置断言?
通过-eq实现。一般在testcase和api会设置断言。
(1)./api的validate一般做非业务的断言。
例如:
validate:
- eq: ['status_code',200]
(2)./testcase的validate可以在 config里面设置期望结果。用$符号引用。
例如:
- config:
variables:
excepted_code: 45158
- test:
validate:
- eq: [$error_code,$excepted_code]
14、requests 库如何通过 pymysql 连接数据库获取数据?
(1)安装Pip install mysql ,这里我的mysql版本是8.0.21,pip install mysql
安装Mac Navicat premium 12 破解(这里用之前刘sir给的破解方法)
连接mysql(如果出现 'caching_sha2_password'需要修改加密方案)sucess.
(2)./debugtalk.py:
Import pymysql
(3)Mysql编写sql语句:
15、Httprunner 如何使用命令行执行接口测试,参数有哪些(至少写 3 个并说明含义
创建脚手架项目: hrun --startproject weixin_demo
1.自定义测试报告名称:--report-file
例:hrun --report-file ./reports/results.html ./testsuites/testsuite_demo_01.yml
2.自定义测试日志的名称--report-file 和级别--log-level DEBUG
例:hrun --report-file ./reports/result.html --log-level DEBUG --log-file ./logs/20201111.log ./testsuites/testsuite_demo_01.yml
3.指定变量.env的详细路径:--dot-env-path
例:hrun --dot-env-path ./config.ini ./testsuites/testsuite_demo_07.yml
4.校验json格式:--validate
例:hrun --validate testsuites/testsuite_demo_01.yml
5.指定测试报告模版路径(allure测试报告),--report-template
例:hrun ./testsuites/testsuite_demo_07.yml --report-template ./reports/templates/extent_report_template.html