Herkese merhaba,

Projelerimi her zaman namespace mantığı çerçevesinde geliştirmekteyim. Bir proje geliştirirken neredeyse her metod için testler yazıyoruz. Bazen bu testler çok karmaşık oluyor. Şu SQL sorgusu şöyle mi, şu veri şöyle geldi mi, şu tarih bilgisinin formatı doğru mu falan filan. Daha sonra kendisi için karmaşık tesler yazılan bir metodda ufak bir değişiklik yapmak istiyoruz fakat değişiklik ne kadar küçük olursa olsun onunla ilgili testlerde büyük değişiklikler yapmak gerekebiliyor. Bu da vakit kaybına neden oluyor.

Ben ne üniversitede ne de başka herhangi bir eğitim kurumunda TDD eğitimi almadım. Piyasada kod yazarken kendi imkanlarımla TDD öğrendim ve bunu bildiğim tüm dillerde uyguluyorum. Fakat özellikle PHP için test yazmak çok zor oluyor. PHP'nin kendi class yada fonksiyonları test yazmayı ve değişiklik yapmayı çok zorlaştırıyor. Bazen doğal fonksiyonlar için wrapper class yazmak zorunda kalıyorum. Hem TDD hem geliştirilebilirlik için kullandığınız yöntemler nelerdir? Framework kullanmadan geliştirilen bir projede geliştirilebilirlik ve TDD için uygulanan en iyi yöntem nelerdir? Yada hangi frameworkü kullanmam gerekir? Şirkette işler hep acil oluyor ve framework öğrenmeye pek vaktim olmuyor. Benim durumumu göz önünde bulundurursak hangi frameworkü öğrenmem gerekir? Codeigniter biliyorum ama bu test yazmak için pek iyi bir fw değil. Zend çok karışık. Symphony iyi gibi ama onunda mantığı biraz karışık. Kararsız kaldım. Test yazmasam hata durumunda hatayı bulmak zorlaşıyor. Test yazsam işler yavaş bitiyor. Vallahi kafam karıştı. Tecrübeli abilerimden bana yol göstermesini istiyorum.

Herkese iyi çalışmalar...

soruldu: 07 Kas '15, 04:42

kodmanyagha's gravatar image

kodmanyagha
3.1k132852
cevap kabul oranı: 15%

değiştirildi: 07 Kas '15, 04:44

1

C#'ta static metod ve sınıfların mocklanması içinde ayrı bir takla atılması yada paralı kütüphanelere muhtaç edilmesinide konuya ekleyebiliriz.

(11 Kas '15, 01:37) Turgay Can Turgay%20Can's gravatar image

Nesne yönelimli dillerin hepsinde var bu sorun malesef. Bu yüzden örnein javada static method yerine Singleton Design Pattern kullanmayı önerilir. Aynı şey Csharp içinde geçerli.

(23 Kas '15, 04:53) kodmanyagha kodmanyagha's gravatar image

Her Metoda Test yazmak yerine Kara Kutu Testleri yazabilirsiniz.

(25 Kas '15, 03:14) Fatih Aşlamacı Fatih%20A%C5%9Flamac%C4%B1's gravatar image

Belkide ben biraz fazla takıntılıyım. Her metoda test yazınca herşeyin daha iyi olacağını düşünüyorum. Bu yanlış olabilir. Bazı yerlerde kara kutu testleri yazmak da yeterli olabilir. Düşünmek lazım. Bunu hatırlattığınız iyi oldu. Teşekkürler...

(25 Kas '15, 03:37) kodmanyagha kodmanyagha's gravatar image

Ben en iyi test desteğini ruby on railste gördüm. Eğer öğrenebilirsen işine yarayacağını düşünüyorum. Eğer biraz daha vaktin varsa arka planı django ile yapıp ön yüzü angular.js ile de yapabilirsin.

permanent link

cevaplandı: 10 Kas '15, 23:40

Bora's gravatar image

Bora
1594612
cevap kabul oranı: 0%

Şirkette projeler php ve android (java) olduğu için farklı bir dil öğrenmek şimdilik mümkün değil. Php güzel bir dil ama bazen beni çileden çıkarıyor.

(11 Kas '15, 03:50) kodmanyagha kodmanyagha's gravatar image
Cevabınız
toggle preview

Bu soruyu takip et

E-Posta üzerinden:

Üyelik girişi yaptıktan sonra abonelik işlemlerini yapabilirsiniz

RSS üzerinden:

Cevaplar

Cevaplar ve Yorumlar

Yazı Formatlama

  • *italic* ya da _italic_
  • **bold** ya da __bold__
  • link:[text](http://url.com/ "başlık")
  • resim?![alt text](/path/img.jpg "başlık")
  • liste: 1. Foo 2. Bar
  • temel HTML etiketleri de kullanılabilir

Bu sorunun etiketleri:

×168
×7
×1

Soruldu: 07 Kas '15, 04:42

Görüntüleme: 409 kez

Son güncelleme: 25 Kas '15, 03:37

powered by BitNami OSQA