Selamat Datang di Learn Testing!

Kursus ini adalah pengenalan dan eksplorasi pengujian untuk web.

Dalam materi ini, Anda akan mempelajari hal-hal berikut:

  • Dasar-dasar pengujian
  • Pengujian otomatis versus manual
  • Tempat dan cara menjalankan pengujian
  • Praktik terbaik
  • Filosofi pengujian, termasuk apa yang harus diuji, siapa yang bertanggung jawab, dan bagaimana mempertimbangkan pengujian suatu sarana untuk suatu tujuan, bukan sebagai tujuan itu sendiri.

Kursus ini juga menyertakan kode contoh yang ringkas dan praktis untuk dipelajari.

Cakupan kursus ini mencakup JavaScript dan model dokumen di frontend, serta pengujian library di backend, yang dijalankan di lingkungan seperti Node.js. Hal ini mengasumsikan bahwa Anda tidak memiliki latar belakang dalam pengujian, tetapi Anda memerlukan landasan dalam JavaScript dan pengalaman dengan Node.js atau yang serupa. Aplikasi ini cocok untuk developer baru dan berpengalaman.

Karena sebagian besar framework dan alat pengujian menggunakan bahasa yang sama, Learn Testing mengambil pendekatan umum untuk pengujian. Jika penting untuk lebih spesifik, kami akan menggunakan Vitest, framework pengujian yang makin populer dan menunjukkan cara menguji komponen untuk web yang ditulis menggunakan React atau Lit. Untuk mempelajari pilihan ini lebih lanjut, lihat lampiran.

Anda dapat mempelajari kursus ini dari awal hingga akhir, tetapi juga dapat menggunakannya sebagai referensi untuk topik tertentu. Jika relevan, kursus akan ditautkan ke referensi.

Inilah yang akan Anda pelajari:

Mulai melakukan pengujian

Pengertian pengujian

Ini adalah pengantar pengujian tingkat tinggi, termasuk contoh praktis pengujian di JavaScript. Bacaan ini juga menyertakan pengenalan skala setiap pengujian.

Tempat pengujian dijalankan

Pengujian dapat membantu Anda menjadi produktif dan menulis software secara efisien, dan meskipun memungkinkan untuk menjalankannya secara manual menggunakan command line, Anda juga dapat menjalankannya sebagai bagian dari proses atau sistem build otomatis.

Lingkungan pengujian

Alat runtime seperti Node adalah untuk kode tujuan umum, dan kode pengujian untuk browser dapat dijalankan di lingkungan yang diemulasi atau menggunakan framework yang dirancang untuk pengujian browser.

Jenis pengujian otomatis

Pelajari kategorisasi umum jenis pengujian, yang sebagian besar sesuai dengan skalanya. Yang penting, jenis pengujian tidak memiliki definisi yang ketat dan akan berubah berdasarkan kebutuhan Anda.

Yang perlu diuji dan pendekatan Anda

Mengidentifikasi bagian terpenting dari codebase Anda untuk menerapkan pengujian yang ketat bisa menjadi keputusan yang sulit. Modul ini memperkenalkan ide pengujian sebagai cara untuk mencapai tujuan, serta cara menilai kode Anda untuk pengujian.

Penerapan pengujian komponen

Dalam modul praktik ini, Anda akan mempelajari cara menguji komponen React yang tidak terlalu ideal. Fungsi ini menggunakan Vitest melalui tiga contoh berbeda: menangkap traffic jaringan yang dibuat dengan fetch(), meniru dependensi eksternal, dan menggunakan Context React untuk memberikan bit kode kustom hanya untuk pengujian.

Analisis statis

Menggunakan alat seperti TypeScript dan ESLint, meskipun pendekatan yang tidak mapan untuk pengujian, dapat memberikan suatu jenis pemeriksaan otomatis. Modul ini membahas alat alternatif ini.

Pernyataan dan primitif lainnya

Alat perdagangan

Pelajari primitif yang umum untuk sebagian besar library atau framework pengujian, termasuk test() dan assert, yang akan menjadi andalan setiap pengujian yang Anda tulis di JavaScript.

Segera hadir

  • Menghindari kesalahan umum dalam pengujian
  • Tes ganda
  • Menguji library dan utilitas
  • Menentukan framework pengujian

Bagian selanjutnya akan berisi lebih banyak halaman tentang framework dan library pengujian, cara penggunaannya, serta cara memutuskan alat mana dan alat lain yang akan digunakan.

Segera hadir: Pengujian berbasis masalah

Anda akan mempelajari pola untuk menghadapi sejumlah tantangan umum pengujian Web.

Segera hadir: Pengujian otomatis dalam praktik

Ini adalah bagian praktis yang menunjukkan cara menguji situs e-commerce yang dibuat dengan Next.js, termasuk kode yang dapat Anda lihat dan pelajari sendiri. Anda akan mempelajari cara menguji komponennya, cara menggunakan layanan eksternalnya, termasuk pembayaran, untuk pengujian, dan cara membuat pengujian menyeluruh untuk situs yang memiliki halaman login opsional.

Segera hadir: Filosofi pengujian

Pengujian dapat menjadi tantangan engineering, tetapi mengetahui apa yang harus diuji, siapa yang bertanggung jawab, dan praktik terbaik juga dapat menjadi tantangan bagi tim pengembangan.

Segera hadir: Menulis kode yang dapat diuji

Kursus ini menyediakan panduan tentang cara menguji kode seperti yang ada, tetapi tim Anda dapat mengadopsi berbagai pola agar kode Anda lebih mudah diuji. Bagian ini akan membahas beberapa pendekatan.