2017-01-13 4 views
0

У меня есть класс, который реализует unittest.TestCase; Я хотел бы знать, когда все тесты были выполнены; и выполнить некоторую операцию.Есть ли способ узнать, прошел ли класс unittest со всеми тестами?

Хотя я не вижу, как я могу получить эту информацию; класс, похоже, не имеет понятия о количестве тестов, или, по крайней мере, мне не удалось выяснить, где эта информация скрыта.

Я хотел бы сделать простую проверку, поэтому я могу запустить другой класс в том же файле, чтобы выполнить некоторые данные анализа и форматирования. Я ищу что-то, что на самом деле невозможно?

ответ

1

Существует специальный метод класса для этого - tearDownClass():

Метод класса вызывается после испытаний в индивидуальном классе закончились.

import unittest 

class MyTestCase(unittest.TestCase): 
    @classmethod 
    def tearDownClass(cls): 
     print("All the tests in this class are done") 

    def test_something(self): 
     self.assertTrue(True) 

    def test_something_else(self): 
     self.assertFalse(False) 
+0

Я вижу, так что есть демонтаж(), вызывается после каждого испытания и teardownclass(), который используется для самого класса; благодаря! –