最后,将所有元素的定位、页面操作和测试数据组合在一起。 这里使用的pytest单元测试框架也可以在unittest中进行,但是unittest用于web单元测试不太容易使用。
首先:
我们在TestData上创建pytest.ini的配置文件。 以创建要添加标签的元素
然后,在TestCases中创建一个conftest.py文件,用于创建前置条件和后置条件
importpytestfromseleniumimportwebdriverfrompo.com mon.configimporturl _ config @ py test.fixture (scope=' function ' ) 3360驱动程序=web驱动程序. chrome (驱动程序. get ) url_config.get ) excel_re ),' URL ' ) )驱动程序. maximize _ wire 必须命名为test_或_test,学习unittest和pytest的人都知道。 否则,pytest找不到此文件,无法运行
这个test_baidu.py是一个测试用例,总结了我们以前元素的定位和页面操作以及测试数据。
importpytestfrompo.page objects.Baidu _ pageimportwebbaidufrompo.page objects.Baidu _ search _ result _ pageimportwer st .薄可乐. usefixtures ) search_Baidu ) @pytest .薄可乐. indexdeftest ) )。 search _ Baidu (: webbaidu (search _ Baidu ).Baidu_login ) loc.Baidu _ data [ ' Baidu ' ] asertloc.Baidu ) . Baidu_Sousu(@pytest .淡可乐. usefixtures )、search_baidu )、pytest .淡可乐. Parametrize )、loc.Baidu data
为什么我的pytest不起作用
1 .检查当前项目的文件夹中是否有__init__.py文件,否则创建新文件。 因为在pytest中,每个文件夹都必须是Pyton Package文件
2 .删除当前项目下的所有__pycache__文件。 这是缓存文件。