[Python] How do I correctly setup and teardown for my pytest class with tests?

Discussão em 'Python' iniciado por Stack, Setembro 30, 2024.

  1. Stack

    Stack Membro Participativo

    I am using selenium for end to end testing and I can't get how to use setup_class and teardown_class methods.

    I need to set up browser in setup_class method, then perform a bunch of tests defined as class methods and finally quit browser in teardown_class method.

    But logically it seems like a bad solution, because in fact my tests will not work with class, but with object. I pass self param inside every test method, so I can access objects' vars:

    class TestClass:

    def setup_class(cls):
    pass

    def test_buttons(self, data):
    # self.$attribute can be used, but not cls.$attribute?
    pass

    def test_buttons2(self, data):
    # self.$attribute can be used, but not cls.$attribute?
    pass

    def teardown_class(cls):
    pass



    And it even seems not to be correct to create browser instance for class.. It should be created for every object separately, right?

    So, I need to use __init__ and __del__ methods instead of setup_class and teardown_class?

    Continue reading...

Compartilhe esta Página