httprunner 3.X (8)笛卡尔参数化

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

"""测试数据参数化-笛卡尔积"""
class TestCaseLogin(HttpRunner):
    @pytest.mark.parametrize(
        "param",
        Parameters(
            {

                "username": ["134287505XX", "134287505XX", "134287505XX", ""],
                "password": ["a123456", "111111", "", "a123456"],

            }

        )
    )
    def test_start(self, param):
        super().test_start(param)

    config = Config("登录") \
        .base_url("https://api.testing.net") \
        .variables(
        **{

        }
    ) \
        .verify(False)

    teststeps = [
        Step(
            RunRequest("/account/v1/login")
            .post("/account/v1/login")
            .with_headers(
                **{
                    "content-type": "application/json; charset=utf-8",
                    "x-hb-client-type": "android"
                }
            )
            .with_json({"account": "$username", "password": "$password"})
            .extract()
            .with_jmespath("body.user_id", "user_id")
            .with_jmespath("body.token", "token")
            .validate()
            .assert_equal("status_code", 200, "断言成功")
            .assert_equal("body.continue_url", "https://api.testing.net")

        )
    ]


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

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容