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()
httprunner 3.X (8)笛卡尔参数化
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- httprunner3.x详细教程七(三种方式实现参数化数据驱动) **欢迎加入测试交流群:自动化测试-夜行者(8...
- 前言: 做过接口测试的都知道,接口的参数化是接口测试中非常普遍的测试模式,那么在HttpRuner3.x中,怎么实...
- 前言 众所周知,在接口测试工作中,接口之间参数的关联是再常见不过的应用,Httprunner3.x在这一块的支持上...