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 rikkiMiten Claude Code otetaan käyttöön tiimissä? Opas jaettuihin CLAUDE.md-tiedostoihin, MCP-konfiguraatioihin ja Git-hookeihin.
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.