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

  • jkimisyellow

    jkimisyellow

    6 Mayıs 2009
  • thepoke64738

    thepoke64738

    17 HAZİRAN 2011
  • TheScorpioTechno

    TheScorpioTe

    15 Aralık 2010