Taklitler, Sahte Nesneler ve Kapsam
Birimleri yalıtın ve test ettiklerinizi ölçün.
Taklitler, Sahte Nesneler ve Kapsam, CoddyKit'te ücretsiz bir Dart Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Dart Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Dart Academy kursu toplamda 4 dersten oluşur.
Birimi Yalıtın
Bir birim testi, tek bir parçayı yalıtılmış biçimde kontrol etmelidir. Gerçek veritabanları veya ağlar testleri yavaş ve kararsız hâle getirir; bu yüzden onların yerine başka nesneler kullanırız. 🔌
Test Taklitleri
Bir test taklidi, gerçek bir bağımlılığın yerini alır. Mocks, fakes ve stubs sık kullandığınız yaygın türlerdir.
Fake Nedir
Bir fake, çalışan ancak basitleştirilmiş bir uygulamadır; örneğin gerçek bir veritabanının yerini alan bellek içi bir liste.
class FakeRepo implements Repo {
final _items = <Item>[];
}Mock Nedir
Bir mock, nasıl çağrıldığını kaydeder; böylece yalnızca son değerleri değil, etkileşimleri de doğrulayabilirsiniz.
mockito Paketi
mockito paketi sizin için mock'lar oluşturur. İstediğiniz türü açıklama ile işaretleyin ve onu oluşturmak için build_runner'ı çalıştırın.
@GenerateMocks([Repo])
import 'repo_test.mocks.dart';when ile Sahte Davranış Tanımlama
Bir mock'u yönlendirmek için when kullanın: bu yöntem çağrıldığında şu değeri döndür. Böylece davranış öngörülebilir olur.
when(repo.find(1))
.thenReturn(Item('a'));Çağrıları Doğrulama
Bir yöntemin çağrıldığını ve kaç kez çağrıldığını doğrulamak için verify kullanın. Bu, kodunuzun bağımlılığıyla doğru şekilde iletişim kurduğunu kanıtlar.
verify(repo.save(any)).called(1);Eş Zamanlı Sahte Davranış Tanımlama
Future döndüren yöntemleri, mock'un eş zamanlı bir sonuç döndürebilmesi için thenAnswer ile yönlendirin.
when(api.load())
.thenAnswer((_) async => 'ok');Mock mu Fake mi
Gerçeğe yakın davranışa ihtiyacınız olduğunda fake kullanın; hangi çağrıların gerçekleştiği önemliyse mock kullanın.
Kapsam Ne Anlama Gelir
Kapsam, testlerinizin gerçekte çalıştırdığı satırları ölçer. Yüksek kapsam, ayrıntılı testlere işaret edebilir; ancak doğruluğu asla garanti etmez.
Kapsam Raporu Oluşturma
Testleri kapsam verisi toplayarak çalıştırın; ardından verileri okuyabileceğiniz veya bir araca yükleyebileceğiniz bir rapora dönüştürün.
dart test --coverage=coverageHızlı Kontrol
Çağrıları kaydederek onları doğrulamanızı sağlayan taklit hangisidir?
Özet
Birimleri fakes ve mocks ile yalıttınız, when ile sahte davranış tanımladınız, çağrıları doğruladınız ve kapsamı ölçtünüz. Hızlı, odaklı ve güvenilir testler. 🎯
Sıkça Sorulan Sorular
“Taklitler, Sahte Nesneler ve Kapsam” dersi ücretsiz mi?
Evet — “Taklitler, Sahte Nesneler ve Kapsam” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Dart Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Dart Academy kursu toplamda 4 dersten oluşur.
“Taklitler, Sahte Nesneler ve Kapsam” dersinde ne öğreneceğim?
Birimleri yalıtın ve test ettiklerinizi ölçün. Dart Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Dart Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Dart Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.
“Taklitler, Sahte Nesneler ve Kapsam” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Dart Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Dart Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- İlk test ve expect'iniz
- group, setUp ve tearDown
- async Kodunu ve Akışları test Etme
- Taklitler, Sahte Nesneler ve Kapsam