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

  • andony5589

    andony5589

    7 Aralık 2011
  • KSI

    KSI

    25 Temmuz 2009
  • Slave Boy Films - Fandom from a Galaxy Far Far Away

    Slave Boy Fi

    12 HAZİRAN 2009