Perl birim testi ile kullanmak üzere sahte bir dosya sistemini simüle etmemi sağlayan bir yöntem veya modül var mı?Perl birim testi için sahte dosya sistemi
Birim testlerimde çeşitli Test::*
ve Test::Mock*
modüllerini kullanıyorum, ancak bazen bir dosya sistemini fake edebilmeyi isterim. Basit bir örnek (ve minimum gereksinim), sonucu -r
veya -f
dosya test operatörlerinden alır, böylece dosya testlerini gerçekleştiren nesneleri veya modülleri çağırdığımda sonucu daha kolay kontrol edebilirim.
Geçici dosyalar oluşturma veya dosya işlevlerini kendi işlevlerinde alay etme gibi sarmalama gibi, bu sorunu çözmenin her türlü yolu olduğunu biliyorum, ancak bazen Perl'e sahip olsaydım bazen hoş olurdu bana yalan ... Yani kod yeniden yazma öneririz çözümler ;-) gerekli değildir test edilen
Güncelleme:
daha böylece kod yeniden yazma, sadece bulundu ve this SO question okumak ettikten sonra test edilebilir daha hassas bir seçenek gibi görünüyor. Yine de, parmaklar ...
Bağlantılar için teşekkürler. Ben Filesys :: Virtual ile ne yapacağımı bilmediğimi itiraf ediyorum - başka bir şey için bir temel sınıf gibi görünüyor. Geçmişte nasıl kullandığını biraz açabilir misin lütfen? – Mike
@Mike, üzgünüm, bunu gerçekten bağlamış olmalıyım: [Filesys :: Virtual :: Plain] (http://search.cpan.org/perldoc?Filesys::Virtual::Plain). Kutudan kullanıma hazır olmak çok daha yakın. – Ashley
Teşekkürler - Ben de bulmayı buldum ve iyi bir olasılık gibi görünüyor. Henüz kontrol etme şansım olmadı, ama yakında bunu yapmayı umuyoruz. – Mike