Python Сбой UnitTest, когда я попытался запустить все файлы unittest одной командой - PullRequest
0 голосов
/ 30 января 2020

Я делаю тесты конечной точки и проверяю, введены ли заголовки. У меня есть несколько файлов unittest, таких как: структура фиктивной папки

tests / test1 / one_test.py выглядит так:

class HeaderTest(unittest.TestCase):

def setUp(self):
    self.__headers = {
        "Content-Type": "application/json",
        "required1": "123",
        "required2": "3213",
        "Content-Language": "en"
    }
    self.__params = {
        "id": "someId"
    }
    self.__link = "someLink"


def test_not_missing(self):
    response = requests.get(
    self.__link,
    params=self.__params,
    headers=self.__headers)    

    self.assertEqual(200,response.status_code)

tests / test1 / two_test.py выглядит следующим образом:

class HeaderTest(unittest.TestCase):

def setUp(self):
    self.__headers = {
        "Content-Type": "application/json",

        "required2": "3213",
        "Content-Language": "en"
    }
    self.__params = {
        "id": "someId"
    }
    self.__link = "someLink"


def test_without_required1(self):
    response = requests.get(
    self.__link,
    params=self.__params,
    headers=self.__headers)    

    self.assertEqual(400,response.status_code)

Я пытаюсь выполнить все эти юнит-тесты одной командой: python -m unittest Discover -s tests -p '* _test.py' Когда я делаю это one_test.py, он проходит тест, который я ожидал, но two_test.py он не проходит тест, он возвращает 200, что равно one_test.py response.status_code. Это должно быть 400. Однако, когда я запускаю этот файл индивидуально. с помощью этой команды: python -m unittest two_test Это работа, как я и ожидал. В чем проблема? Я использовал метод tearDown. Я попытался self.__headers = None после строки ответа, но все еще не работал. Любая помощь будет оценена.

...