06 Mei 2025 [Programming, Test Driven, Tech]
Menguji bahwa ada sesuatu yang tidak ada yang tidak dapat diandalkan
Hari ini saya menulis tes bahwa sesuatu tidak terjadi, seperti ini:
Given that the A setting is "off"
When I start the app
Then the warning about A being on IS NOT displayed
Cukup sulit untuk memeriksa bahwa sesuatu tidak ditampilkan dengan cara yang kuat. Awalnya tidak masalah:
assert!(page.does_not_contain("Setting A should normally be turned off!"));
Tetapi kemudian jika kita mengubah kata -kata peringatan, maka tes ini menjadi tidak berguna: kita bisa memperkenalkan bug yang membuat peringatan muncul, dan tes ini masih akan lulus, karena sedang mencari teks yang salah.
Pasangkan dengan menguji bahwa ada sesuatu yang ada
Cara terbaik yang saya temukan untuk menjaga hal ini adalah dengan memastikan setiap tes “tidak ada di sana” dipasangkan dengan tes “apakah ada” sebagai teman:
Given that the A setting is "on"
When I start the app
Then the warning about A being on IS displayed
Sekarang ketika kita mengubah kata -kata peringatan, tes positif ini gagal, dan kita dapat memperbarui kedua tes untuk menggunakan kata -kata baru.
Jadi semuanya baik -baik saja?
Tapi, tentu saja, beberapa programmer miskin yang bekerja mengubah “biasanya” menjadi “biasanya” di 800 file kode sumber mungkin tidak akan banyak berpikir tentang sepasang tes ini, dan akan mengganggu kode sampai semua 10.800 tes lulus, dan dapat dengan mudah kehilangan pasangan.
Mereka mungkin memperbaiki kata -kata dalam tes “Apakah ada”, dan melewatkannya dalam tes “tidak ada”, menjadikannya tidak berguna lagi.
Bagaimana membuat ini lebih baik
Mungkin menyenangkan untuk membangun konvensi penamaan untuk menunjukkan bahwa tes dipasangkan, untuk membantu menghindari masalah ini. Saran?
Bahkan lebih baik, bisakah kita membuat semacam “keberadaan ditentukan oleh x” yang menggabungkan sepasang tes ini menjadi satu? Sesuatu seperti ini:
Given that the A setting can be either "on" or "off"
When I start the app
Then the warning is controlled by A:
"on" = displayed
"off" = not displayed
Saya tidak menyadari pola ini digunakan di mana pun. Siapa pun? Seperti apa kode dalam tes?
Game News
Review Film
Rumus Matematika
Anime Batch
Berita Terkini
Berita Terkini
Berita Terkini
Berita Terkini
review anime
Gaming Center
Gaming Center
Gaming center adalah sebuah tempat atau fasilitas yang menyediakan berbagai perangkat dan layanan untuk bermain video game, baik di PC, konsol, maupun mesin arcade. Gaming center ini bisa dikunjungi oleh siapa saja yang ingin bermain game secara individu atau bersama teman-teman. Beberapa gaming center juga sering digunakan sebagai lokasi turnamen game atau esports.
