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

  • 10 Daughters, 2 Sons

    10 Daughters

    10 Mart 2009
  • Flash CS6 Video Tutorials for Beginners (Actionscript 3 Gaming)

    Flash CS6 Vi

    14 EYLÜL 2012
  • TWiT Netcast Network

    TWiT Netcast

    27 EKİM 2005