tl.testing

Yazılım ekran görüntüsü:
tl.testing
Yazılım detaylar:
Versiyon: 0.5
Qayıt: 15 Apr 15
Geliştirici: Thomas Lotze
Lisans: Ücretsiz
Popülerlik: 63

Rating: nan/5 (Total Votes: 0)

.

tl.testing çeşitli testler yazarken kullanılabilecek programları & nbsp sunar; Python sürümleri 2.6 ve 2.7 ile uyumludur.
dizinleri ve dosyaları kum havuzları
Dizinleri ve dosyaları değiştirir kodu test ederken, kolayca dizin ve dosyaları bir örnek ağacı oluşturmak ve kontrol edebilmek için yararlıdır. tl.testing.fs modülü, bir metinsel açıklamasından bir ağacı oluşturma aynı formatta listesi ve kendisi sonra temizlemek için destek sağlar.
Bir doktor testinde, bu tesisler bir dizin, bir dosya ve sembolik bir bağlantı oluşturmak ve listelemek için bu gibi kullanılabilir olabilir:
>>> Tl.testing.fs ithalat new_sandbox gelen, ls
>>> New_sandbox ("" ​​"
... D foo
... F foo / bar asdf
... L baz -> foo / bar
... "" ")
>>> Ls ()
l baz -> foo / bar
d foo
f foo / bar asdf
Kurmak ve dosya sistemi kum havuzları kullanan testler yıkmak için nasıl dahil olmak üzere diğer tavsiyesi için kaynak kodu ile bulunan dosya fs.txt bakın.
Yükleme çağrılabilir komut
Bir test etmek isteyebilirsiniz bazı işlevler böyle bir çağrı veya bir metin editörü olarak dış programlar kullanır. tl.testing.script modülü kodu onları bulacaksınız test edilecek yerlerde basit alay komut yüklemek programlar sağlar. Onlar Python kodu bir dize alır ve test bu maç için Python yolunu ayarlar ve kod çalışan bir sarıcı betik.
Bu tür bir sahte komut bir doc testinde kullanılan olabilir nasıl:
>>> Tl.testing.script ithalat yüklemek
>>> Komut_dosyası_yolu = ("print 'Basit bir komut.") Install
>>> Print açık (komut_dosyası_yolu) .read ()
#! ...

import sys
sys.path [:] = [...]

Baskı 'Basit bir script.'
>>> Import subprocess
>>> Alt = subprocess.Popen (komut_dosyası_yolu, kabuk = true, stdout = subprocess.PIPE)
>>> Stdout stderr = sub.communicate ()
>>> Print stdout
Bir basit bir script.
Sahte komut dosyalarını kullanarak daha olanakları nasıl yüklemek ve erişim alay komut yanı sıra yıkmak için nasıl testler için kaynak kodu ile bulunan dosya Script.txt bakın.
Doktor-test Kahire yüzeylerin grafiksel içeriği
O, Python kodu iki cairo yüzeylerin içeriğini karşılaştırmak için düz ileri olsa da grafik işleme doc testleri ötesinde. Ancak, manuel paket doğal bir şekilde doc testleri ile karıştırmak için izin verirken, bir metin belgesinden daha genel test durumları ayıklamak için kullanılır.
tl.testing.cairo modülü yeniden metin rakamlar olarak formüle grafik testleri yürütmek için manuel kullanan bir test paketi fabrikası sağlar. Böyle bir rakam yazısı olan değeri kahire yüzey değişmez Python ifadesi olması gerekiyordu, ve görüntü testi beklentisi olarak kullanılır.
Bu yüzey bir doc testinde beklenen görüntüye göre olabilir nasıl:
>>> Import cairo
>>> Pkg_resources ithalat resource_filename gelen
>>> Resim = resource_filename ('tl.testing', 'testimages / correct.png')
.. :: Şekil tl / test / testimages / correct.png
& Nbsp; `` cairo.ImageSurface.create_from_png (resim) ``
Daha fazla öneri ve olası test çıkışı belgeler için kaynak kodu ile bulunan dosya cairo.txt bakın.
test kodu parçacıkları çalışma
Standart dizge sınıf ana olandan başka bir iş parçacığı meydana gelen hataları ve arızaları toplamak değildir. tl.testing.thread modülü iplik sınıfları sağlar ve bir ThreadAwareTestCase sınıfı sadece, yanı sıra iş parçacığı ile anlaşma testler için diğer bazı kolaylıklar sağlamak için: Test çıkışı ile yazdırılan gelen parçacığı beklenen işlenmeyen istisna önlenmesi, raporlama konuları geride bıraktı Bir testte, bir cini parçacığı kod çalıştıran konuları katılarak ve sayarak konuları testin çalışma zamanında başladı:
>>> Import süresi
>>> Import tl.testing.thread
>>> Sınıf SampleTest (tl.testing.thread.ThreadAwareTestCase):
...
... Def (öz) test_error_in_thread_should_be_reported:
... Tl.testing.thread.ThreadJoiner (1):
... Self.run_in_thread (lamda: 1/0)
...
... Def test_active_count_should_count_only_new_threads (öz):
... Tl.testing.thread.ThreadJoiner (1):
... Self.run_in_thread (lambda time.sleep (0.1))
... Self.assertEqual (1, self.active_count ())
... Self.assertEqual (0, self.active_count ())
>>> Import unittest
>>> Çalışma (unittest.makeSuite (SampleTest))
================================================== ====================
HATA: test_error_in_thread_should_be_reported (__builtin __ SampleTest.)
-------------------------------------------------- --------------------
Traceback (en son çağrı son):
& Nbsp; ...
ZeroDivisionError: tamsayı bölme veya sıfıra modül
-------------------------------------------------- --------------------
N.NNNs 2 testleri Ran
BAŞARISIZ (hatalar = 1)
ThreadAwareTestCase sınıfının daha detaylı bilgi için kaynak kodu ile buldu thread.txt dosyasına bakın.
manuel kullanmak test paketleri oluşturma
Manuel standart Doctestler ek olarak bazı güçlü özellikler sunar gibi, manuel testi suit biraz farklı standart olanlardan ayarlanır. tl.testing.doctest modül, aralarında önerilmemektedir kullanılarak yapılması için kullanılan dipnot yorumlama yeteneği standart gibi kullanılan ancak manuel kullanarak bir test paketi oluşturur ve manuel ile ilgili bazı ek yapılandırma sağlayan edilebilir bir DocFileSuite fabrikası uygular zope.testing.doctest:
>>> Sample_txt = yazma ('örnek.txt', "" "
... [#footnote] _
... >>> X
... 1
...
... .. [#footnote]
... >>> X = 1
... "" ")
>>> Tl.testing.doctest ithalat DocFileSuite gelen
>>> Çalışma (DocFileSuite (sample_txt, dipnotlar = true))
-------------------------------------------------- --------------------
N.NNNs 1 testi Ran
TAMAM
>>> Sample_txt = yazma ('örnek.txt', "" "
... .. Kod bloğu :: piton
..., X = 1
...
... >>> X
... 1
... "" ")
>>> Import manuel.codeblock
>>> Çalışma (DocFileSuite (sample_txt, manuel manuel.codeblock.Manuel = ()))
-------------------------------------------------- --------------------
N.NNNs 1 testi Ran
Tamam

Gereksinimler :

  • Python

Benzer yazılım

robotframework
robotframework

17 Feb 15

AutobahnTestSuite
AutobahnTestSuite

20 Feb 15

noseonalchemist
noseonalchemist

15 Apr 15

Geliştirici Diğer yazılım Thomas Lotze

Ophelia
Ophelia

15 Apr 15

tl.pkg
tl.pkg

15 Apr 15

Yorumlar tl.testing

Yorum Bulunamadı
Yorum eklemek
Görüntülerde açın!