У меня есть один класс, у которого есть много тестовых случаев, где каждый тестовый случай определяется как методы. Теперь я должен выбрать конкретные c тестовые случаи и запустить его. Моя идея состоит в том, чтобы создать один отдельный метод. Используя условие if else, я бы хотел вызвать конкретный метод / контрольный пример. В приведенном ниже коде def main () - это основная функция, а def test_login () - мой тестовый пример. Как я могу достичь этого? Кроме того, имя Testscenario происходит из другого файла pyhton.
import time
import pytest
from Utilities.Baseclass import Baseclass
from pageObjects.Login import login_main
from TestData.Practice import Testing
class Test_spotsearch(Baseclass):
def main(self):
if Testscenario == 'Spotsearch_login':
test_login()
elif Testscenario == 'Spotsearch_registration':
test_registration()
def test_login(self, getData):
homePage = login_main(self.driver)
homePage.home_login().click()
time.sleep(2)
username = login_main(self.driver)
username.username_login().send_keys(getData["Username"])
password = login_main(self.driver)
password.password_login().send_keys(getData["Password"])
submit = login_main(self.driver)
submit.submit_login().click()
time.sleep(3)
def test_registration(self):
regpage = reg_main(self.driver)
regpage.reg_login().click()
time.sleep(2)
username = login_main(self.driver)
@pytest.fixture(params=Testing.getExcelData('test_One'))
def getData(self, request):
return request.param
@pytest.mark.parametrize('getData', 'Testscenario', indirect=True)
def test_One(self, getData):
pass