Latihan - Menginstal paket
Tim Tailwind Traders berencana untuk mengembangkan beberapa aplikasi Node.js. Mereka telah menemukan Jest, kerangka kerja pengujian zero-config populer, di registri npm. Mereka ingin Anda menginstal Jest, menulis beberapa tes, dan menjalankannya untuk mengevaluasi efektivitasnya.
Menambahkan paket pengujian dengan Npm CLI
Anda memiliki beberapa kode yang mengekstrak alamat dari string. Pekerjaan Anda sederhana: instal kerangka kerja pengujian, tulis beberapa pengujian, dan jalankan.
Di jendela terminal baru (Ctrl + Shift + `), ubah ke folder yang memiliki file untuk latihan ini:
cd node-dependencies/5-exercise-dependency
Lihat isi folder:
ls -R
Di folder ini, Anda akan melihat dua file JavaScript:
-| address-parser.js -| package.json
Buka file address-parser.js. Tampilannya akan seperti file ini:
exports.addressParser = function parseOrder(order) { const match = order.match(/order:\s(?<order>\w+\s\w+).*address:\s(?<address>\w+\s\w+\s\w+).*payment info:\s(?<payment>\w+)/) return match.groups; }
Fungsi ini mengambil string dan mengurai informasi tentang hal yang dipesan pelanggan, tujuan pesanan tersebut harus dikirimkan, dan cara pembayarannya. Kita akan menambahkan Jest dan menulis beberapa tes untuk fungsi tersebut.
Tutup file
address-parser.js
.Instal paket Jest dengan menjalankan perintah ini:
npm install jest --save-dev
Setelah paket Jest diinstal, buka
package.json
file dan temukan bagian .devDependencies
Anda akan melihat entri yang terlihat seperti contoh ini di mana nilai untukjest
properti adalah nomor versi semantik:"devDependencies": { "jest": "<number.number.number>" }
Di file package.json, temukan bagian
scripts
. Ganti entri tindakantest
yang ada dengan kode berikut:"test": "jest"
Simpan perubahan Anda dan tutup file package.json.
Di terminal, buat subfolder baru bernama __tests__.
mkdir __tests__
Catatan
Pastikan Anda menggunakan garis bawah ganda saat membuat folder __tests__ . Folder pengujian adalah konvensi penamaan yang digunakan oleh Jest, kerangka kerja pengujian. Jest secara otomatis mengenali file apa pun dalam folder pengujian (atau file dengan .test. atau .spec. dalam namanya) sebagai file pengujian dan menyertakannya saat menjalankan pengujian. Konvensi ini membantu menjaga file pengujian tetap terorganisir dan mudah diidentifikasi dalam proyek Anda.
Di folder __tests__, buat file bernama address-parser.spec.js, lalu tambahkan konten berikut ke file:
const { addressParser } = require('../address-parser'); describe('Address Parser', () => { test('should parse correctly', () => { expect(addressParser("I want to to order: 3 books to address: 112 street city here is my payment info: cardnumber") ).toEqual({ order: "3 books", address: "112 street city", payment: "cardnumber", }); }); });
Skrip pengujian:
- Memeriksa kemampuan penguraian fungsi address-parser.js.
- Memastikan fungsi dapat mengurai informasi yang diperlukan dengan benar.
Simpan perubahan Anda dan tutup file.
Struktur proyek Anda sekarang akan terlihat seperti contoh ini:
-| package.json -| address-parser.js -| __tests__/ ---| address-parser.js
Jalankan tes dengan memasukkan perintah ini di terminal:
npm run test
Anda akan menemukan output berikut:
PASS __tests__/address-parser.js Address parser ✓ should parse correctly (2 ms) Test Suites: 1 passed, 1 total Tests: 1 passed, 1 total Snapshots: 0 total Time: 0.4 s Ran all test suites.
Berhasil! Tes Anda lulus, dan Anda menambahkan pengujian dengan menginstal dependensi.
Selamat. Anda berhasil menginstal Jest sebagai dependensi, menulis pengujian untuk kode aplikasi, dan menjalankan pengujian. Jest tampaknya menjanjikan, dan Tailwind Traders kemungkinan besar akan senang dengan evaluasi ini.