Pengenalan Testing pada Custom Script
Automated Testing
Automated Testing atau Test Automation adalah teknik pengujian software yang dilakukan dengan menggunakan suatu tools pengujian terotomasi untuk menjalankan serangkaian kasus uji (test case). Sebaliknya, Manual Testing dilakukan oleh manusia yang duduk di depan komputer yang menjalankan langkah-langkah pengujian dengan hati-hati.
Automated Testing dapat dilakukan baik di sisi backend maupun frontend.
Semua penyebutan "testing" dalam panduan ini mengacu pada Automated Testing.
MBaaS: Testing pada Custom Script
Dukungan untuk testing membutuhkan @mocobaas/server-sdk minimal versi 2.8.3 atau 1.53.2
MBaaS menyediakan sarana untuk melakukan testing pada custom script. Ekstensi VS Code Moco BaaS Console menyertakan ekstensi lain, yaitu Moco BaaS Test Suite.
Testing di MBaaS berbasis framework mocha.
MBaaS juga menyertakan beberapa testing tools di dalam require("@mocobaas/server-sdk").testing
, seperti chai dan pactum.
MBaaS mendukung jenis-jenis testing:
- API testing
- Unit testing
Functional testing(masih dalam pengembangan)
API testing
API testing bertujuan untuk menguji kebenaran input/output pada sebuah custom script melalui jalur network request (HTTP).
Syarat dan Kondisi:
- Request berlaku sebagaimana aplikasi normal. Memiliki format request dan response yang sama. Juga akan melalui serangkaian validasi seperti User Roles dan Access Token.
- Argumen
ctx
otomatis diisi oleh MBaaS.
Unit testing
Unit testing bertujuan untuk menguji kebenaran input/output pada sebuah function yang memiliki logic terisolasi (tidak terpengaruh oleh faktor MBaaS).
Syarat dan Kondisi:
- Function yang diuji harus dapat diakses dari luar (menggunakan
module.exports
). - Argumen
ctx
tidak berlaku.
Untuk semua jenis testing
Syarat dan Kondisi:
- Setiap kali tes dijalankan, ada proses start dan stop server MBaaS secara otomatis.
- Berbagai kebutuhan MBaaS, seperti infrastruktur pendukung dan file-file konfigurasi, harus tetap ada.
- Jika menggunakan
NODE_ENV
yang sama dengan yang digunakan pada pengembangan (misalnyadevelopment
), harap dipastikan bahwa server sedang tidak dijalankan. - Semua aktivitas logging ke console disimpan ke file
testing/mbaas.log
.
Di Visual Studio Code, pada menu File > Preferences > Settings, berikut ini nilai default untuk ekstensi Moco BaaS Test Suite:
name | default | description |
---|---|---|
moco-baas-testing.clearMbaasLog | true | kosongkan file mbaas.log setiap kali tes dijalankan |
moco-baas-testing.NODE_ENV | "development" | environment untuk testing |
moco-baas-testing.setupTimeout | 60000 | timeout persiapan (dalam millisecond) |
moco-baas-testing.timeout | 60000 | timeout kasus uji (dalam millisecond) |