SORU
10 EKİM 2008, Cuma


PHPUnit - Ünite başlıkları göndermek için gereken öğeleri ile Test

Şu anda PHPUnit ile deneyin ve yazıyorum ne yanında testleri geliştirmek için çalışıyorum, ancak, şu anda Oturum Yöneticisi yazı üzerinde çalışıyorum, ve bunu yaparken sorunlar yaşıyorum...

Oturum yönetimi sınıfı için oluşturucu

private function __construct()
{
	if (!headers_sent())
	{
		session_start();
		self::$session_id = session_id();
	}
}

PHPUnit test başlamadan önce metin gönderir, ancak bu Nesne üzerinde herhangi bir test"," gönderilmiş . HTTP Başlıkları gibi başarısız bir test verir,

CEVAP
10 EKİM 2008, Cuma


Peki, oturum yöneticisi temelde tasarım tarafından bozuldu. Bir şey test edebilmek için, yan etkilerinden ayırmak mümkün olmalıdır. Ne yazık ki, PHP global devlet liberal kullanımı teşvik eder şekilde tasarlanmıştır(, , *, **exitheader2 5* vb. vb.).

Yapılacak en iyi şey, zamanında takas olabilir yan etkileri bir bileşeni, izole etmektir. Bu şekilde, testleri alay nesneleri kullanabilir, canlı kod adaptörleri kullanırken, yan etkileri var gerçekten. Bu iyi kullanıyorsun herhalde hangi tekiz, sevmez. Nesneleri kodunuzu dağıtılmış paylaşılan almak için başka bir mekanizma kullanmak gerekir. Statik bir kayıt ile başlayabilirsiniz, ama eğer öğrenme biraz umurunda bile daha iyi çözümler vardır.

Eğer bunu yapabilirsen, seni her zaman entegrasyon-test yazma seçeneği var. Örn. WebTestCase PHPUnit eşdeğer kullanın.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • PlayStation

    PlayStation

    16 Aralık 2005
  • SerienTrailerMP

    SerienTraile

    7 HAZİRAN 2012
  • UKF Dubstep

    UKF Dubstep

    29 NİSAN 2009