Ben tasarım türü uyumsuzlukları ve tanımsız yapılandırma ayarları PHP hataları tetikler bir yapılandırma sınıfın basit bir birim test case (kapsamlı soru here) var. Hata ek olarak, bu yöntem geri çıkılır false
.
Benim test durumda, ben başarısız bir dizi test istiyorum. Sorun ben dönüş değeri basit bir 'assert' yapamaz şudur: bir test çalışması sırasında atılan her hata bir PHPUnit_Framework_Error
istisna haline dönüştürülür.
Şimdi ben bir hata bekliyorum ki PHPUnit farkında yapabilirsiniz:
/**
* @expectedException PHPUnit_Framework_Error
*/
public function testSetInvalidKey()
{
$this->assertEquals(true, conf::set("invalid_key", "12345"));
}
Bu iyi çalışır, ama ne ben anlamıyorum, o işlev içinde herhangi bir ek onaylama not değerlendirilecektir olmasıdır. Başarısız ya da olmaz olsun, PHPUnit istisna gerçekleşmesi için only beklemek ve ne zaman bütün fonksiyonu ile memnun görünüyor.
Zekâ, bu test OK çalışacaktır:
/**
* @expectedException PHPUnit_Framework_Error
*/
public function testSetInvalidKey()
{
// The error will be triggered here
$this->assertEquals(true, conf::set("invalid_key", "12345"));
$this->assertEquals(12345, 67810); // Huh?
$this->assertEquals("abc", "def"); // Huh?
$this->assertEquals(true, false); // Huh?
}
Neden? Bu amaçlanan davranış mı?
Ben sadece farklı fonksiyonlara onaylamaları ayırmak istiyorum farkındayım, ama davranışlarını anlamak istiyorum.