pytest第二版 进阶学习
生活随笔
收集整理的這篇文章主要介紹了
pytest第二版 进阶学习
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
pytest 框架實現一些前后置(固件,夾具)的處理,常用三種。
一、setup/teardown,setup_class/teardown_class
為什么需要這些功能
比如: web自動化執行用例之前, 需要打開瀏覽器, 執行之后需要關閉瀏覽器
二、使用fixture裝飾器來實現部分用例的前后置
裝飾器
@pytest.fixture(scope=’’, name=’’, params=’’, autouse=’’, ids=’’)
執行結果
src/html_web/test_fixture.py::TestFixture::test_fixture[cl] 這是前后置的方法,可以實現部分以及全部用例的前后置 這是一個test_fixture的測試函數 PASSED只是后置的方法src/html_web/test_fixture.py::TestFixture::test_fixture[zzd] 這是前后置的方法,可以實現部分以及全部用例的前后置 這是一個test_fixture的測試函數 PASSED只是后置的方法src/html_web/test_fixture.py::TestFixture::test_fixture[llj] 這是前后置的方法,可以實現部分以及全部用例的前后置 這是一個test_fixture的測試函數 PASSED只是后置的方法src/html_web/test_fixture.py::test_fixture_001[cl] 這是前后置的方法,可以實現部分以及全部用例的前后置 這是一個test_fixture_001的測試函數 <function my_fixture_01 at 0x7fb1d92e9170> PASSED只是后置的方法src/html_web/test_fixture.py::test_fixture_001[zzd] 這是前后置的方法,可以實現部分以及全部用例的前后置 這是一個test_fixture_001的測試函數 <function my_fixture_01 at 0x7fb1d92e9170> PASSED只是后置的方法src/html_web/test_fixture.py::test_fixture_001[llj] 這是前后置的方法,可以實現部分以及全部用例的前后置 這是一個test_fixture_001的測試函數 <function my_fixture_01 at 0x7fb1d92e9170> PASSED只是后置的方法=============================================================== 6 passed, 9 deselected in 0.04s ===============================================================三、通過conftest.py和@pytest.fixture()結合使用實現全局的前置應用(比如:項目的全局登陸,模塊的全局處理)
總結: setup/teardown setup_class/teardown_clss它是作用于所有的用例或者類
@pytest.fixture() 它的作用是既可以部分也可以全部前后置
conftest.py 和 @pytest.fixtrue()結合使用,作用于全局的前后置
四、pytest結合allure-pytest插件生成allure測試報告
https:github.com/allure-framework/allure2/releases
path路徑配置
驗證: allure -version
問題: dos可以驗證但是pycharm驗證失敗,需重啟pycharm
總結
以上是生活随笔為你收集整理的pytest第二版 进阶学习的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pytest第一版 入门学习
- 下一篇: python判断字符是否为数字或字母