21 September 2022
•
9 menit baca
Belajar Melakukan Unit Testing Automation dengan xUnit
Pengantar praktis untuk mulai menulis unit test di ekosistem .NET tanpa membuat prosesnya terasa menakutkan.

Kenapa testing penting
Testing membantu memastikan aplikasi melakukan apa yang seharusnya dilakukan, terutama ketika codebase mulai berkembang. Tanpa test, perubahan kecil bisa diam-diam merusak perilaku lama dan baru ketahuan jauh di belakang.
Unit test bukan berarti kita harus menguji semuanya sekaligus. Tujuan awalnya adalah membangun kebiasaan mengecek potongan logika yang paling penting dan paling mudah rusak.
Menyiapkan project xUnit
Di ekosistem .NET, xUnit menjadi pilihan populer karena sintaksnya sederhana dan integrasinya nyaman dengan tooling bawaan. Biasanya kita membuat project test terpisah, lalu menambahkan reference ke project utama yang ingin diuji.
Setelah itu kita bisa mulai membuat class test yang memetakan area perilaku tertentu, misalnya perhitungan harga, validasi input, atau format data.
public class CalculatorTests
{
[Fact]
public void Add_ShouldReturnTotal_WhenNumbersAreValid()
{
var calculator = new Calculator();
var result = calculator.Add(10, 5);
Assert.Equal(15, result);
}
}Satu test sederhana sudah cukup untuk mulai mengenalkan pola berpikir berbasis perilaku.
Pola Arrange, Act, Assert
Pola yang paling mudah diingat saat menulis unit test adalah Arrange, Act, Assert. Pertama siapkan data dan object yang dibutuhkan, lalu jalankan aksi yang ingin diuji, kemudian verifikasi hasilnya.
Struktur ini menjaga test tetap terbaca. Saat test gagal, kita juga lebih mudah memahami apakah masalah datang dari setup, aksi, atau ekspektasi.
- Arrange: siapkan input dan object yang dibutuhkan.
- Act: jalankan method yang menjadi fokus pengujian.
- Assert: bandingkan hasil aktual dengan hasil yang diharapkan.
Memilih skenario yang layak diuji duluan
Ketika baru belajar, fokuslah pada logika yang memiliki keputusan, cabang, atau perhitungan. Itu area yang paling mudah mendapat manfaat dari unit test. Validasi sederhana, mapping, formatter, dan business rule kecil biasanya kandidat terbaik.
Tidak semua hal wajib diuji pada hari pertama. Yang penting, mulai dari area yang memberi rasa aman paling besar ketika kamu refactor.
Menjadikan testing sebagai kebiasaan kerja
Testing automation baru terasa nilainya ketika menjadi bagian alami dari workflow harian. Bahkan satu atau dua test pada setiap perubahan kecil sudah bisa membangun budaya yang jauh lebih sehat daripada tidak ada sama sekali.
xUnit mempermudah pintu masuk itu. Begitu pola dasarnya terbentuk, kamu bisa melanjutkan ke teori data-driven test, mock, atau integrasi dengan CI.
Artikel terkait

28 September 2022
•
11 menit baca
Melakukan CRUD Lebih Mudah dengan Entity Framework Core
Pembahasan dasar tentang ORM, komponen inti EF Core, pendekatan code-first, dan studi kasus CRUD entitas User menggunakan SQL Server lalu dipindahkan ke SQLite.

7 September 2022
•
7 menit baca
Berkenalan dengan LINQ pada C#
Artikel pengantar tentang LINQ, cara kerjanya di `IEnumerable<T>` atau `IQueryable<T>`, dan beberapa operasi yang sering dipakai saat mengolah data.

14 September 2022
•
8 menit baca
Abstract Class dan Interface Apa Perbedaannya? (C#)
Pembahasan ringan tentang kapan menggunakan abstract class, kapan lebih cocok memakai interface, dan bagaimana keduanya membantu desain OOP menjadi lebih jelas.