k6 w GitHub Actions
Skonfiguruj testy k6 tak, aby uruchamiały się automatycznie w ramach procesów GitHub Actions.
k6 w GitHub Actions to bezpłatna lekcja Load Testing & Performance Benchmarking (JMeter & k6) na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Load Testing & Performance Benchmarking (JMeter & k6), a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Load Testing & Performance Benchmarking (JMeter & k6) zawiera 4 lekcji w sumie.
Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.
Automating Performance Testing
Welcome to integrating performance testing with CI/CD! Continuous Integration (CI) and Continuous Delivery (CD) pipelines automate software development steps.
Bringing performance tests into this flow ensures that performance issues are caught early, before they reach users.
Why k6 in GitHub Actions?
GitHub Actions provides a powerful way to automate tasks directly within your GitHub repository. Here's why it's great for k6 performance tests:
- Automation: Tests run automatically on code changes.
- Consistency: The test environment is standardized.
- Early Feedback: Catch performance regressions quickly.
- Version Control: Your test scripts and workflows live with your code.
GitHub Actions Workflow Basics
A GitHub Actions workflow is defined by a YAML file in the .github/workflows/ directory of your repository.
It specifies when to run, what to run (jobs and steps), and on which operating system.
Our Simple k6 Test Script
Before creating the workflow, let's have a basic k6 script. This script will perform a simple HTTP GET request to a test endpoint. Save this as test.js in your repository.
import http from 'k6/http';
import { check, sleep } from 'k6';
export default function () {
const res = http.get('https://test.k6.io');
check(res, {
'status is 200': (r) => r.status === 200,
});
sleep(1);
}Creating the Workflow File
First, create a new directory .github/workflows/ in the root of your repository. Inside this, create a file named, for example, k6-perf-test.yml.
This file will define our automation steps.
Workflow Structure: Name & Trigger
Every workflow needs a name and a trigger (on). We'll trigger our test on every push to the main branch.
Here's the start of our k6-perf-test.yml file:
name: k6 Performance Test
on:
push:
branches:
- main
jobs:Defining the Test Job
Next, we define a job. A job is a set of steps that execute on the same runner. We'll call ours run-k6-test and use an ubuntu-latest runner.
name: k6 Performance Test
on:
push:
branches:
- main
jobs:
run-k6-test:
runs-on: ubuntu-latest
steps:Checkout Code & Install k6
Inside our job's steps, we first need to check out our repository code, then install k6. We'll use a pre-built GitHub Action to easily install k6.
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install k6
uses: k6io/action@v2.0.0Executing the k6 Test
Finally, we add a step to run our test.js k6 script. We can specify options like the number of virtual users (-u) and duration (-d) directly.
- name: Install k6
uses: k6io/action@v2.0.0
- name: Run k6 test
run: k6 run -u 10 -d 30s test.jsViewing Test Results
After committing your .yml file and test.js script to your GitHub repository, navigate to the Actions tab.
You'll see your workflow running. Click on the workflow run, then the run-k6-test job to view the detailed logs, including k6's output and results.
Workflow Essentials
Which of the following is the correct path and file extension for a GitHub Actions workflow file?
Recap & Next Steps
You've learned how to integrate k6 performance tests into GitHub Actions! This enables automated, consistent, and early performance feedback.
- We explored the workflow structure.
- Set up a k6 script and the YAML workflow file.
- Configured steps for checking out code, installing k6, and running the test.
- Understood how to view results in GitHub Actions.
Next, explore more advanced k6 features in your workflows, like reporting and thresholds!
Często zadawane pytania
Czy lekcja „k6 w GitHub Actions” jest bezpłatna?
Tak — pełny tekst „k6 w GitHub Actions” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Load Testing & Performance Benchmarking (JMeter & k6), przejdź na CoddyKit PRO. Kurs Load Testing & Performance Benchmarking (JMeter & k6) zawiera 4 lekcji w sumie.
Co nauczysz się w „k6 w GitHub Actions”?
Skonfiguruj testy k6 tak, aby uruchamiały się automatycznie w ramach procesów GitHub Actions. Ćwiczysz Load Testing & Performance Benchmarking (JMeter & k6) z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Load Testing & Performance Benchmarking (JMeter & k6)?
Nie wymagamy żadnego doświadczenia. Load Testing & Performance Benchmarking (JMeter & k6) w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.
Ile czasu zajmuje lekcja „k6 w GitHub Actions”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Load Testing & Performance Benchmarking (JMeter & k6)?
Tak. Każda lekcja Load Testing & Performance Benchmarking (JMeter & k6) zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Integracja JMeter z Jenkins
- k6 w GitHub Actions
- Bramki wydajnościowe i SLO
- Analiza trendów i baseline w CI