Yakut dünyasında, TDD çerçeveye yerleştirilmiş aletlerle kolaylaştırılmıştır. Factory Girl, Mocha, rSpec ve diğerleri, geliştiricilerin ihtiyaç duydukları test durumlarını ele alan kolay ve dinamik bir şekilde test oluşturmalarına izin veriyor.
Ben de Drupal'daki TDD araçlarının bulunmamasından dolayı hüsrana uğradım. Onlarla en büyük sorunum, tek bir test yapmak için geçen zamanın miktarı. Gelişim döngüleri, her bir yinelemede 60-90 saniye süren bireysel testlerle yavaşlatılamaz. Testleri hiç yazmak için uğraşmazsanız, tam test paketleri birden fazla saatlik zaman diliminde çalışacaktır.
Bir test yapıldığında her seferinde tam bir db kopyalama yapılması gerektiğinden şüpheleniyorum, ancak yakın bir zamanda söyleyebileceğimden, özellikle de bunu yapmak için DrupalWebTestCase kullanmanız gerekiyorsa, bunun değişmesi muhtemel değildir.
Manuel olarak önyükleme yapan Phactory ve phpunit kullanarak bir çözümü hackledim . Belli ki bazı meselelerle yüzleşip bitmedi, ama oraya varıyor.
Neyse ki çalışmalarımın çoğu arka uç katmanında, bu yüzden DRUPAL_BOOTSTRAP_DATABASE seviyesinde kalabilirim. Ama tam yığına ihtiyacım olacağı daha fazla durum için koşuyorum.
Sonunda, Drupal'daki TDD iyi bir şekilde desteklenmiyor, bu yüzden drupal test çerçevesi dışında çalışmasını sağlamak veya düşük performansa katlanmak için kendiniz yazabilirsiniz.
- GÜNCELLEME -
Phactory ile başarılı bir Drupal entegrasyonu başarıyla kurdum ve şimdi Drupal Web Test Case yerine phpunit ile testlerimi yapıyorum. Bu yüzden mümkün.
İnşallah onu bırakabileceğim bir noktaya geleceğim ve Phactory belgesine dahil olabilirim.
- GÜNCELLEME 2 -
Phactory'yi nasıl kurduğum konusunda doktor https://github.com/trimbletodd/phactory adresindedir .