Chromestatus.com adalah alat resmi yang digunakan untuk pelacakan pelacakan fitur di Blink (mesin browser yang memberi daya Chrome dan banyak browser web lainnya). Alat ini memandu pemilik fitur melalui proses peluncuran kami dan berfungsi sebagai sumber utama untuk informasi pengembang yang kemudian beriak di seluruh ekosistem pengembang web.
Untuk pengaturan satu klik yang memanfaatkan DevContainers, lihat DevContainer ReadMe. Jika tidak, untuk terus menyiapkan secara lokal:
git clone https://github.com/GoogleChrome/chromium-dashboard
gcloud initgcloud components install cloud-datastore-emulatorgcloud components install betanpm install --global gulp-clisudo apt install python3.11-venvnode -v untuk memeriksa versi node defaultnvm use 18 untuk beralih ke simpul 18cd chromium-dashboardnpm run setupnpm run clean-setup .Jika Anda mengalami kesalahan selama proses instalasi, bagian catatan (nanti di readme.md ini) dapat membantu.
Untuk memulai server utama dan backend notifier, jalankan:
npm start Kemudian kunjungi http://localhost:7777/ .
Untuk memulai Watching Code End Front End (Sass, JS Lint Check, Babel, Minify Files), jalankan
npm run watchUntuk menjalankan lint & lit-analyzer:
npm run lintUntuk menjalankan tes unit:
npm testIni akan memulai emulator datastore lokal, menjalankan tes unit, dan kemudian mematikan emulator.
Untuk memperbarui test_html_rendering.html, modifikasi metode test_html_rendering dalam file uji yang sesuai, uncomment baris yang terlihat seperti:
# TESTDATA.make_golden(template_text, 'test_html_rendering.html')Kemudian jalankan tes lagi (dan mungkin sekali lagi), dan kemudian Anda dapat mengembalikan perubahan file uji Anda.
Untuk menjalankan tes visual penulis naskah (alias tes ujung ke ujung), perintah untuk digunakan adalah:
npm run pwtests Jika ada kesalahan, mereka akan ditampilkan di konsol. Jika Anda perlu memperbarui salah satu gambar tangkapan layar, Anda akan melihat perbedaan dalam direktori packages/playwright/test-results , dan jika terlihat benar, maka Anda dapat memperbarui semua gambar untuk semua tes dengan:
npm run pwtests-updateGambar yang diperbarui juga ditambahkan ke direktori tangkapan layar . Gambar yang tidak perlu diperbarui tidak muncul karena telah diubah. Jika Anda mengubah nama file uji, atau nama metode pengujian, atau nama file gambar tangkapan layar, maka file baru akan dihasilkan, dan Anda perlu menghapus file lama secara manual. Anda bisa menghapus semua tangkapan layar dan memperbarui semua, tetapi itu akan memakan waktu yang cukup lama.
Anda dapat memperbarui gambar hanya untuk satu file uji dengan menambahkan --filename=some_pwtest.js ke perintah pwtests-update . Nama some_pwtest.js tidak perlu menjadi jalur lengkap.
Jika ada kesalahan yang dilaporkan oleh Tindakan Playwright GitHub CI, Anda dapat melihat log kesalahan, tetapi jika masalahnya adalah perbedaan dalam beberapa gambar, Anda mungkin harus mengunduh file .zip artefak yang berisi semua perbedaan.
Ada beberapa informasi tambahan untuk pengembang di pengembang-dokumentasi.md.
Untuk menguji fungsionalitas aplikasi ini secara lokal yang berinteraksi dengan data dari uji coba API Origin, kunci API perlu diperoleh. Untuk melakukan ini, jalankan perintah berikut:
npm run dev-ot-keyCATATAN: Hanya pengembang dengan akses ke proyek GCP CR-Status yang akan berhasil menjalankan perintah ini. Jika Anda perlu menguji ini dan Anda tidak memiliki akses, buka masalah.
Catatan
Jika Anda mendapatkan kesalahan yang mengatakan No module named protobuf atau No module named six atau No module named enum , coba instal mereka secara lokal dengan pip install six enum34 protobuf .
Saat menginstal GAE SDK, pastikan untuk mendapatkan versi untuk Python 3.
Jika Anda menjalankan server secara lokal, dan kemudian Anda terputus dari jendela terminial Anda, pekerjaan mungkin tetap berjalan yang akan mencegah Anda memulai server lagi. Untuk mengatasi hal ini, gunakan npm run stop-emulator; npm stop . Atau, gunakan ps aux | grep gunicorn dan/atau ps aux | grep emulator , lalu gunakan perintah UNIX kill -9 untuk mengakhiri pekerjaan itu.
Jika Anda perlu menguji atau men-debug apa pun yang berkaitan dengan dependensi, Anda bisa mendapatkan awal yang bersih dengan menjalankan npm run clean-setup .
Kadang -kadang, Google Cloud CLI akan membutuhkan pembaruan, yang akan menyebabkan kegagalan ketika mencoba menjalankan server pengembangan dengan npm start . Pesan kesalahan yang tidak terkait Failed to connect to localhost port 15606 after 0 ms: Connection refused akan muncul. Menjalankan perintah gcloud components update akan memperbarui sesuai kebutuhan dan menyelesaikan masalah ini.
Chromestatus saat ini mendapatkan daftar komponen blink dari file hack_components.py .
Kunjungi http: // localhost: 7777/admin/blink/populate_blink untuk melihat daftar pemilik komponen blink.
settings.py berisi daftar global untuk men -debug dan menjalankan situs secara lokal.
Jika Anda memiliki perubahan lokal yang tidak berkomitmen, nama versi appengine akan berakhir dengan -tainted . Tidak apa -apa untuk menguji pementasan dengan versi yang tercemar, tetapi semuanya harus dilakukan (dan dengan demikian tidak ternoda) sebelum mementaskan versi yang nantinya dapat didorong untuk mendorong.
Catatan Anda perlu memiliki hak istimewa admin pada proyek cloud cr-status-staging dan cr-status untuk dapat menggunakan situs tersebut.
Jalankan target NPM:
npm run staging
Buka konsol pengembang Google untuk situs pementasan dan balik ke versi baru dengan memilih dari daftar dan mengklik lalu lintas migrasi . Pastikan untuk melakukan ini untuk layanan 'default' maupun untuk layanan 'pemberitahuan'.
Atau, jalankan npm run staging-rc untuk mengunggah kode yang sama ke versi bernama rc untuk "Calon Rilis". Ini adalah satu-satunya versi yang dapat Anda uji menggunakan Google Sign-in di https://rc-dot-cr-status-staging.appspot.com .
Jika pengujian manual pada server pementasan terlihat bagus, maka ulangi langkah yang sama untuk digunakan untuk Prod:
npm run deploy
Buka Konsol Pengembang Google untuk situs produksi
Situs produksi seharusnya hanya memiliki versi yang cocok dengan versi pementasan.
Hak Cipta (C) 2013-2022 Google Inc. Semua hak dilindungi undang-undang.
Lisensi Apache2.