Yapay zekadan makale özeti
- Kısa
- Ayrıntılı
- Bu video, bir Flutter programlama eğitim içeriğidir. Eğitmen, Flutter uygulamalarında test kavramını ve test çeşitlerini adım adım anlatmaktadır.
- Video, Flutter'da test kavramının üç temel aşamasını (unit test, widget test ve integration test) açıklayarak başlıyor ve ardından test komutlarının nasıl kullanılacağını gösteriyor. Eğitmen, terminal üzerinden test komutlarını uygulamalı olarak anlatırken, "pump", "find", "expect" gibi temel kavramları ve test koveraj analizini (flutter test -coverage) detaylı şekilde açıklıyor.
- Eğitim boyunca bir sayaç uygulaması üzerinden widget testi ve fonksiyon testi örnekleri üzerinden test kavramları gösterilmekte, test sonuçlarının nasıl yorumlanacağı ve projenin genel test kapsamının nasıl kontrol edileceği anlatılmaktadır. Ayrıca el_kol kütüphanesinin test koveraj analizinde nasıl kullanılacağı da gösterilmektedir.
- Flutter'da Test Kavramı
- Flutter'da test kavramı, yazılan uygulamayı nasıl test edebileceğimiz ve test çeşitlerini ele alacak.
- Test etmek, uygulamanın büyük önem taşıdığı bir kısmıdır ve bazen bazı kısımları atlayabiliriz.
- Flutter'da üç ayrı test aşaması vardır: unit test, widget test ve integration test.
- 01:01Test Çeşitleri
- Unit test, yazılan metne göre fonksiyonları, bir metodu veya bir sınıfı test etmektir.
- Widget test, widget kısımlarını test etmektir.
- Integration test, komple bütün uygulamayı test etmektir.
- 03:11Test Dosyaları ve Kullanımı
- Test klasörünün altına girerek widget testlerine erişilebilir.
- Flutter 6 test paketi otomatik olarak eklenmiş bir şekilde geliyor, test etmek için ekstra bir şey eklemenize gerek yok.
- Test dosyalarında widget alt test şeklinde hazır bir test dosyası bulunur ve başka sayfalar için de benzer şekilde test dosyaları oluşturulabilir.
- 05:33Widget Test Yapısı
- Widget testinde "test widget" yazarak açıklama yazılır ve widget tester'dan bir tester değişkeni tanımlanır.
- "Pump widget" ile test edilecek widget'ın en başı çağrılır ve "expect" fonksiyonuyla test yapılır.
- "Find" metodu ile widget'ın içindeki veriler kontrol edilir ve beklenen değerler test edilir.
- 08:34Test Metodları
- "Given" metodu ile test edilecek durum belirlenir ve "tap" ile tıklama özelliği gerçekleştirilir.
- "Pump" metodu ile uygulama yenilenir ve güncellenir.
- "Expect" metodu ile beklenen değerler kontrol edilir ve "find nothing" ile belirli bir widget'ın bulunmaması test edilir.
- 10:15Flutter Test Çalıştırma
- Flutter test dosyasını çalıştırmak için terminalde "flutter test" komutu kullanılır.
- Birden fazla test dosyası varsa, test dosyasının adını belirtmek gerekir (örneğin "flutter test login.dart").
- Testler çalıştırıldığında, testlerin açıklamaları ekranda görüntülenir ve hata durumunda hangi testin hata verdiği belirtilir.
- 12:45Test Hatalarının Gösterimi
- Test hataları, testlerin açıklamalarıyla birlikte ekranda görüntülenir.
- Hatalar sırasında widget'ların özelliklerini ve taşma hatalarını da gösterir.
- Testler, gözden kaçırdığımız hataları bize göstererek düzeltmeler yapmamızı sağlar.
- 14:12Coverage Testi
- Flutter test dosyasının coverage durumunu görsel olarak görmek için "flutter test --coverage" komutu kullanılır.
- Coverage testi için "gen.html" kütüphanesi gereklidir ve başlangıçta hata verebilir.
- Coverage testi, projenin test durumunu görsel olarak gösterir ve test yapılmamış alanları kırmızı, yapılmış alanları yeşil olarak işaretler.
- 21:40Unit Test Yapısı
- Unit testlerde önce açıklama yazılır, ardından test bloğu oluşturulur.
- Grup test yapmak için "group" anahtar kelimesi kullanılabilir.
- Testlerde "expect" fonksiyonu kullanılarak beklenen sonuçlar kontrol edilir.
- 24:11Unit Test Oluşturma
- Konuşmacı, bir fonksiyonun test edilmesi için bir örnek oluşturuyor.
- "onTur" adında bir fonksiyon ve "isBook" adında bir değişken tanımlanıyor, başlangıçta değeri false olarak ayarlanıyor.
- Fonksiyon çağrıldığında "isBook" değeri true olacak şekilde tasarlanıyor.
- 27:02Test Metodunun Oluşturulması
- Test dosyası oluşturuluyor ve "onTur" fonksiyonunun test edilmesi için bir test tanımlanıyor.
- "subject" adında bir değişken tanımlanıyor ve "onTur" metodu bu değişkene atanıyor.
- "expect" ve "matcher" kullanılarak fonksiyonun beklenen sonucu (true) kontrol ediliyor.
- 30:47Testin Çalıştırılması ve Sonuç
- Test dosyası çalıştırılıyor ve fonksiyonun doğru çalıştığı kontrol ediliyor.
- "post" durumunda test yanlış çıkıyor çünkü fonksiyonun beklenen sonucu (false) elde edilmiyor.
- Unit testlerin nasıl yapıldığı gösteriliyor ve widget testlerinin de benzer şekilde yapıldığı belirtiliyor.
- 32:01Test Koverajının Görüntülenmesi
- Test koverajının nasıl görüntüleneceği gösteriliyor.
- Projedeki tüm dosyaların test edildiği ve koveraj oranının gösterildiği belirtiliyor.
- Video, test kavramlarını (unit test, widget test, test koverajı) göstererek sonlandırılıyor.