SORU
28 AĞUSTOS 2008, PERŞEMBE


Nasıl python ile dinamik () parametrize birim testleri oluşturmak için?

Test verileri bir çeşit var ve her madde için bir birim test oluşturmak istiyor. İlk fikrim bu şekilde oldu:

import unittest

l = [["foo", "a", "a",], ["bar", "a", "b"], ["lee", "b", "b"]]

class TestSequence(unittest.TestCase):
    def testsample(self):
        for name, a,b in l:
            print "test", name
            self.assertEqual(a,b)

if __name__ == '__main__':
    unittest.main()

Bu olumsuz bir test veri işleme. Anında her madde için bir test oluşturmak istiyorum. Herhangi bir öneriniz var mı?

CEVAP
28 AĞUSTOS 2008, PERŞEMBE


böyle bir şey kullanıyorum:

import unittest

l = [["foo", "a", "a",], ["bar", "a", "b"], ["lee", "b", "b"]]

class TestSequense(unittest.TestCase):
    pass

def test_generator(a, b):
    def test(self):
        self.assertEqual(a,b)
    return test

if __name__ == '__main__':
    for t in l:
        test_name = 'test_%s' % t[0]
        test = test_generator(t[1], t[2])
        setattr(TestSequense, test_name, test)
    unittest.main()

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ICON

    ICON

    19 EKİM 2011
  • Plugable

    Plugable

    19 Mayıs 2010
  • The10HourMan

    The10HourMan

    28 EYLÜL 2012