Solvequill Blog · coding · 7 dk okuma · 30 görüntülenme
Testleri küçük sözler gibi düşün
Yayın tarihi:
İyi bir test davranış hakkında verilmiş küçük bir sözdür. Bu söz bozulursa test düşmeli, uygulama detayı değişirse sessiz kalmalıdır.
Bu yazıyı hızlı bir özet gibi değil, çözüm sırasında karar vermeyi kolaylaştıran küçük bir çalışma notu gibi kullan. Önce fikri oku, sonra örneği kendin durdurup bir satır ilerletmeyi dene; en sonda kontrol listesini gerçek bir soruda uygula.
Ana fikir
Bir normal durum, bir sınır durum ve bir hata durumu ile başla. Her testin adını sade bir cümle gibi yaz.
Buradaki önemli nokta yöntemi ezberlemek değil, yöntemi neyin çağırdığını fark etmektir. Soruda hangi ifade, şekil, birim, değişken veya kod davranışı sana bu yolu seçtirdi? Bunu adlandırabilirsen benzer soruda daha hızlı ve daha sakin ilerlersin.
Kısa örnek
İndirim fonksiyonu için normal fiyatı, sıfır indirimi ve geçersiz negatif fiyatı test et.
1expect(indirimUygula(100, 0.2)).toBe(80);2expect(indirimUygula(100, 0)).toBe(100);3expect(() => indirimUygula(-5, 0.2)).toThrow();Adım adım nasıl yaklaşılır?
- Verilenleri temizce yaz ve birimleri, sembolleri veya değişken adlarını düzelt.
- Sorunun istediği sonuca doğrudan gitmeden önce hangi ara bilginin gerektiğini belirle.
- Her satırdan sonra küçük bir kontrol yap: birimler tutuyor mu, işaret doğru mu, kodda girinti ve kapsam doğru mu?
- Cevabı bulunca ilk soruya geri dön ve sonucun gerçekten sorulan şeye cevap verip vermediğini kontrol et.
Çözerken kontrol et
- Özel implementasyonu değil davranışı test et.
- İnsanın okuyabileceği örnekler kullan.
- Bir bug düzelttiğinde regresyon testi ekle.
Sık yapılan hata
Cümle gibi okunan testlere altı ay sonra güvenmek daha kolaydır.
Bu hatayı yakalamanın en pratik yolu, çözüm bittikten sonra sadece sonucu değil, karar noktalarını da kontrol etmektir. 'Neden bu formül?', 'Neden bu bileşen?', 'Neden bu döngü koşulu?' gibi sorular cevabın doğruluğunu içerik açısından da güçlendirir.
Kendi sorunu açıklamalı videoya dönüştür
Soruyu yaz veya fotoğrafını yükle; Solvequill çözümü adım adım anlatan bir video üretsin.
Solvequill'i aç