Belastningstest og benchmarking af ydeevne (JMeter og k6) · Lektion

k6 i GitHub Actions

Konfigurér k6-tests til at køre automatisk som en del af dine GitHub Actions-workflows

Lektion 2 af 412 trin

k6 i GitHub Actions er en gratis Belastningstest og benchmarking af ydeevne (JMeter og k6)-lektion på CoddyKit. Dette er lektion 2 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Belastningstest og benchmarking af ydeevne (JMeter og k6), og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Belastningstest og benchmarking af ydeevne (JMeter og k6)-kurset indeholder 4 lektioner i alt.

Automatisering af ydeevnetests

Velkommen til integration af ydeevnetests med CI/CD! Forløb til kontinuerlig integration (CI) og kontinuerlig levering (CD) automatiserer trin i softwareudviklingen.

Ved at føre ydeevnetests ind i dette forløb sikrer du, at ydeevneproblemer opdages tidligt, før de når brugerne.

Hvorfor k6 i GitHub Actions?

GitHub Actions giver en effektiv måde at automatisere opgaver direkte i dit GitHub-lager. Her er grundene til, at det er velegnet til k6-ydeevnetests:

  • Automatisering: Tests køres automatisk ved kodeændringer.
  • Ensartethed: Testmiljøet er standardiseret.
  • Tidlig feedback: Opdag hurtigt forringelser af ydeevnen.
  • Versionsstyring: Dine testscripts og arbejdsgange findes sammen med din kode.

Grundlæggende om GitHub Actions-arbejdsgange

En GitHub Actions-arbejdsgang defineres af en YAML-fil i mappen .github/workflows/ i dit lager.

Den angiver hvornår der skal køres, hvad der skal køres (jobs og trin), og hvilket operativsystem der skal bruges.

Vores enkle k6-testscript

Før vi opretter arbejdsgangen, skal vi have et grundlæggende k6-script. Dette script udfører en enkel HTTP GET-anmodning til et testslutpunkt. Gem det som test.js i dit lager.

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);
}

Oprettelse af arbejdsgangsfilen

Opret først en ny mappe .github/workflows/ i roden af dit lager. Opret derefter en fil med f.eks. navnet k6-perf-test.yml i denne mappe.

Denne fil definerer vores automatiseringstrin.

Arbejdsgangens struktur: Navn og udløser

Alle arbejdsgange skal have et name og en udløser (on). Vi udløser vores test ved hver push til grenen main.

Her er begyndelsen på vores k6-perf-test.yml-fil:

name: k6 Performance Test

on:
  push:
    branches:
      - main

jobs:

Definition af testjobbet

Dernæst definerer vi et job. Et job er et sæt trin, der udføres på den samme kører. Vi kalder vores run-k6-test og bruger en ubuntu-latest-kører.

name: k6 Performance Test

on:
  push:
    branches:
      - main

jobs:
  run-k6-test:
    runs-on: ubuntu-latest
    steps:

Hentning af kode og installation af k6

I vores jobs steps skal vi først hente koden fra vores lager og derefter installere k6. Vi bruger en færdigbygget GitHub Action til nemt at installere k6.

    steps:
      - name: Checkout repository
        uses: actions/checkout@v4

      - name: Install k6
        uses: k6io/action@v2.0.0

Kørsel af k6-testen

Til sidst tilføjer vi et trin, der kører vores k6-script test.js. Vi kan angive indstillinger som antallet af virtuelle brugere (-u) og varigheden (-d) direkte.

      - name: Install k6
        uses: k6io/action@v2.0.0

      - name: Run k6 test
        run: k6 run -u 10 -d 30s test.js

Visning af testresultater

Efter du har sendt din .yml-fil og dit test.js-script til dit GitHub-lager, skal du gå til fanen Actions.

Du kan se din arbejdsgang køre. Klik på arbejdsgangskørslen og derefter på jobbet run-k6-test for at se de detaljerede logfiler, herunder k6's output og resultater.

Det vigtigste om arbejdsgange

Hvilken af følgende er den korrekte sti og filendelse for en GitHub Actions-arbejdsgangsfil?

Opsummering og næste trin

Du har lært at integrere k6-ydeevnetests i GitHub Actions! Det giver automatiseret, ensartet og tidlig feedback om ydeevnen.

  • Vi gennemgik arbejdsgangens struktur.
  • Vi opsatte et k6-script og en YAML-arbejdsgangsfil.
  • Vi konfigurerede trin til at hente kode, installere k6 og køre testen.
  • Vi lærte, hvordan resultater vises i GitHub Actions.

Udforsk derefter mere avancerede k6-funktioner i dine arbejdsgange, f.eks. rapportering og tærskler!

Gratis at komme i gang

Lær Belastningstest og benchmarking af ydeevne (JMeter og k6) med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
12
Lektioner
48

Ofte stillede spørgsmål

Er lektionen “k6 i GitHub Actions” gratis?

Ja — alle 3 lektioner i læringssporet Belastningstest og benchmarking af ydeevne (JMeter og k6), inklusive “k6 i GitHub Actions”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Belastningstest og benchmarking af ydeevne (JMeter og k6)-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “k6 i GitHub Actions”?

Konfigurér k6-tests til at køre automatisk som en del af dine GitHub Actions-workflows Du øver dig i Belastningstest og benchmarking af ydeevne (JMeter og k6) med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Belastningstest og benchmarking af ydeevne (JMeter og k6)?

Der kræves ingen tidligere erfaring. Belastningstest og benchmarking af ydeevne (JMeter og k6) på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 2 af 4.

Hvor lang tid tager lektionen “k6 i GitHub Actions”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Belastningstest og benchmarking af ydeevne (JMeter og k6)-lektion?

Ja. Alle Belastningstest og benchmarking af ydeevne (JMeter og k6)-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Integration af JMeter med Jenkins
  2. k6 i GitHub Actions
  3. Præstationsgates og SLO'er
  4. Trend-analyse og baselining i CI
← Tilbage til Belastningstest og benchmarking af ydeevne (JMeter og k6)