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

  • PaulGBelliveau

    PaulGBellive

    5 Mart 2009
  • Showtime

    Showtime

    21 HAZİRAN 2006
  • Vladimir Jenko

    Vladimir Jen

    1 Mart 2010