У меня есть родительский класс для всех моих тестов, который унаследован от unittest.TestCase. Он содержит множество глобальных переменных и множество пользовательских функций для создания и удаления пользователей и других объектов.
class AutoTest(unittest.TestCase):
def vars(self):
self.api = "http://"
self.auth = HTTPBasicauth("arr", "yarrr")
def new_user(self):
requests.post(url, json, auth)
return response
""""and so on"""
Проблема в том, что мне нужно подготовить тестовые данные для тестовых наборов, и они должны быть подготовлены один раз для всех тестов в наборе (т.е. тестовый класс).
Насколько я понимаю, для таких случаев используется setUpClass
, но он используется только как метод класса, поэтому все определенные в пользовательских функциях родительского класса, которые абсолютно необходимы для подготовки тестовых данных, становятся не вызываемыми из-за того, что все они методы экземпляра и имеют позиционный аргумент "self".
class TestSomeStuff(AutoTests):
def setUpClass(cls):
*and here is the problem, because none of the AutoTest class functions are available*
Буду признателен за любую помощь / советы.