CodeBlanks Logo Icon CodeBlanks

dart test

dart test çerçevesini öğrenirsin.

dart test çerçevesi

dart test, Dart'ın yerleşik test çerçevesidir. Testler test/ klasörüne *_test.dart uzantısıyla yazılır. Komut satırından dart test ile çalıştırılır.

Bir test dosyası import 'package:test/test.dart'; ile başlar. Her test, test('açıklama', () { ... }) biçiminde yazılır. İçinde expect ile iddialarda bulunursun.

Testler, kodunun beklenen gibi davrandığını doğrular. Yanlış bir değişiklik testin kırmızı olmasını sağlar; böylece hatayı erken yakalarsın.

Test dosyası iskeleti

Bir test dosyasının iskeleti şöyledir: import 'package:test/test.dart'; ile başlar, sonra test('toplama', () { expect(2 + 3, equals(5)); }); yazılır. Burada expect gerçek ile beklenen değeri karşılaştırır.

equals(5) bir eşleştiricidir (matcher). Beklenen değer 5'tir; gerçek değer 2 + 3 = 5'tir. Eşitse test yeşil, değilse kırmızı olur.

Her test kısa ve tek bir davranışı sınamalıdır. Açıklama, ne sınandığını anlatır.

Uygulama Calculator sınıfı

Bir Calculator sınıfı tanımla: int add(int a, int b) => a + b; metodu olsun. main içinde Calculator().add(2, 3) sonucunu print ile yazdır.

Başlangıç kodu

main.dart
// Calculator sınıfını tanımla, add metodu ekle

void main() {
  // add(2, 3) sonucunu yazdır
}

Örnek çözüm

main.dart
class Calculator {
  int add(int a, int b) => a + b;
}

void main() {
  print(Calculator().add(2, 3));
}

Beklenen çıktı

5

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 dart test komutu neyi çalıştırır?

  • lib/ klasörünü
  • pubspec.yaml'ı
  • bin/ klasörünü
  • test/ klasöründeki *_test.dart dosyalarını Doğru cevap

Açıklama: dart test test/ içindeki *_test.dart dosyalarını çalıştırır.

2 test paketini içe aktar

Soru
import 'package:test/____.dart';
Cevap
import 'package:test/test.dart';

Açıklama: test paketi 'package:test/test.dart' ile içe aktarılır.

3 Test dosyası parçaları

Kavram Anlamı
test/ Test klasörü
*_test.dart Test dosyası adı
import 'package:test/test.dart' İçe aktarım
test('...', () {}) Test bloğu

Orta seviye bölümündeki tüm dersler