Chromestatus.com เป็นเครื่องมืออย่างเป็นทางการที่ใช้สำหรับการติดตามคุณสมบัติการเปิดตัวใน Blink (เครื่องยนต์เบราว์เซอร์ที่ให้พลัง Chrome และเว็บเบราว์เซอร์อื่น ๆ อีกมากมาย) เครื่องมือนี้เป็นแนวทางให้เจ้าของคุณลักษณะเจ้าของผ่านกระบวนการเปิดตัวของเราและทำหน้าที่เป็นแหล่งข้อมูลหลักสำหรับข้อมูลนักพัฒนาที่ระลอกคลื่นตลอดทั้งระบบนิเวศนักพัฒนาเว็บ
สำหรับการตั้งค่าแบบคลิกเดียวที่ใช้ประโยชน์จาก devContainers ลองดู devContainer readme มิฉะนั้นในการตั้งค่าต่อไปในพื้นที่:
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 เพื่อตรวจสอบเวอร์ชันโหนดเริ่มต้นnvm use 18 เพื่อเปลี่ยนเป็นโหนด 18cd chromium-dashboardnpm run setupnpm run clean-setupหากคุณพบข้อผิดพลาดใด ๆ ในระหว่างกระบวนการติดตั้งส่วน บันทึก (ภายหลังใน readme.md นี้) อาจช่วยได้
ในการเริ่มต้นเซิร์ฟเวอร์หลักและแบ็กเอนด์ Notifier ให้เรียกใช้:
npm start จากนั้นเยี่ยมชม http://localhost:7777/
ในการเริ่มต้นการดูรหัสส่วนหน้า (SASS, JS Lint Check, Babel, Minify Files), Run
npm run watchเพื่อเรียกใช้ Lint & Lit-Analyzer:
npm run lintเพื่อเรียกใช้การทดสอบหน่วย:
npm testสิ่งนี้จะเริ่มต้นเครื่องจำลองดาต้าสโตร์ในท้องถิ่นเรียกใช้การทดสอบหน่วยจากนั้นปิดเครื่องจำลอง
ในการอัปเดต test_html_rendering.html แก้ไขวิธี test_html_rendering ในไฟล์ทดสอบที่สอดคล้อง
# TESTDATA.make_golden(template_text, 'test_html_rendering.html')จากนั้นเรียกใช้การทดสอบอีกครั้ง (และอาจจะอีกครั้ง) จากนั้นคุณสามารถเปลี่ยนการเปลี่ยนแปลงไฟล์ทดสอบของคุณ
ในการเรียกใช้การทดสอบภาพนักเขียนบทละคร (aka การทดสอบแบบ end-to-end) คำสั่งที่จะใช้คือ:
npm run pwtests หากมีข้อผิดพลาดพวกเขาจะปรากฏในคอนโซล หากคุณต้องการอัปเดตภาพสกรีนช็อตใด ๆ คุณจะเห็นความแตกต่างในไดเรกทอรี packages/playwright/test-results และหากดูถูกต้องคุณสามารถอัปเดตรูปภาพ ทั้งหมด สำหรับการทดสอบทั้งหมดด้วย:
npm run pwtests-updateภาพที่อัปเดตจะถูกเพิ่มลงในไดเรกทอรี หน้าจอ รูปภาพที่ไม่จำเป็นต้องได้รับการปรับปรุงไม่ปรากฏว่ามีการเปลี่ยนแปลง หากคุณเปลี่ยนชื่อไฟล์ทดสอบหรือชื่อวิธีการทดสอบหรือชื่อไฟล์ภาพหน้าจอจะสร้างไฟล์ใหม่และคุณจะต้องลบไฟล์เก่าด้วยตนเอง คุณสามารถลบภาพหน้าจอทั้งหมดและอัปเดตทั้งหมดได้ แต่นั่นจะใช้เวลานานพอสมควร
คุณสามารถอัปเดตรูปภาพสำหรับไฟล์ทดสอบเพียงหนึ่งไฟล์โดยการเพิ่ม --filename=some_pwtest.js ไปยังคำสั่ง pwtests-update ชื่อ some_pwtest.js ไม่จำเป็นต้องเป็นเส้นทางเต็ม
หากมีการรายงานข้อผิดพลาดโดยการกระทำของนักเขียนบทละคร GitHub CI คุณสามารถดูบันทึกข้อผิดพลาดได้ แต่หากปัญหามีความแตกต่างในบางภาพคุณควรดาวน์โหลดไฟล์ artifact .zip ที่มีความแตกต่างทั้งหมด
มีข้อมูลเพิ่มเติมบางอย่างสำหรับนักพัฒนาในนักพัฒนา-เอกสาร
ในการทดสอบการทำงานของแอปพลิเคชันนี้ในเครื่องที่โต้ตอบกับข้อมูลจากการทดลองต้นทาง API จะต้องได้รับคีย์ API ในการทำเช่นนี้เรียกใช้คำสั่งต่อไปนี้:
npm run dev-ot-keyหมายเหตุ: เฉพาะนักพัฒนาซอฟต์แวร์ที่สามารถเข้าถึงโครงการ CR-Stage-Staging GCP เท่านั้นที่จะสามารถเรียกใช้คำสั่งนี้ได้สำเร็จ หากคุณต้องการทดสอบสิ่งนี้และคุณไม่สามารถเข้าถึงได้ให้เปิดปัญหา
หมายเหตุ
หากคุณได้รับข้อผิดพลาดโดยบอกว่า No module named protobuf หรือ No module named six หรือ No module named enum ให้ลองติดตั้งในเครื่องด้วย pip install six enum34 protobuf
เมื่อติดตั้ง GAE SDK ตรวจสอบให้แน่ใจว่าได้รับเวอร์ชันสำหรับ Python 3
หากคุณเรียกใช้เซิร์ฟเวอร์ในเครื่องและจากนั้นคุณจะถูกตัดการเชื่อมต่อจากหน้าต่างเทอร์มินัลของคุณงานอาจยังคงทำงานอยู่ซึ่งจะป้องกันไม่ให้คุณเริ่มเซิร์ฟเวอร์อีกครั้ง ในการแก้ไขปัญหานี้ให้ใช้ npm run stop-emulator; npm stop หรือใช้ ps aux | grep gunicorn และ/หรือ ps aux | grep emulator จากนั้นใช้คำสั่ง Unix kill -9 เพื่อยุติงานเหล่านั้น
หากคุณต้องการทดสอบหรือดีบักสิ่งที่เกี่ยวข้องกับการพึ่งพาคุณสามารถเริ่มต้นได้อย่างสะอาดโดยใช้ npm run clean-setup
ในบางครั้ง Google Cloud CLI จะต้องมีการอัปเดตซึ่งจะทำให้เกิดความล้มเหลวเมื่อพยายามเรียกใช้เซิร์ฟเวอร์การพัฒนาด้วย npm start ข้อความแสดงข้อผิดพลาดที่ไม่เกี่ยวข้อง Failed to connect to localhost port 15606 after 0 ms: Connection refused จะปรากฏขึ้น การรันคำสั่ง gcloud components update จะอัปเดตตามต้องการและแก้ไขปัญหานี้
ปัจจุบัน Chromestatus ได้รับรายการของส่วนประกอบกะพริบจากไฟล์ hack_components.py
เยี่ยมชม http: // localhost: 7777/admin/blink/populate_blink เพื่อดูรายการของเจ้าขององค์ประกอบกะพริบ
settings.py มีรายการของ Globals สำหรับการดีบักและเรียกใช้เว็บไซต์ในพื้นที่
หากคุณมีการเปลี่ยนแปลงในท้องถิ่นที่ไม่มีข้อผูกมัดชื่อเวอร์ชัน AppEngine จะจบลงด้วย -tainted มันก็โอเคที่จะทดสอบการจัดเตรียมด้วยเวอร์ชันที่ไม่บริสุทธิ์ แต่ทุกอย่างควรได้รับการทำ (และไม่ปนเปื้อน) ก่อนที่จะจัดเตรียมเวอร์ชันที่สามารถผลักดันให้กับ Prod ได้ในภายหลัง
หมายเหตุ คุณต้องมีสิทธิ์ผู้ดูแลระบบในโครงการ cr-status-staging และ cr-status Cloud เพื่อให้สามารถปรับใช้เว็บไซต์ได้
เรียกใช้เป้าหมาย NPM:
npm run staging
เปิดคอนโซลของ Google Developer สำหรับไซต์การจัดเตรียมและพลิกไปยังเวอร์ชันใหม่โดยเลือกจากรายการและคลิก ที่ปริมาณการใช้งาน ตรวจสอบให้แน่ใจว่าได้ทำสิ่งนี้สำหรับทั้งบริการ 'เริ่มต้น' รวมถึงบริการ 'Notifier'
อีกทางเลือกหนึ่งรัน npm run staging-rc เพื่ออัปโหลดรหัสเดียวกันไปยังเวอร์ชันที่ชื่อ rc สำหรับ "Release Candidate" นี่เป็นรุ่นเดียวที่คุณสามารถทดสอบโดยใช้ Google Sign-In ได้ที่ https://rc-dot-cr-status-staging.appspot.com
หากการทดสอบด้วยตนเองบนเซิร์ฟเวอร์การจัดเตรียมดูดีให้ทำซ้ำขั้นตอนเดียวกันเพื่อปรับใช้กับ Prod:
npm run deploy
เปิดคอนโซลของ Google Developer สำหรับเว็บไซต์การผลิต
ไซต์การผลิตควรมีรุ่นที่ตรงกับเวอร์ชันในการจัดเตรียม
ลิขสิทธิ์ (c) 2013-2022 Google Inc. สงวนลิขสิทธิ์
ใบอนุญาต Apache2