Dalam edisi kali ini, topik yang akan kita bahas adalah pengujian JavaScript untuk memeriksa apakah status dan mode kerja komponen sesuai dengan yang diharapkan. Pengujian yang disebutkan di sini tentu saja menggunakan metode pengujian otomatis, yang merupakan bagian penting dari jaminan kualitas perangkat lunak (QA). Sejauh menyangkut Antrean Cerdas yang diperkenalkan dalam rangkaian artikel ini, tujuan pengujian kami meliputi:
Untuk tujuan pertama, cukup periksa apakah properti objek setelah pembuatan sesuai dengan yang diharapkan. Kami telah menyebutkan "menyesuaikan diri dengan harapan" berkali-kali, dan Assert dirancang untuk ini. Sederhananya, pernyataan adalah untuk memastikan bahwa ekspresi yang diuji menghasilkan "benar", jika tidak, beri tahu penguji dengan cara tertentu dan bantu dia menemukan kasus uji di mana pernyataan tersebut gagal.
Gol kedua sedikit lebih rumit. Karena kami menyembunyikan antrian yang diurutkan (_sorted) di penutupan selama pengkodean dan implementasi komponen, antrian tersebut tidak dapat diakses dari luar. Ada dua metode yang perlu dipertimbangkan: (1) Memfaktorkan ulang kode untuk meningkatkan kemampuan pengujian kode. Ada juga dua metode pemfaktoran ulang: (a) Setel sakelar debug dan ekspos _sorted ke luar saat diaktifkan; Tambahkan file independensi, gabungkan kode dengan cara build untuk akhirnya menghasilkan versi pengujian. (2) Uji hasil perilaku, bukan prosesnya. Metode sebelumnya pada dasarnya mendalami status runtime komponen, sedangkan metode ini hanya memeriksa hasil komponen yang sedang berjalan. Masalah ini menggunakan metode pengujian yang terakhir, dan metode pengujian pertama diserahkan kepada pembaca yang tertarik untuk berlatih :)
Perlu dicatat bahwa saya pribadi tidak setuju dengan cara pertama a. Izinkan saya berbicara terlebih dahulu tentang konsep desain antrian tugas ini:
Sumber: Alipay UED