creo每次都要配置config_config配置中心

creo每次都要配置config_config配置中心前言每个测试用例都应该有config部分,可以配置用例级别。比如name、base_url、variables、verify、export等等案例演示fromhttprunnerimport

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

前言

每个测试用例都应该有config部分,可以配置用例级别。比如name、base_url、variables、verify、export等等
 

案例演示

from httprunner import HttpRunner, Config, Step, RunRequest, RunTestCase


class TestCaseRequestWithFunctions(HttpRunner):
    config = (
        Config("request methods testcase with functions")
        .variables(
            **{
                "foo1": "config_bar1",
                "foo2": "config_bar2",
                "expect_foo1": "config_bar1",
                "expect_foo2": "config_bar2",
            }
        )
        .base_url("https://postman-echo.com")
        .verify(False)
        .export(*["foo3"])
    )

    teststeps = [
        Step(
            RunRequest("get with params")
            .with_variables(
                **{"foo1": "bar11", "foo2": "bar21", "sum_v": "${sum_two(1, 2)}"}
            )
            .get("/get")
            .with_params(**{"foo1": "$foo1", "foo2": "$foo2", "sum_v": "$sum_v"})
            .with_headers(**{"User-Agent": "HttpRunner/${get_httprunner_version()}"})
            .extract()
            .with_jmespath("body.args.foo2", "foo3")
            .validate()
            .assert_equal("status_code", 200)
            .assert_equal("body.args.foo1", "bar11")
            .assert_equal("body.args.sum_v", "3")
            .assert_equal("body.args.foo2", "bar21")
        ),
        Step(
            RunRequest("post form data")
            .with_variables(**{"foo2": "bar23"})
            .post("/post")
            .with_headers(
                **{
                    "User-Agent": "HttpRunner/${get_httprunner_version()}",
                    "Content-Type": "application/x-www-form-urlencoded",
                }
            )
            .with_data("foo1=$foo1&foo2=$foo2&foo3=$foo3")
            .validate()
            .assert_equal("status_code", 200)
            .assert_equal("body.form.foo1", "$expect_foo1")
            .assert_equal("body.form.foo2", "bar23")
            .assert_equal("body.form.foo3", "bar21")
        ),
    ]


if __name__ == "__main__":
    TestCaseRequestWithFunctions().test_start()

 

name(必填)

指定用例名称,将在log和报告中展示,下面指定用例名称为testcase baidu案例
用cat命令查看日志中用例的名称

(httprunner_env) ➜  logs cat f39480a1-e4c4-42a0-b301-b2777408cf0c.run.log 
2021-02-07 10:05:53.142 | INFO     | httprunner.runner:test_start:451 - Start to run testcase: testcase baidu案例, TestCase ID: f39480a1-e4c4-42a0-b301-b2777408cf0c
2021-02-07 10:05:53.142 | INFO     | httprunner.runner:__run_step:292 - run step begin: / >>>>>>
2021-02-07 10:05:53.229 | DEBUG    | httprunner.client:request:186 - client IP: 192.168.1.141, Port: 56803
2021-02-07 10:05:53.229 | DEBUG    | httprunner.client:request:194 - server IP: 180.101.49.12, Port: 443

creo每次都要配置config_config配置中心
 

base_url(选填)

一般通过的完整url=host地址+path路径(比如:’https://www.baidu.com/s‘)
base_url就是通用的host地址,实际使用中,通常被用作切换环境
如果base_url被指定,测试步骤中的url只能写相对路径。当你要在不同环境下测试时,这个配置非常有用。
 

案例演示

比如公司目前有2套环境,一套测试环境1地址:192.168.1.100, 一套生成环境2地址:172.111.222.333,两套环境都要执行某用例,这个时候base_url就起到了作用,来看下面演示
creo每次都要配置config_config配置中心
 

variables(选填)

测试用例的公共参数,每个测试步骤都可以引用他,比如我一个测试用例中所有的步骤都需要用到version,那么version就可以放在config的variables中。
另外,Step里的变量优先级是比config里的变量要高的,如果有2个同名的变量,那么引用的时候,是优先引用步骤里的变量。
 

verify(选填)

指定是否验证服务器的TLS证书。通常设置为False
当请求https请求时,就会跳过验证。如果你运行时候发现抛错SSLError,可以检查一下是不是verify没传,或者设置了True。
 

export(选填)

指定输出的测试用例变量,主要是用于Step之间参数的传递
比如最常见的面试题:接口测试,下一个接口依赖上一个接口的返回数据?
答:在httpruner中上一个接口使用export导出,下一个接口引用该变量即可

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/166222.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月31日 下午10:00
下一篇 2022年7月31日 下午10:00


相关推荐

  • Jeecg_Jflow整合记录

    Jeecg_Jflow整合记录系统组织机构 t s deparselect fromt s departselect fromt s departwherei fd6a8c24e901 系统用户基础表 t s base userselect fromt s base user 用户表 t s user select fromt s user

    2026年3月17日
    3
  • c语言入门教程–-15字符串的输入与输出

    c语言入门教程–-15字符串的输入与输出

    2021年3月12日
    212
  • 数字信号处理实验报告MATLAB(matlab数字信号处理pdf)

    数字信号处理MATLAB实验报告4实验报告课程名称:数字信号处理实验专业班级:姓名:学号:实验名称数字信号处理实验地点实验时间实验成绩实验目的及任务理解信号变换的基本概念理解离散傅立叶变换的基本概念掌握快速傅立叶变换的应用方法掌握离散余弦变换的应用方法掌握Z变换的应用方法了解Chipz变换的基本概念掌握Hilbeit变换的初步应用了解倒谱变…

    2022年4月17日
    83
  • 物联网,大数据和云计算的基本关系和应用场景_云计算物联网大数据的区别

    物联网,大数据和云计算的基本关系和应用场景_云计算物联网大数据的区别  身处信息快速发展的今天,物联网、大数据、云计算这些名词在我们的生活中出现的越来越频繁,看似高大上的三者其实却和我们的生活息息相关。带你来认识下三者之间的关系吧!  大数据  大数据(bigdata),就是指种类多、流量大、容量大、价值高、处理和分析速度快的真实数据汇聚的产物。大数据或称巨量资料或海量数据资源,指的是所涉及的资料量规模巨大到无法透过目前主流软件工具,在合理时间内达到撷取、…

    2022年10月6日
    4
  • 有没有支持5V输入和9V输入给两串8.4V锂电池充电的芯片IC「建议收藏」

    有没有支持5V输入和9V输入给两串8.4V锂电池充电的芯片IC「建议收藏」有的FS4062支持5V和9V同步升降压充电8.4V两床锂电池,也就是5V9V适配器自动识别两串8.4V锂电池高效充电管理芯片概述:FS4062是一款宽电压输入,专门为7.4V双节锂电池充电的充电管理芯片,兼容5V,9V适配器。在5V供电的情况下,实现升压充电,电池端最大充电电流1.3A,在9V供电的情况下,实现降压充电,电池端最大充电电流1.2A,充电电流可以通过外置电阻RSET来设定。低阻抗的电源通路可以使充电效率更高,减少充电时间,提高电池使用寿命。.

    2022年10月6日
    6
  • linux superblock位置,Linux下对superblock的理解[通俗易懂]

    linux superblock位置,Linux下对superblock的理解[通俗易懂]386structext3_super_block{387/*00*/__le32s_inodes_count;/*Inodescount*/388__le32s_blocks_count;/*Blockscount*/389__le32s_r_blocks_count;/*…

    2025年7月14日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号