im работает с pytest право знать. Моя проблема в том, что мне нужно использовать тот же объект, сгенерированный в одном файле test_file1.py, в другом файле test_file2.py, который находится в двух разных каталогах и вызывается отдельно от другого.Использование одного и того же объекта из разных тестовых файлов PyTest?
Heres код:
$ testhandler.py
# Starts the first testcases
returnValue = pytest.main(["-x", "--alluredir=%s" % test1_path, "--junitxml=%s" % test1_path+"\\JunitOut_test1.xml", test_file1])
# Starts the second testcases
pytest.main(["--alluredir=%s" % test2_path, "--junitxml=%s" % test2_path+"\\JunitOut_test2.xml", test_file2])
Как вы можете видеть, что первый из них является критическим, поэтому я начинаю его с -x для прерывания, если есть ошибка. И --alluredir удаляет целевой каталог перед началом новых тестов. Вот почему я решил вызвать pytest два раза в testhandler.py (moreoften в будущем возможно)
Здесь есть являются test_files:
$ test1_directory/test_file1.py
@pytest.fixture(scope='session')
def object():
# Generate reusable object from another file
def test_use_object(object):
# use the object generated above
Обратите внимание, что объект на самом деле класс с параметрами и функциями.
$ test2_directory/test_file2.py
def test_use_object_from_file1():
# reuse the object
Я попытался сгенерировать объект в файле testhandler.py и импортировать его в оба тестовых файла. Проблема заключалась в том, что объект не был точно таким же, как в testhandler.py или test_file1.py.
Вопрос теперь, если есть возможность использовать excatly один сгенерированный объект. Может быть, с глобальным conftest.py или что-то в этом роде.
Благодарим вас за внимание!