k6 i GitHub Actions
Konfigurera k6-tester så att de körs automatiskt som en del av era GitHub Actions-arbetsflöden.
k6 i GitHub Actions är en gratis lektion i Lasttestning och prestandamätning (JMeter och k6) på CoddyKit. Detta är lektion 2 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Lasttestning och prestandamätning (JMeter och k6), och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Lasttestning och prestandamätning (JMeter och k6) innehåller totalt 4 lektioner.
Automatisera prestandatestning
Välkommen till integration av prestandatestning med CI/CD! Pipelines för Continuous Integration (CI) och Continuous Delivery (CD) automatiserar stegen i programvaruutvecklingen.
Genom att införa prestandatester i detta flöde säkerställer du att prestandaproblem upptäcks tidigt, innan de når användarna.
Varför k6 i GitHub Actions?
GitHub Actions erbjuder ett kraftfullt sätt att automatisera uppgifter direkt i ditt GitHub-arkiv. Här är varför det passar bra för k6-prestandatester:
- Automatisering: Tester körs automatiskt när koden ändras.
- Enhetlighet: Testmiljön standardiseras.
- Tidig återkoppling: Upptäck prestandaregressioner snabbt.
- Versionshantering: Dina testskript och arbetsflöden finns tillsammans med koden.
Grunderna i GitHub Actions-arbetsflöden
Ett GitHub Actions-arbetsflöde definieras av en YAML-fil i katalogen .github/workflows/ i ditt arkiv.
Filen anger när arbetsflödet ska köras, vad som ska köras (jobb och steg) och i vilket operativsystem.
Vårt enkla k6-testskript
Innan vi skapar arbetsflödet behöver vi ett grundläggande k6-skript. Skriptet utför en enkel HTTP GET-förfrågan till en testslutpunkt. Spara det som test.js i ditt arkiv.
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);
}Skapa arbetsflödesfilen
Skapa först en ny katalog .github/workflows/ i roten av ditt arkiv. Skapa sedan till exempel en fil med namnet k6-perf-test.yml i den.
Den här filen definierar våra automatiseringssteg.
Arbetsflödets struktur: namn och utlösare
Varje arbetsflöde behöver ett name och en utlösare (on). Vi utlöser testet vid varje push till grenen main.
Här är början på filen k6-perf-test.yml:
name: k6 Performance Test
on:
push:
branches:
- main
jobs:Definiera testjobbet
Nästa steg är att definiera ett job. Ett jobb består av en uppsättning steg som körs på samma körmiljö. Vi kallar vårt jobb run-k6-test och använder en körmiljö med ubuntu-latest.
name: k6 Performance Test
on:
push:
branches:
- main
jobs:
run-k6-test:
runs-on: ubuntu-latest
steps:Hämta kod och installera k6
I jobbets steps måste vi först hämta koden från vårt arkiv och sedan installera k6. Vi använder en färdig GitHub Action för att enkelt installera k6.
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install k6
uses: k6io/action@v2.0.0Köra k6-testet
Slutligen lägger vi till ett steg som kör vårt k6-skript test.js. Vi kan ange alternativ som antalet virtuella användare (-u) och varaktigheten (-d) direkt.
- name: Install k6
uses: k6io/action@v2.0.0
- name: Run k6 test
run: k6 run -u 10 -d 30s test.jsVisa testresultat
När du har checkat in filen .yml och skriptet test.js i ditt GitHub-arkiv går du till fliken Actions.
Där ser du arbetsflödet köras. Klicka på körningen av arbetsflödet och sedan på jobbet run-k6-test för att se detaljerade loggar, inklusive k6:s utdata och resultat.
Grunderna i arbetsflöden
Vilken av följande är den korrekta sökvägen och filändelsen för en GitHub Actions-arbetsflödesfil?
Sammanfattning och nästa steg
Du har lärt dig att integrera k6-prestandatester i GitHub Actions! Det möjliggör automatiserad, enhetlig och tidig återkoppling om prestandan.
- Vi gick igenom arbetsflödets struktur.
- Vi konfigurerade ett k6-skript och YAML-arbetsflödesfilen.
- Vi konfigurerade steg för att hämta kod, installera k6 och köra testet.
- Vi gick igenom hur du visar resultat i GitHub Actions.
Utforska sedan mer avancerade k6-funktioner i dina arbetsflöden, till exempel rapportering och tröskelvärden!
Lär dig Lasttestning och prestandamätning (JMeter och k6) med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 12
- Lektioner
- 48
Vanliga frågor
Är lektionen ”k6 i GitHub Actions” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Lasttestning och prestandamätning (JMeter och k6), inklusive ”k6 i GitHub Actions”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Lasttestning och prestandamätning (JMeter och k6) innehåller totalt 4 lektioner.
Vad lär jag mig i ”k6 i GitHub Actions”?
Konfigurera k6-tester så att de körs automatiskt som en del av era GitHub Actions-arbetsflöden. Ni övar på Lasttestning och prestandamätning (JMeter och k6) med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig Lasttestning och prestandamätning (JMeter och k6)?
Du behöver inga förkunskaper. Utbildningen i Lasttestning och prestandamätning (JMeter och k6) på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.
Hur lång tid tar lektionen ”k6 i GitHub Actions”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här Lasttestning och prestandamätning (JMeter och k6)-lektionen?
Ja. Varje Lasttestning och prestandamätning (JMeter och k6)-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Integrera JMeter med Jenkins
- k6 i GitHub Actions
- Prestandagrindar och SLO:er
- Trendanalys och baslinjer i CI