Testaus ja debuggaus ovat alueita, joissa Claude Code todella loistaa. Se voi kirjoittaa kattavia testejä, analysoida virheviestejä, debugata ongelmia ja jopa korjata CI-putkessa hajonneita testejä. Tässä oppaassa opit hyödyntämään Claudea testauksessa ja virheenkorjauksessa.
Claude Code on erinomainen testien kirjoittaja. Se ymmärtää koodin toiminnan ja osaa tunnistaa testattavat skenaariot:
Yksikkötestit: Claude lukee funktion, tunnistaa reunatapaukset ja kirjoittaa kattavat testit.
Integraatiotestit: Claude ymmärtää komponenttien vuorovaikutuksen ja testaa ne yhdessä.
Edge caset: Claude löytää reunatapauksia joita et itse välttämättä huomaisi - null-arvot, tyhjät taulukot, virhetilanteet.
# Kirjoita testit yhdelle tiedostolle:
> kirjoita yksikkötestit src/lib/utils/format.ts tiedostolle
# Kirjoita testit kansiolle:
> kirjoita testit kaikille src/lib/ funktioille
# Kohdistetut testit:
> kirjoita testit jotka kattavat virhetilanteet src/api/users.ts tiedostossa
# Testit olemassa olevan koodin pohjalta:
> katso miten muut testit on kirjoitettu tässä projektissa
> ja kirjoita vastaavat testit src/lib/auth.ts tiedostolle
# Aja ja korjaa:
> aja testit ja korjaa ne jotka eivät mene läpiKun kohtaat virheen, Claude Code osaa analysoida sen syvällisesti:
Virheviestien tulkinta: Kopioi virheviesti tai kerro Claudelle mitä tapahtuu. Claude analysoi virheen ja ehdottaa korjauksia.
Stack tracen analyysi: Claude osaa lukea stack tracen ja löytää virheen alkuperän - myös monimutkaisissa ketjuissa.
Tyyppivirheet: TypeScript-tyyppivirheet ovat Claudelle helppoja. Se ymmärtää tyyppijärjestelmän syvällisesti.
# Virheviesti suoraan Claudelle:
> saan tämän virheen kun ajan sovelluksen:
> "Error: NEXT_NOT_FOUND - Route /api/users not found"
> mistä tämä johtuu?
# Stack trace analyysi:
> tämä stack trace tulee tuotannosta, analysoi ja korjaa:
> [liitä stack trace]
# Putkita virheloki:
cat build.log | claude "analysoi nämä build-virheet ja korjaa ne"
# Runtime-virhe:
> sovellus kaatuu kun käyttäjä kirjautuu sisään
> virheilmoitus on "Cannot read properties of null (reading 'email')"
> tutki ja korjaa
# TypeScript-virheet:
> korjaa kaikki TypeScript-virheet tässä projektissa
# Claude ajaa tsc --noEmit, analysoi virheet ja korjaa neYksi Claude Coden parhaista käyttötapauksista on CI-putkessa hajonnut buildi tai testit:
Työnkulku: 1. CI raportoi virheestä 2. Anna Claudelle CI-lokit tai virheviesti 3. Claude analysoi ongelman 4. Claude korjaa koodin 5. Voit tarkistaa ja pushata korjauksen
Tämä toimii erityisen hyvin one-shot-komennolla, jolloin voit automatisoida korjauksen.
# CI-virheen korjaaminen:
> CI failaa tässä branchissa, tässä on virheloki:
> [liitä CI-loki]
> korjaa ongelma
# One-shot CI-korjaus:
claude "CI failaa lint-vaiheessa. Aja npm run lint ja korjaa kaikki virheet."
# Testien korjaus CI:ssä:
claude "nämä testit failaavat CI:ssä: [testien nimet]. Korjaa ne."
# Build-virheen korjaus:
> production build failaa, aja build ja korjaa virheet
# Claude: npm run build
# Analysoi virheet
# Korjaa tiedostot
# Ajaa buildin uudelleenClaude Code auttaa myös suorituskykyongelmien tutkimisessa:
Hidas koodi: Claude osaa analysoida koodin ja löytää suorituskykypullonkauloja.
Muistivuodot: Claude tunnistaa tyypilliset muistivuotopatternit React-sovelluksissa ja Node.js-palvelimissa.
Tietokantakyselyt: Claude osaa optimoida SQL-kyselyitä ja tunnistaa N+1-ongelmia.
# Suorituskykyanalyysi:
> tämä API-endpoint on hidas (vastausaika 3s).
> tutki src/api/products.ts ja optimoi
# React-renderöintiongelma:
> tämä komponentti renderöityy liian usein.
> analysoi src/components/ProductList.tsx ja optimoi
# Tietokantaoptimointy:
> nämä tietokantakyselyt ovat hitaita.
> analysoi ja ehdota indeksejä tai kyselyoptimointeja
# Muistivuoto:
> sovelluksen muistinkäyttö kasvaa ajan myötä.
> tutki onko muistivuotoja ja korjaa neClaude Code voi systemaattisesti parantaa projektisi testikattavuutta:
Prosessi: 1. Claude tarkistaa nykyisen testikattavuuden 2. Tunnistaa testaamattomat tiedostot ja funktiot 3. Kirjoittaa puuttuvat testit 4. Ajaa testit ja varmistaa toimivuuden
Hyviä pyyntöjä: - "Paranna testikattavuutta src/lib/ kansiossa" - "Mitä funktioita ei ole testattu?" - "Lisää edge case -testit olemassa oleviin testeihin" - "Kirjoita integraatiotestit API-endpointeille"
# Tarkista kattavuus:
> aja testit kattavuusraportilla ja kerro mikä puuttuu
# Kirjoita puuttuvat testit:
> analysoi testikattavuusraportti ja kirjoita testit
> tiedostoille joilla on alle 80% kattavuus
# Edge case -testit:
> lisää edge case -testit src/lib/validators.ts testeille:
> - tyhjä input
> - null/undefined
> - erittäin pitkä string
> - erikoismerkit
# Aja kaikki ja varmista:
> aja kaikki testit ja varmista ettei mikään ole rikkiClaude Code tukee kaikkia yleisiä testikehyksiä: Jest, Vitest, Mocha, Pytest, Go test, jne. Se tunnistaa automaattisesti projektin käyttämän kehyksen ja kirjoittaa testit sen mukaisesti.
Kyllä, Claude voi ajaa testit osana agenttista työnkulkua. Se ajaa testit, analysoi tulokset ja korjaa virheet itsenäisesti.
Kopioi tuotannon virheloki tai stack trace ja anna se Claudelle. Se analysoi virheen, etsii koodista ongelmakohdan ja ehdottaa korjausta. Voit myös putkittaa logitiedoston: `cat error.log | claude "analysoi ja korjaa"`.
Opas Claude Coden käyttöön tiimeissä - jaetut konfiguraatiot, hooks ja parhaat käytännöt.
Opi miten Clauden agenttinen toiminta toimii - anna Clauden suunnitella ja toteuttaa monivaiheisia tehtäviä.
Opas Git-operaatioihin ja GitHub-työnkulkuihin Claude Coden avulla.
Löydä lisää vinkkejä ja oppaita Claude Coden tehokäyttöön.
Kaikki Claude Code -oppaat