Birim test dosya işlemleri - sahte dizin yapısını korumak için nerede?

1 Cevap php

Ben hala Birim testi için yeni kulüpler ve özellikle PHPUnit test çerçevesi olarak.

Ben bir kaynak yükleyici sınıf için bir birim test yapıyorum varsayalım. Kaynaklar iki dizin (küresel ve bir kullanıcı özel bir) yüklemek için sınıf arar.

Sınıfını test etmek için, bazı kaynak dosyaları içeren bir mock test dizini kurmak istiyoruz. Ben (suite dağıtılan alacak bir web uygulamasının bir parçasıdır.) Test paketi içinde bir yerde alay dizini koymak istiyorum

here belirtildiği gibi dosya sistemini kullanarak oluşan bir PHPUnit test paketi bağlamında bu test dizini koymak için nerede bir kuralı var mı?

Geçerli test paketi ilgili bir yol, yani tam yerini belirtmek zorunda kalmadan bir birim test içinde böyle bir sahte dizine erişmek için (bu testi çalıştırır, örneğin PHPUnit tarafından tanımlanan bir sabit) bir yolu var mı? Veya sadece dirname(__FILE__) kullanmak ve mutlak bir yol oluştururlar mı?

1 Cevap

Kaynak yükleyici dizinleri dosyaları arar ve bu dizinleri ile yükleyicilerin doğru etkileşimini test etmek istediğiniz beri gerektiğini mock the filesystem. Gerçek bir dizin ile test ederseniz, test sonucunu etkileyebilecek bu dizinlere dışında değişiklik riske vardır. VFS kullanarak da much hızlıdır.