Baiklah, abaikan jawaban saya sebelumnya karena seseorang mengatakan kepada saya bahwa itu tidak menyelesaikan masalah.
Jawaban Baru:
1) Periksa lelucon terbaru (v 0.22): https://github.com/facebook/jest
2) Tim facebook menempatkan istanbul sebagai bagian dari laporan liputan dan Anda dapat menggunakannya secara langsung.
3) Setelah mengeksekusi lelucon, Anda bisa mendapatkan laporan cakupan pada konsol dan di bawah folder root yang ditetapkan oleh lelucon, Anda akan menemukan laporan cakupan dalam format json dan html.
4) FYI, jika Anda menginstal dari npm, Anda mungkin tidak mendapatkan versi terbaru; jadi cobalah github terlebih dahulu dan pastikan cakupannya adalah yang Anda butuhkan.
Jawaban lama:
Punya masalah yang sama juga. Jawaban singkatnya adalah: Istanbul
dan Jest
TIDAK bekerja sama.
Periksa halaman-halaman berikut untuk detail lebih lanjut:
https://github.com/facebook/jest/issues/101
jest menggunakan contextify yang menjalankan skrip JS dalam konteks V8 dalam kode asli sehingga melewati semua kebutuhan istanbul dan kait vm.runInThisContext. Jadi penutup istanbul tidak akan berfungsi karena fungsi node.js hookable standar tidak digunakan dan file pra-instrumenting tidak akan membantu karena setiap tes berjalan di kotak pasir sendiri dan tidak ada global di mana untuk menyimpan objek cakupan.
@ Circo Costa: config.collectCoverage
TIDAK berfungsi, karena ini adalah fungsi 'TODO'. Silakan periksa kode sumber.