Skip to content

Farhan

Cara paling mudah setup GitHub actions untuk Automate Laravel Testing

GitHub, Laravel, CI/CD1 min read

GitHub Actions

GitHub Actions

GitHub Actions ialah servis daripada GitHub untuk melakukan sesuatu aliran kerja dengan secara automatik ke atas event yang telah dinyatakan.

Sebagai contoh, apabila kita membuat pull request kepada branch master. Ia akan triggered GitHub Action yang telah di setup untuk menjalankan apa-apa kerja seperti Testing. Antara kebaikkanya ialah:

  • Dapat kesan bug lebih awal, oleh kerana sebelum kita pull request kita boleh tahu result test.
  • Jimat masa. Developer tidak perlu manually test the code.

Untuk fahami lebih lanjut mengenai GitHub Actions, boleh layari blog ini.

GitHub Actions + Laravel Testing

Jadi, macam mana kita nak integrate GitHub Actions dengan Laravel Project kita?

Keperluan:

  • Laravel Project
  • GitHub Repository
  • mempunyai tests untuk di jalankan
Langkah 1 - GitHub Actions

Step1 - GitHub Actions

Buka Repository anda dan click Actions tab. Di actions page, akan listkan pelbagai workflow, anda perlu mencari workflow Laravel, dan click Set up this workflow.

Step1.1 - GitHub Action

Langkah 2 - Setup Workflow

GitHub akan membuka page baharu dan generate code untuk Laravel workflow.

1on:
2 push:
3 branches: [ master ]
4 pull_request:
5 branches: [ master ]

Code atas ini untuk kita kasi tahu GitHub Actions, untuk jalankan kerja apabila ada push event dan pull request event ke branch master. Anda juga boleh tambah sebanyak mana branch yang anda mahu GitHub Actions dijalankan.

1runs-on: ubuntu-latest

Di runs-on anda boleh nyatakan Operating System apa yang anda nak test ini run. Kalau nak guna windows boleh tambah windows-latest. Code seterusnya macam biasa kita selalu gunakan untuk setup Laravel project, dan run PHPunit.

Kita boleh terus commit tanpa ubah apa-apa. Selepas sahaja kita commit, kita boleh buka balik actions tab di repository kita dan kita boleh lihat laravel-tests sedang run. Test ini telah run sebab kita commit new changes and push to master branch.

Step2

Langkah 3 - Pull Request ke Master branch

step3

Selepas sahaja kita create pull request kepada master, kita dapat lihat laravel-tests in progress. Kita boleh click details untuk lihat lebih lanjut progress testing kita. Boleh lihat diatas, first test saya failed di mana ia menunjuk symbol pangkah. Saya perlu fix balik code saya dan push balik. Selepas ia berjaya, kita boleh terus merge pull request tanpa rasa ragu-ragu. Mudahkan? success step3

Semoga artikel ini dapat membantu anda untuk setup Laravel Test menggunakan GitHub Action dengan cara paling mudah. Untuk belajar lebih advance mengenai GitHub Actions, seperti menggunakan MySQL atau menggunakan pelbagai Laravel version boleh rujuk artikel ini.

Sebarang pertanyaan boleh dm saya di Twitter @MuhdFrhan