Phpunit dosya isimleri sözleşmeler

2 Cevap php

Ben sadece bazı mevcut kod phpunit denemek başlıyorum. Kullandığımız adlandırma kuralı Sınıfım sınıfı MyClass.class.php olması gerektiğidir. PHPUnit dosya MyClass.php denilen gerektiğini gerektirecek gibi görünüyor.

Bu etrafında herhangi bir yolu var mı?

Bir iskelet test sınıfı oluşturmak için çalışırken bunu fark ettim:

phpunit --skeleton-test MyClass.class

PHPUnit 3.3.4 by Sebastian Bergmann.

Could not find class "MyClass.class" in "/home/jd/skeleton/classes/MyClass.class.php".
Fatal error: Call to a member function getOutClassName() on a non-object in /usr/share/php/PHPUnit/TextUI/Command.php on line 470

2 Cevap

Onun değil bir gereklilik, onun sadece assumptive. Kendi test durumlarda yazabilirsiniz.

İskelet sadece bir mock-up birini sınıflar kukla işlevleri için tüm kukla fonksiyonları yapar "kolay yolu" yapar.

Ayrıca,

phpunit --skeleton-test MyClass  MyClass.class.php

Ne istediğinizi yapabilir.

   Usage: phpunit [switches] UnitTest [UnitTest.php]
       phpunit [switches] <directory>

--skeleton-class         Generate Unit class for UnitTest in UnitTest.php.
--skeleton-test          Generate UnitTest class for Unit in Unit.php.

Eğer sınıf içinde ne dosyayı söyleyin yoksa böylece muhakeme yaparak, sınıf içinde ne dosyayı söyleyin yaparsanız, bu alışkanlık sanırım, sanırım çalışacağız.

Ben bir iskelet için oluşturulan sınıf alanlı bir benzer bir sorunla karşı karşıya koştu. Ben komut satırından phpunit 3.5.6 kullanıyorum. Phpunit belgeler örnek benim için işe yaramadı ve bu yüzden ben burada paylaşmak düşündüm çevrimiçi yanıt bulamadı. Eğer sınıf Foo dizinde iç / benim / dir olduğunu varsayalım ve tek bir dosyada foo.php bildirilen, o yüzden sınıf dosyanın tam yoludur / benim / dir / foo.php

Ayrıca aşağıdaki gibi Foo ilan olduğunu varsayalım:

<?php

namespace my\space;
class Foo
{
    ...
}

Ben foo.php bulunduğu ve sonra aşağıdaki komutu koştu dizinde emin yapılmış bir test iskelet oluşturmak amacıyla:

user[/my/dir]$ phpunit --skeleton-test my\\dir\\Foo Foo.php

Bu oluşturmak için benim iskeleti var. Phpunit dokümantasyon ad bahseder ama sadece tek bir ters eğik gösterdiği gibi anahtar ters eğik çizgi kaçan. Bu kimse yardımcı olur umarım.