5- Unit Testlerimizi Github Actions ile otomatik olarak çalışması

Mustafa Dikyar
3 min readJul 25, 2023

Herkese selamlar,

Unit Test makale serimize Bölüm 5: Github Actions ile Otomatik Unit Test Çalıştırma konusu ile devam ediyoruz.

Eğer ilk dört kısmı okumadıysanız, önceki makalelere aşağıdaki linkler üzerinden erişebilirsiniz.

Zaman kaybetmeden makalemize devam edelim.

Unit test makalemizin serisinin son bölümünde, testlerimizi her commit işlemiyle otomatik olarak çalıştırmayı GitHub Actions ile nasıl gerçekleştireceğimizi ele alacağız.

Öncelikle, .NET CLI komutlarını kullanarak testlerimizi nasıl çalıştırabileceğimizi inceleyelim.

Projemizin dizinine giderek PowerShell veya komut istemcisini açıyoruz.

dotnet --test

komutu ile testlerimizi çalıştırıyoruz.

İşte tüm testlerimizin başarıyla çalıştığını gözlemledik. Şimdi GitHub üzerinden adımlarımıza devam edelim.

Github üzerindeki repository’mize geliyoruz ve “Actions” sekmesine tıklıyoruz.

Geliştirmelerimizi .Net Framework kullanarak yaptığımız için, CI (Continuous Integration) bölümündeki şablonları .Net’e uygun şekilde yapılandırıyoruz.

Yukarıdaki düzenlemeleri yaparak — konudan sapmamamızı sağlamak için fazla detaya girmeden — build.yml dosyasını güncelliyorum.

Bu şekilde, her commit veya pull request oluşturduğumuzda projemizin derlenip testlerin çalışmasını sağlayacak.

Kodu commit ediyoruz ve sonra Action sekmesine geri dönüyoruz.

Artık bir flowumuzun olduğunu ve bir commit attığımız için flowun çalıştığını görüyoruz.

Flowun detay sayfasına girerek detayları gözlemleyebilirsiniz.

Sonuç olarak attığımız commit sonrası flowumuz çalıştı ve testlerimiz başarıyla geçti.

Aslında anlatacaklarım bu kadar.

Son olarak, başarılı senaryoyu gördük evet, ama kodumuzu ufak bir şekilde manipüle edelim ve bir hata senaryosunu da gözlemleyelim istiyorum.

Visual Studio’ya geçiyorum. Kodumun son halini pullayarak devam ediyoruz.

Evet, projemizin içerisinde build.yml dosyasını belirtilen yol üzerinde gözlemlemekteyiz.

Yukarıda görebileceğiniz şekilde testlerimden bir tanesine gidiyorum ve bilinçli olarak beklenen değeri manipüle ediyorum.

Test Explorer’dan da ilgili testimin hata verdiğini görebiliyorum.

Şimdi bu haliyle kodu master branchine pushluyorum ve sonuçları gözlemleyelim.

Yeni commit attıktan sonra hemen actions altında yeni flow’un oluştuğunu gözlemliyorum.

İşte bu noktada, başarısız senaryomuzu da bu şekilde gözlemlemiş olduk. Mesaj bölümünü detaylı incelerseniz hatanın ayrıntılarına da erişebilirsiniz.

Son olarak, son manipülasyonumu da geri alıyorum. İnanılmaz bir keyifle ele aldığım Unit Test makale serisinin de sonuna gelmiş bulunuyoruz.

Önceki makaleye bu link üzerinden ulaşabilirsiniz.

Okuduğunuz için teşekkür ederim.

--

--