Unittest réglage/démontage pour plusieurs tests

Est-il une fonction qui est déclenché au début/à la fin d'un scénario de tests? Les fonctions de l'installation et le démontage sont licenciés avant/après chaque test.

En général, je voudrais avoir ceci:

class TestSequenceFunctions(unittest.TestCase):

    def setUpScenario(self):
        start() #launched at the beginning, once

    def test_choice(self):
        element = random.choice(self.seq)
        self.assertTrue(element in self.seq)

    def test_sample(self):
        with self.assertRaises(ValueError):
            random.sample(self.seq, 20)
        for element in random.sample(self.seq, 5):
            self.assertTrue(element in self.seq)

    def tearDownScenario(self):
        end() #launched at the end, once

Pour l'instant, ces l'installation et le démontage sont des tests unitaires et de se répandre dans tous mes scénarios (contenant de nombreux tests), est le premier test, l'autre est le dernier test.

  • Quelle version? Le module unittest a été élargi pour inclure un module_setup et module_teardown en Python 2.7.
  • 2.7 également introduit setUpClass() et tearDownClass() classmethods, ce qui permet d'avoir plusieurs classes dans le même fichier avec leurs propres par suite de l'installation et le démontage.
InformationsquelleAutor swan | 2011-12-05