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导出,下一个接口引用该变量即可

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • java小游戏源代码大全_潜艇大战java代码

    java小游戏源代码大全_潜艇大战java代码一、简单介绍这是一个功能相对全的JAVA版坦克大战,界面绘制是通过JAVA的图形化用户界面完成的,包括了菜单界面和游戏界面。其中菜单界面可以供玩家选择重新开始游戏、暂停、继续、是否播放背景音乐、帮助等操作;游戏界面绘制了坦克、河流、草地、鹰碉堡等经典坦克场景,玩家在游戏界面操作坦克开始对战。本游戏使用的主要技术有Swing编程、面向对象编程、多线程编程。本…

  • 图像去噪序列——BM3D图像去噪模型实现

    图像去噪序列——BM3D图像去噪模型实现1.BM3D模型简介BM3D模型是一个两阶段图像去噪方法,主要包含两个步骤:(1)在噪声图像上,利用局部区域搜索相似块,并进行堆叠,在变换域(DCT域、FFT域)利用硬阈值去噪方法对堆叠的图像块进行去噪,获得堆叠相似块的估计值,最后,根据均值权重进行聚合;(2)通过步骤(1)获取初步估计的图像,在初步估计的图像上进行相似块的聚合;然后,利用维纳协同滤波进行图像去噪,从而,获取最后的去…

  • 关于搭建appium – ios真机环境

    关于搭建appium – ios真机环境

  • asp.net(c#)网页跳转七种方法小结 .

    asp.net(c#)网页跳转七种方法小结 .转自:http://blog.csdn.net/wonsoft/article/details/5612000  1.Response.Redirect(“http://www.yayiba.com”,false);  目标页面和原页面可以在2个服务器上,可输入网址或相对路径。后面的bool值为是否停止执行当前页。跳转向新的页面,原窗口被代替。”浏览器中的URL为新路径。

  • Docker安装RabbitMQ并安装延时队列插件

    Docker安装RabbitMQ并安装延时队列插件一、RabbitMQ简介RabbitMQ是由erlang语言开发,基于AMQP(AdvancedMessageQueue高级消息队列协议)协议实现的消息队列,它是一种应用程序之间的通信方法,消息队列在分布式系统开发中应用非常广泛。二、docker安装RabbitMQ1、搜索镜像dockersearchrabbitmq2、拉取并运行容器dockerrun-dit–namerabbitmq-eRABBITMQ_DEFAULT_USER=guest-eR

  • 如何创建HTML表单?html表单代码怎么写[通俗易懂]

    如何创建HTML表单?html表单代码怎么写[通俗易懂]html表单代码是什么?如何创建HTML表单?这些对于新手会感到陌生,下面我们为你总结一下html表单代码怎么写?以及html表单的创建?一:构建表单标签在文本编辑器中打开HTML文档,必须在<form>和</form>标签中键入HTML表单的内容。这些标签充当表单的容器,就像<div></div>容器标签一样。您可以在<form></form>标签内使用CSS或js,使您的表单看起来比较美观。2.打开<form&gt

发表回复

您的电子邮箱地址不会被公开。

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