Panduan ini ditujukan untuk pengguna Lighthouse v2 yang:
- Jalankan Lighthouse dari Node atau command line.
- Andalkan output JSON Lighthouse.
Jika ini tidak berlaku untuk Anda, maka alur kerja Anda untuk menjalankan Lighthouse sebagian besar sama. Lihat Mengumumkan Lighthouse 3.0 untuk mengetahui ringkasan fitur dan perubahan baru.
Perubahan pemanggilan
Lighthouse sekarang mengomputasi performa simulasi secara default dan setelan throttling telah banyak diubah.
Flag CLI
Skenario | Tanda v2 | Tanda v3 |
---|---|---|
Throttling DevTools 3G | Tidak ada (perilaku default) | --throttling-method=devtools |
Tanpa Throttling | --disable-network-throttling --disable-cpu-throttling |
--throttling-method=provided |
Throttling Jaringan, Tanpa Throttling CPU | --disable-cpu-throttling |
--throttling-method=devtools --throttling.cpuSlowdownMultiplier=1 |
Menjalankan Audit Performa | --perf |
--preset=perf |
Menjalankan Audit Konten Campuran | --mixed-content |
--preset=mixed-content |
Modul Node
Di Lighthouse v3, modul Node menerima opsi konfigurasi yang sama dengan CLI. Ini merupakan perubahan yang dapat menyebabkan gangguan dalam arti bahwa banyak dari opsi ini diabaikan di v2, sedangkan sekarang opsi tersebut sebenarnya akan memengaruhi cara Lighthouse berjalan.
const fs = require('fs');
const lighthouse = require('lighthouse');
async function run() {
// `onlyCategories` was previously only available as a config setting.
// `output` was previously only available in CLI.
const flags = {onlyCategories: ['performance'], output: 'html'};
const html = (await lighthouse('https://google.com/', flags)).report;
fs.writeFileSync('report.html', html);
}
Perubahan output
Format tingkat atas baru dalam output JSON
Objek JSON yang ditampilkan Lighthouse v3 sekarang berisi tiga properti level teratas:
lhr
. Hasil audit. Singkatan dari "Lighthouse Results". Ini pada dasarnya adalah objek tingkat atas di v2, tetapi v3 juga memperkenalkan perubahan yang dapat menyebabkan gangguan pada bentuk objek ini. Lihat Perubahan pada objek hasil.artifacts
. Data yang dikumpulkan dari Chrome saat mengaudit. Ini sebelumnya bercampur dengan properti LHR.report
. HTML/JSON/CSV laporan berformat sebagai string.
Perubahan pada objek hasil
Seperti yang disebutkan dalam Format tingkat atas baru dalam output JSON, hasil audit tidak tersedia melalui properti lhr
. Di v2, konten objek ini pada dasarnya merupakan output JSON level atas. Namun, bentuk objek ini sendiri telah berubah di v3. Tabel di bawah mencantumkan semua perubahan.
- Jika baris memiliki nilai di kolom v2 dan v3, artinya Anda harus mengganti referensi apa pun ke properti v2 dalam kode Anda dengan yang setara dengan v3.
- Jika baris tidak memiliki nilai di kolom v3, kolom Catatan akan menjelaskan opsi Anda.
- Perlu diketahui bahwa item seperti ID mewakili teks placeholder.
Properti v2 | Setara v3 | Catatan |
---|---|---|
initialUrl |
requestedUrl |
|
url |
finalUrl |
|
generatedTime |
fetchedTime |
|
reportCategories |
categories |
Diubah dari array menjadi objek dengan kunci. |
reportGroups |
categoryGroups |
|
audits.ID.name |
audits.ID.id |
|
audits.ID.description |
audits.ID.title |
|
audits.ID.helpText |
audits.ID.description |
|
audits.ID.scoringMode |
audits.ID.scoreDisplayMode |
Nilai yang mungkin telah diperluas ke
numeric|binary|manual|informative|not-applicable|error .
|
audits.ID.score |
audits.ID.score |
Skor selalu berupa angka antara 0 dan 1 (bukan 0-100) jika scoreDisplayMode berupa
numerik atau biner. Skor selalu null untuk mode tampilan lainnya karena tidak ada
gagasan lulus/gagal.
|
audits.ID.displayValue |
audits.ID.displayValue |
Kini dapat berupa array argumen gaya printf untuk interpolasi string. |
audits.ID.debugString |
audits.ID.explanation
audits.ID.errorMessage
audits.ID.warnings
|
Nilai debugString telah dikonversi menjadi salah satu dari tiga properti di atas,
bergantung pada intent-nya.
|
audits.ID.details |
audits.ID.details |
Struktur detail telah bergeser menjadi lebih mudah dipahami. Setiap entri dalam .items adalah objek dengan kunci yang andal, bukan any[] .
|
audits.ID.error |
audits.ID.scoreDisplayMode === 'error' |
|
audits.ID.notApplicable |
audits.ID.scoreDisplayMode === 'not-applicable' |
|
audits.ID.informative |
audits.ID.scoreDisplayMode === 'informative' |
|
audits.ID.manual |
audits.ID.scoreDisplayMode === 'manual' |
|
audits.ID.extendedInfo |
Dihapus. Sebagai gantinya, gunakan details .
|