EN: Read in English
Dunia C1: Cara Fikir Pipeline
Maklum balas pantas dan ujian flaky
Anda akan belajar: cara dapat berita buruk dengan cepat, dan apa nak buat dengan ujian yang tak tetap pendirian.
Teks BM belum disemak oleh penutur asli.
Disemak dengan GitHub Actions 2026-10 pada 31 Okt 2026
Masalahnya
Anda push. Pipeline jalan selama 40 minit. Kemudian ia gagal kerana salah taip. 40 minit hilang begitu sahaja! Macam mana nak tahu lebih awal?
Pilih satu jawapan.
Teka
Ada salah taip dalam kod.
Stesen mana akan hentikan tali sawat? Tekan stesen itu, kemudian Run.
Fail workflow .github/workflows/ci.yml
name: CI on: push: branches: [main] pull_request: permissions: contents: read jobs: ci: runs-on: ubuntu-latest steps: - uses: actions/checkout@v7 - uses: actions/setup-node@v7 with: node-version: 24 cache: npm - run: npm ci - run: npm run lint - run: npm test - run: npm run build
Tali sawat
Pull request · feature → main
Semakan cepat pergi dulu, jadi berita buruk sampai cepat. Itulah maklum balas pantas (fast feedback): Tahu tentang masalah dalam beberapa saat atau minit, semasa anda masih ingat perubahan itu. (fast feedback).
Cuba
Susun semakan ini. Yang paling cepat di atas.
Paling cepat di atas. Susun ikut turutan. Guna anak panah, atau seret.
- Build (3 minit)
- Unit test (1 minit)
- End-to-end test (12 minit)
- Lint (10 saat)
Tengok
Run dua kali. Tengok run kedua ambil jalan pintas.
Fail workflow .github/workflows/ci.yml
name: CI on: push: branches: [main] pull_request: permissions: contents: read jobs: ci: runs-on: ubuntu-latest steps: - uses: actions/checkout@v7 - uses: actions/setup-node@v7 with: node-version: 24 cache: npm - run: npm ci - run: npm run lint - run: npm test - run: npm run build
Tali sawat
Push ke main · main
Run dua kali. Run kedua langkau muat turun yang lambat. Cache buat setiap run lebih laju.
Tengok
Ketik setiap titik pada garis masa.
Hidangan sama, tiga kali rasa, dua jawapan. Ujian begini dipanggil flaky test: Ujian yang kadang lulus, kadang gagal, pada kod yang sama. (ujian tak tetap).
Cuba
Ujian anda flaky. Cara baiki yang baik, atau perlu dibaiki? Leret setiap satu.
Leret ke kanan untuk bagus, ke kiri untuk perlu baiki. Atau guna butang.
Tekan re-run sampai ia jadi hijau
Semak
Pasukan anda tekan re-run pada setiap run merah. Apa jadi lepas ni?
Pilih satu jawapan.
Anda berjaya!
Kini anda boleh dapat maklum balas pantas dan uruskan ujian flaky.
Nak tahu lebih (pilihan)
Banyak pasukan sasarkan maklum balas CI dalam kira-kira sepuluh minit. Cara nak laju: cache, job serentak dan penapis laluan (Dunia C2). GitHub boleh re-run job yang gagal sahaja. Berguna, tapi tetap baiki ujian flaky itu.
Latihan sebenar (pilihan): buka sepuluh run terakhir repo anda. Ada commit yang merah, kemudian hijau, tanpa perubahan? Anda dah jumpa flaky test.
English
You push. The pipeline runs for 40 minutes. Then it fails on a typo. 40 minutes, gone! How could you know sooner?
A typo slipped into the code.
Quick checks go first, so bad news comes fast. That is fast feedback.
Order these checks. Put the fastest at the top.
Run it twice. The second run skips the slow download. A cache makes every run faster.
Same dish, three tastings, two answers. A test that does this is a flaky test.
Your test is flaky. Good fix, or needs work? Swipe each one.
Your team presses re-run on every red run. What happens next?
You can now get fast feedback and handle flaky tests.
Anda dah siapkan ini. Latihan lagi pun bagus!
Dokumentasi rasmi: Dependency caching · Re-running workflows and jobs
Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?