Hoppa till innehåll
BigTree108

Tjänster inom prestanda- och belastningstestning

Tjänster inom prestanda- och belastningstestning: last-, stress-, spike- och soak-tester i k6, JMeter, Gatling och Locust, kapacitetsplanering inför lanseringar och försäljningstoppar, flaskhalsanalys i kod, databaser och infrastruktur, frontend-prestanda och Core Web Vitals samt prestandatester i CI, med dedikerade prestandaingenjörer för ert team eller prestandatestprojekt som levereras helt och hållet.

Prestandatestning vi utför

  • Belastningstestning

    Den trafik ni förväntar er, modellerad utifrån produktionsloggar och analys som användarflöden med tänketid och realistiska data, körd tills svarstider, felfrekvens och resursanvändning visar var systemet står mot sina mål.

  • Stress- och spike-tester

    Last som höjs över den förväntade toppen för att hitta brytpunkten och det som går sönder först, samt plötsliga toppar som ett marknadsföringsmejl eller en biljettrelease, för att se om autoskalningen reagerar i tid och systemet återhämtar sig på egen hand.

  • Soak- och uthållighetstester

    Jämn last som hålls i timmar eller dagar för att hitta minnesläckor, uttömda anslutningspooler, växande köer och diskar som fylls av loggar, de problem ett kort test aldrig når.

  • Skript i k6, JMeter, Gatling och Locust

    Grafana k6 i JavaScript, Apache JMeter för befintliga testplaner och protokoll bortom HTTP, Gatling i Java eller TypeScript och Locust i Python, med skript som ligger i repositoryt bredvid koden de testar.

  • Flaskhalsanalys

    Resultat som läses tillsammans med traces, mätvärden och profiler i Grafana, Datadog, New Relic eller Application Insights, så att ett långsamt svar kan följas till frågan, låset, trådpoolen eller det externa anropet bakom det, och varje rättning testas om under samma last.

  • Kapacitetsplanering för lanseringar och toppar

    Lasttester dimensionerade för en lansering, en försäljningstopp eller en kampanj, där antalet instanser och autoskalningsgränser som håller vid den lasten dokumenteras och kostnaden för att köra vid topp uppskattas före dagen.

  • Frontend-prestanda och Core Web Vitals

    Largest Contentful Paint, Interaction to Next Paint och Cumulative Layout Shift följs upp ur verkliga användares fältdata, med Lighthouse och WebPageTest i labbet för att hitta orsaken, och förbättras sedan genom ändringar av bilder, skript, typsnitt och cachelagring.

  • Prestandatester i CI

    Korta lasttester med gränsvärden för godkänt och underkänt vid varje release i GitHub Actions, GitLab CI eller Azure Pipelines, större körningar i Grafana Cloud k6, Azure Load Testing eller BlazeMeter, och varje körning jämförs med föregående bygge så att en regression fångas innan användarna märker den.

  • Tester av motståndskraft och failover

    Instanser, zoner och beroenden som tas ned under last med AWS Fault Injection Service, Azure Chaos Studio eller Chaos Mesh, för att kontrollera att failover, återförsök och circuit breakers fungerar och att återhämtningen når sitt mål.

Anlita prestandaingenjörer

  • Dedikerade prestandaingenjörer

    Prestandaingenjörer som går med i ert team på heltid, arbetar i era verktyg och er process och rapporterar till er teamledare. Ni intervjuar dem; vi står för det ukrainska avtalet, lönen, faktureringen och ledigheten.

  • Projekt inom Prestandatestning

    En avgränsad insats inom prestandatestning med omfång, fast plan och en namngiven ledare hos oss som äger resultatet och rapporterar framsteg i era kanaler.

  • Löpande prestandatestning

    Prestandatestning som löpande tjänst: samma personer varje månad, en backlog ni prioriterar och timmar ni kan se i vår portal och på fakturan.

Sidan om dedikerade team förklarar hur specialister går med i ert team, och sidan om outsourcing beskriver projektleverans, övertaganden och hur vi debiterar.

Vilka som arbetar med prestandatestning åt er

  • Prestandaingenjörer

    Arbetsbelastningsmodeller, skript och analys

  • Site reliability-ingenjörer

    Övervakning, autoskalning och kapacitet

  • Backend-utvecklare

    Rättningar i kod, frågor och cachelagring

  • Databasadministratörer

    Frågeplaner, index och anslutningsgränser

  • Frontend-utvecklare

    Förbättringar av Core Web Vitals

Så genomför vi prestandatester

Varje test utgår från ett skriftligt mål: antalet användare eller anrop, svarstiden vid 95:e eller 99:e percentilen, den godtagbara felfrekvensen och kostnaden. Arbetsbelastningen modelleras på produktionstrafik, testdata genereras i produktionsvolym, och testet körs mot en miljö med samma dimensionering som produktion, eller mot själva produktionen under ett överenskommet fönster.

Resultaten levereras med en förklaring, inte bara ett diagram: vilken komponent som nådde sin gräns, varför och vilken ändring som flyttar den, där varje rättning bekräftas med en ny körning under samma last. Skript, datageneratorer och gränsvärden stannar i ert repository, så att ert team kan köra samma tester före varje release.

Andra tjänster inom mjukvarutestning

Översikt: Mjukvarutestning och QA

Frågor om prestanda- och belastningstestning

Inom vilka branscher arbetar era prestandaingenjörer?

Mest e-handel och detaljhandel, före försäljningstoppar och kampanjer; fintech och bank, där betalnings- och handelssystem har latensmål; enterprise-SaaS-produkter som tar sig an större kunder; media- och streamingtjänster vars trafik kommer alla på en gång; samt telekom-, moln- och hostingleverantörer som dimensionerar sina plattformar.

Kan ni göra lasttester i produktion?

Ja, när staging inte kan återskapa det verkliga systemet. Testet körs i ett överenskommet fönster med lite trafik, trappas upp stegvis med stoppvillkor för felfrekvens och latens, använder testkonton och testdata som tas bort efteråt, och har en namngiven kontaktperson på varje sida som bevakar det.

k6, JMeter eller Gatling?

k6 för det mesta av det nya arbetet: testerna skrivs i JavaScript, körs från kommandoraden och passar i en pipeline. JMeter där testplaner redan finns eller protokollet inte är HTTP, till exempel JDBC, JMS eller rå TCP. Gatling för team som arbetar i Java eller TypeScript och Locust för Python-team. Vi arbetar också med det verktyg ert team redan använder.

Hur snabbt kan prestandaingenjörer börja?

När rätt prestandaingenjör finns tillgänglig styrs starten bara av er intervju samt NDA och IP-överlåtelse. Annars gör vi en sökning, som vanligtvis ger kandidatprofiler inom två till tre veckor, och ingen börjar förrän ni har sagt ja.

Hur anlitar vi prestandaingenjörer via BigTree108?

Berätta om arbetet, senioriteten och de timmar ni behöver. Vi föreslår en eller två personer med deras profiler, ni intervjuar dem på samma sätt som ni skulle intervjua en egen anställning, och ni skriver under ett avtal med BIG TREE 108 LLC och får en faktura i månaden.

Vem äger arbetet de producerar?

Det gör ni. Varje specialist har ett undertecknat avtal med BigTree108 som överlåter allt arbetsresultat till bolaget, och vårt avtal med er överlåter det vidare. Kod, designer och dokument levereras in i era egna repositories och verktyg, inte på ett ställe där bara vi kan ändra dem.

Väntar ni mer trafik?

Berätta vad systemet gör, hur mycket trafik det får i dag och hur mycket ni förväntar er. Ni får svar inom en arbetsdag: en testplan med mål, kandidatprofiler eller ett omfång för ett första lasttest.