Skrive grunnleggende k6-skript
Lag ditt første k6-skript for å sende HTTP-forespørsler og simulere virtuelle brukere.
Skrive grunnleggende k6-skript er en gratis leksjon i Lasttesting og ytelsesreferansetesting (JMeter og k6) på CoddyKit. Dette er leksjon 2 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Lasttesting og ytelsesreferansetesting (JMeter og k6), og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Lasttesting og ytelsesreferansetesting (JMeter og k6) inneholder totalt 4 leksjoner.
Start reisen med k6-skript
Velkommen til arbeidet med å skrive k6-skript! k6 bruker JavaScript til å definere lasttestene Deres, noe som gjør det velkjent for mange utviklere.
Et k6-skript beskriver hva de virtuelle brukerne skal gjøre, og hvordan belastningen skal simuleres.
- Definer brukerhandlinger, for eksempel å besøke sider eller logge inn.
- Angi antallet virtuelle brukere (VU-er) og testens varighet.
- Valider serversvar for å sikre at de er korrekte.
Et k6-skripts anatomi
Alle k6-skript har vanligvis to hoveddeler:
options-objektet: Her konfigurerer De testomfattende innstillinger som virtuelle brukere (VU-er) og testens varighet.default-funksjonen: Her defineres handlingene til de virtuelle brukerne. Den kjøres gjentatte ganger av hver VU.
Tenk på default-funksjonen som «hovedsløyfen» for hver virtuelle bruker.
Sende HTTP GET-forespørsler
Den vanligste handlingen i en ytelsestest er å sende en HTTP-forespørsel. k6 tilbyr modulen k6/http for dette.
For å sende en enkel GET-forespørsel bruker De http.get('URL'). Dette simulerer at en nettleser henter en nettside eller et API-endepunkt.
Husk å importere http-modulen øverst i skriptet.
Kode: Grunnleggende GET-forespørsel
La oss skrive vårt første k6-skript, som sender en GET-forespørsel til example.com. Kopier og kjør dette skriptet med k6 CLI.
k6 run your_script.js
import http from 'k6/http';
import { sleep } from 'k6/execution';
export default function () {
http.get('https://test.k6.io');
sleep(1); // Wait for 1 second between requests
}Hva er virtuelle brukere (VU-er)?
I k6 simulerer en virtuell bruker (VU) en ekte bruker som samhandler med systemet. Hver VU kjører default-funksjonen uavhengig av de andre.
Hvis De har 10 VU-er, tilsvarer det 10 personer som bruker applikasjonen samtidig. k6 administrerer disse VU-ene effektivt.
Ved å kontrollere antallet VU-er kan De simulere ulike belastningsnivåer på applikasjonen.
Konfigurer testbelastning med options
options-objektet er avgjørende for å definere testscenarioet. Det ligger på øverste nivå i skriptet.
To viktige alternativer er:
vus: Det totale antallet virtuelle brukere som skal kjøre samtidig.duration: Hvor lenge testen skal kjøre (for eksempel '30s', '5m', '2h').
Disse innstillingene forteller k6 hvordan default-funksjonen skal fordeles og kjøres.
Kode: VU-er og testvarighet
Dette skriptet kjører med 5 virtuelle brukere i 10 sekunder og sender gjentatte forespørsler til testnettstedet.
Legg merke til hvordan k6 rapporterer VU-er og varighet når De kjører skriptet.
import http from 'k6/http';
import { sleep } from 'k6/execution';
export const options = {
vus: 5,
duration: '10s',
};
export default function () {
http.get('https://test.k6.io');
sleep(1);
}Sende data med POST-forespørsler
I tillegg til GET trenger De ofte å sende data til serveren, for eksempel når De sender inn et skjema eller oppretter en ressurs. Til dette bruker De http.post().
Funksjonen http.post() tar tre argumenter:
- URL-en.
- Forespørselskroppen (vanligvis en JSON-streng eller skjemadata).
- Valgfrie parametere, for eksempel headere.
Kode: Enkel POST-forespørsel
Her er et eksempel på en POST-forespørsel som sender JSON-data. Legg merke til hvordan vi angir Content-Type-headeren for å fortelle serveren at vi sender JSON.
import http from 'k6/http';
import { sleep } from 'k6/execution';
export const options = {
vus: 1,
duration: '5s',
};
export default function () {
const url = 'https://httpbin.org/post';
const payload = JSON.stringify({
name: 'Coddy',
job: 'Learner',
});
const params = {
headers: {
'Content-Type': 'application/json',
},
};
http.post(url, payload, params);
sleep(1);
}Test skriptferdighetene Deres
Hvilke av de følgende påstandene om grunnleggende k6-skripting er SANNE?
Oppsummering: De første k6-skriptene
Godt jobbet! De har lært det grunnleggende om å skrive k6-skript:
- Den grunnleggende strukturen med
optionsogdefault-funksjonen. - Hvordan man sender enkle HTTP GET- og POST-forespørsler ved hjelp av
k6/http. - Hvordan testbelastning konfigureres med
vusogduration.
I neste leksjon skal vi se nærmere på validering av svar med Checks og angivelse av ytelsesmål med Thresholds!
Lær deg Lasttesting og ytelsesreferansetesting (JMeter og k6) med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 12
- Leksjoner
- 48
Ofte stilte spørsmål
Er leksjonen «Skrive grunnleggende k6-skript» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Lasttesting og ytelsesreferansetesting (JMeter og k6), inkludert «Skrive grunnleggende k6-skript», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i Lasttesting og ytelsesreferansetesting (JMeter og k6) inneholder totalt 4 leksjoner.
Hva lærer jeg i «Skrive grunnleggende k6-skript»?
Lag ditt første k6-skript for å sende HTTP-forespørsler og simulere virtuelle brukere. Du øver på Lasttesting og ytelsesreferansetesting (JMeter og k6) med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med Lasttesting og ytelsesreferansetesting (JMeter og k6)?
Ingen tidligere erfaring er nødvendig. Lasttesting og ytelsesreferansetesting (JMeter og k6) på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.
Hvor lang tid tar leksjonen «Skrive grunnleggende k6-skript»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne Lasttesting og ytelsesreferansetesting (JMeter og k6)-leksjonen?
Ja. Alle Lasttesting og ytelsesreferansetesting (JMeter og k6)-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Installasjon av k6 og CLI
- Skrive grunnleggende k6-skript
- Checks, terskler og metrikk
- Grupper og tagger for organisering av tester