pytest.mark.parametrize()参数化的应用一

Posted 97xiaolai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pytest.mark.parametrize()参数化的应用一相关的知识,希望对你有一定的参考价值。

技术图片
 1 from page.LoginPage import Loginpage
 2 import os, sys, pytest
 3 
 4 base_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
 5 sys.path.append(base_dir)
 6 
 7 
 8 class TestLogin():
 9 
10     @pytest.mark.parametrize(
11         "name, password",
12         [(admin, admin),
13          (jack, 123456),
14          (abc, 123456)
15          ],
16         ids=[admin登录成功, jack登录成功, 用户名错误失败]
17     )
18     def test_case(self, browser, name, password, base_url=None):
19         obj = Loginpage(browser)
20         obj.get("http://192.168.117.9:8080/jforum/forums/list.page")
21         obj.user_bix.send_keys(name)
22         obj.pwd_bix.send_keys(password)
23         obj.submit.click()
24         if name != "abc":
25             assert obj.assert_succeed.text == "个人资料"
26             obj.userout.click()
27         else:
28             assert obj.assert_fialed.text == "您输入了无效的用户名或错误的密码"
29 
30 
31 if __name__ == "__main__":
32     pass
View Code

 

以上是关于pytest.mark.parametrize()参数化的应用一的主要内容,如果未能解决你的问题,请参考以下文章

pytest文档68-pytest-lazy-fixture 插件解决 pytest.mark.parametrize 中使用 fixture 问题

pytest文档67-pytest.mark.parametrize 中使用 fixture

使用@pytest.mark.parametrize进行参数传递测试

(二十八)pytest的数据驱动

pytest parametrize参数化

pytest 8 参数化parametrize