Test de l'unité

calculation.py


class Cal(object):
    def add_num_and_double(self, x, y):

        if type(x) is not int or type(y) is not int:
            raise ValueError
        result = x + y
        result *= 2
        return result

Tester calcul.py avec unittest

test_calculation.py


import unittest
import calculation

release_name = 'lesson2'

class CalTest(unittest.TestCase):

    #Appelé avant l'exécution du test
    def setUp(self):
        print('set up')
        self.cal = calculation.Cal()

    #Appelé après le test
    def tearDown(self):
        print('clean up')
        del self.cal

    #@unittest.skip('skip')Vous pouvez sauter le test avec, mais cette fois, nous ne l'oublierons pas
    @unittest.skipIf(release_name == 'lesson', 'skip!')
    def test_add_num_and_double(self):#test_Former le nom de la méthode
        #cal = calculation.Cal()
        self.assertEqual(self.cal.add_num_and_double(1, 1), 4)

    #Test d'exception
    def test_add_num_and_double_raise(self):
        #cal = calculation.Cal()
        with self.assertRaises(ValueError):
            self.cal.add_num_and_double('1', '1')

#Non requis pour pycharm
#if __name__ == '__main__':
#    unittest.main()

Vous pouvez voir que la configuration et le démontage sont appelés deux fois chacun.

production


PASSED             [ 50%]set up
clean up
PASSED       [100%]set up
clean up

Recommended Posts

Test de l'unité
liste assertXXX unittest python
Mock urllib2 et unittest