2010-09-24 15 views
22

PHPUnit'te tek bir birim testi çalıştırdığımda, bir kod kapsamı raporu da oluşturulur. İşyerinde eski bir bilgisayarım var ve ihtiyacım olmadığında kod kapsamını devre dışı bırakabilirsem, bu CPU'ma daha az zorlanırdı.Tek bir test için PHPUnit'te kod kapsamını devre dışı bırakmanın bir yolu var mı?

Kod kapsamı sınama temelinde devre dışı bırakmanın bir yolu var mı? Bunu yapacak herhangi bir komut satırı anahtarı bulamadım.

+0

XML yapılandırmasında bunu yapmayı denediniz mi? –

cevap

22

yapıyor, sonra ondan <logging> dörtlük kaldırarak, sizin phpunit.xml bir kopyasını yapma konusunda nasıl bu yana

phpunit --configuration new.xml 
+0

Vay, bunun o kadar basit olduğunu anlamadım. Ben tüm paketi çalıştırırken tek bir test çalıştırırken farklı bir yapılandırma dosyası kullanabilirim sanırım. –

+3

xml dosyasını yalnızca ile eşleştirmeyi bitirdim. Artık şimşek hızında çalışıyor. Bunu daha önce tanıyor olsaydım! –

+0

'phpunit-FAST.xml' yapılandırmasıyla PHPunit çalıştıran bir kabuk betiğim var - kod kapsamı yapmıyor ve ayrıca kaynağında '@ groupname' ile işaretlenmiş bazı büyük testleri hariç tutuyor. Testlerimin çoğunu 2 saniyede çalıştırıyor. Kapsama ve diğer tüm testler de, 2.5minutes. –

30

google üst sonuçlarından biridir, bunu işaret etmek mantıklı düşünmek sürüm 4.8'den beri PHPUnit şimdi xml yapılandırmasını geçersiz kılmak için --no-coverage seçeneğini desteklemektedir.

https://github.com/sebastianbergmann/phpunit/blob/master/ChangeLog-4.8.md

+1

Bu kabul edilen cevap – OnIIcE

+0

Hayır olmalı, bu kabul edilen cevap olmamalı. Soru, "tek bir test için PHPUnit'te kod kapsamını devre dışı bırakmanın bir yolu" ve tüm testlerin tek bir koşulu için kod kapsamını devre dışı bırakmamaktı. –

+1

@SebastianBergmann Soru, kafa karıştırıcıdır çünkü eski bir bilgisayarı olduğu için gerekmediğinde tek bir test için kod kapsamını devre dışı bırakmak istediğini belirtmektedir. Bir komut satırı da belirtilmiştir. Ben açık değildi ama fikir tek bir test çalıştırırken ''no-kapsama '' kullanmaktır (kullanıcının yaptığını farz ettim) –

1

Sen @coversNothing ile bir test sınıfı veya test yöntemini açıklama ekleyebilirsiniz. Daha sonra test (ler), kod kapsamı raporuna katkıda bulunmaz. Bununla birlikte, kod kapsama verileri hala toplanacaktır (yürütmeyi yavaşlatma). Bunu gelecekte optimize etmeyi planlıyorum.

İlgili konular