Source: https://aiprimetech.io/it/claude-code/qa-automation/ [Home](/it/) › [Claude Code](/it/claude-code/) › Automazione QA [Panoramica](/it/claude-code/)[Installazione](/it/claude-code/install/)[riferimento della CLI](/it/claude-code/cli/)[Prezzi e limiti](/it/claude-code/pricing/)[Agent SDK](/it/claude-code/sdk/)[Skill e plugin](/it/claude-code/skills/)[GitHub](/it/claude-code/github/)[Web, desktop e IDE](/it/claude-code/web-and-desktop/)[Modelli](/it/claude-code/models/)[Errori](/it/claude-code/errors/)[È open source?](/it/claude-code/open-source/)[Tutorial](/it/claude-code/tutorial/)[Per studenti](/it/claude-code/for-students/)[Automazione QA](/it/claude-code/qa-automation/)[Confronto con Cursor](/it/claude-code/vs-cursor/)[Confronto con Codex e OpenCode](/it/claude-code/vs-codex/)[Subagenti](/it/claude-code/subagents/)[Hook](/it/claude-code/hooks/)[MCP](/it/claude-code/mcp/)[Ecosistema](/it/claude-code/ecosystem/)[VS Code](/it/claude-code/vscode/)[OpenRouter](/it/claude-code/openrouter/)[Limiti di frequenza](/it/claude-code/rate-limits/)[Guida in cinese](/claude-code/zh/) Ultimo aggiornamento: 11 ottobre 2026 # Come usare Claude Code per l'automazione QA Claude Code è particolarmente efficace nel lavoro di QA perché il QA è un ciclo che può completare da solo: scrivere il test, eseguirlo, leggere l'errore, correggere il test o il codice ed eseguirlo di nuovo. Questa guida illustra la configurazione pratica, dal primo file di test generato a un'esecuzione senza interfaccia su ogni pull request. ## TLDR - Forniscigli il comando del test runner in CLAUDE.md e scriverà, eseguirà e correggerà i test senza bisogno di spiegargli come fare. - Gli input migliori: una specifica, una segnalazione di bug con i passaggi per riprodurlo o un file di test esistente da usare come modello. - Senza interfaccia: claude -p con --allowedTools in CI; la GitHub Action fa lo stesso sulle pull request. - End-to-end: un server MCP per Playwright gli consente di controllare un browser reale; mantieni brevi queste sessioni. ## Cosa può fare Claude Code in un flusso di lavoro QA - Generare test unitari per un modulo, usando lo stile e il framework già adottati nel progetto. - Trasformare una segnalazione di bug in un test di regressione che fallisce, quindi correggere il codice finché il test non passa. - Aggiungere i casi limite mancanti a una suite esistente (input vuoto, Unicode, timeout, concorrenza). - Scrivere test end-to-end per Playwright o Cypress e, con un server MCP per browser, eseguirli su un'app in esecuzione. - Analizzare un'esecuzione CI fallita: leggere il log, trovare la causa, proporre o applicare la correzione. - Esaminare una pull request per individuare percorsi non coperti dai test e pubblicare i risultati. Ciò che non può fare è decidere cosa conta. Raggiungerà senza problemi una copertura delle righe del 100% con test che non verificano nulla di utile. La qualità del risultato dipende dalla qualità delle istruzioni: per questo la configurazione seguente parte dal file di memoria anziché dal prompt. ## Configurazione: spiegagli come si eseguono i test ``` # CLAUDE.md ## Testing - Unit tests: `npm test` (vitest). Files live next to the source as `*.test.ts`. - E2E: `npx playwright test`, specs in `e2e/`. Needs the dev server: `npm run dev`. - Always run the relevant test file after editing it. Do not mark a test `.skip` to make the suite pass. - Prefer table-driven tests; one behaviour per `it()`; no snapshot tests for logic. ``` Quel blocco fa la differenza tra un agente che procede per tentativi e uno che si comporta come un collega che ha letto la guida ai contributi. Aggiungi lo stile delle asserzioni desiderato e le cose che non vuoi mai che faccia (simulare il database con mock, saltare i test, modificare le fixture per farle coincidere con un output errato). ## Generare test da una specifica o da una segnalazione di bug ``` > Read src/billing/prorate.ts. Write vitest tests covering the documented behaviour in docs/billing.md, including month boundaries, leap years and a zero-day period. Run them; if any fail, tell me whether the code or the doc is wrong before changing code. ``` ``` > Bug #412: uploading a 0-byte file returns 500 instead of 400. Write a failing test that reproduces it, then fix the handler so the test passes. Do not touch other tests. ``` L'ultima frase di ogni prompt conta. "Dimmi se è sbagliato il codice o la documentazione" gli impedisce di modificare silenziosamente il comportamento per adattarlo a un test appena inventato; "non toccare gli altri test" evita il classico errore di modificare un'asserzione non correlata per far passare i test. ## Il ciclo di esecuzione e correzione Chiedigli di eseguire il test dopo averlo scritto. Legge l'output dell'errore, apporta modifiche e lo esegue di nuovo, di solito per due o tre iterazioni. Fai attenzione alle richieste di autorizzazione: autorizza Bash(npm test*) e Bash(npx playwright test*) una volta con /permissions in modo che il ciclo non venga interrotto, e mantieni la richiesta di conferma per i comandi distruttivi. Se ripete il ciclo più di quattro o cinque volte per un solo test, fermalo: probabilmente il test sta verificando la cosa sbagliata e serve una verifica umana. ## Esecuzione senza interfaccia in CI ``` # generate regression tests for whatever changed, non-interactively git diff --name-only origin/main...HEAD | grep -E 'src/.*\.ts$' > changed.txt claude -p "For each file in changed.txt, add or extend tests for the changed behaviour. Run them." \ --allowedTools "Read,Edit,Write,Bash(npm test*),Bash(git diff*)" \ --max-turns 25 --output-format json > claude-qa.json ``` La modalità di stampa non fa mai domande, quindi tutto ciò che può fare deve essere autorizzato in anticipo con --allowedToolse --max-turns limita il ciclo. Imposta ANTHROPIC_BASE_URL=https://aiprimetech.io e una chiave del gateway come segreti CI: l'esecuzione verrà addebitata sul saldo del gateway o sul piano illimitato. Salva il risultato con un commit su un branch e fallo esaminare da una persona; non unire automaticamente i test generati. ## Su ogni pull request: la GitHub Action La GitHub Action di Claude Code esegue lo stesso ciclo quando qualcuno lascia un commento @claude su una pull request, oppure automaticamente alla sua apertura. Un'istruzione orientata alla QA nel workflow — "esamina questa PR per individuare i rami non coperti dai test e aggiungi test per verificarli" — offre a ogni PR un primo controllo prima che venga esaminata da un revisore. La guida GitHub spiega l'installazione dell'app, il file del workflow e i costi. ## Test end-to-end con Playwright Due livelli. Senza un browser, scrive le specifiche Playwright a partire dalla struttura della pagina e dalla tua descrizione, e tu le esegui. Con un server MCP Playwright collegato (/mcp), può aprire l'app, fare clic per percorrere il flusso, leggere il DOM e scrivere un test che corrisponde a ciò che ha osservato — con selettori molto più affidabili, al costo di una sessione più lunga. Limita ogni sessione del browser a un solo flusso ed esegui /clear tra una sessione e l'altra; screenshot e dump del DOM sono voluminosi e vengono reinviati a ogni turno. ## Contenere i costi delle esecuzioni QA - Usa il livello Sonnet; la generazione di test raramente richiede Opus. Il livello Haiku va bene per l'analisi preliminare dei log. - Indirizzalo a un modulo o a un bug alla volta. "Aggiungi test per l'intero repository" è il prompt più costoso in assoluto. - /compact dopo l'aggiunta di ogni file di test; i log degli errori che ha letto non sono più utili. - In CI, imposta un limite con --max-turns ed esegui solo sui file modificati. - Per un team che lo esegue ogni giorno, un piano illimitato a tariffa fissa elimina del tutto la questione del costo per token. | Piano | Durata | Prezzo | Illimitato per 1 ora | 1 ora | $1 | Illimitato per 24 ore | 24 ore | $10 | Illimitato per 1 settimana | 1 settimana | $49 | Illimitato per 15 giorni | 15 giorni | $89 [Tutti i piani illimitati →](/it/plans/) ## Provalo prima gratuitamente I nuovi account ricevono $5 di credito API gratuito con il codice CLAUDECODE — abbastanza per una serata con Claude Code su Sonnet — poi crediti pari a 7.69231× il valore nominale. ``` export ANTHROPIC_BASE_URL=https://aiprimetech.io export ANTHROPIC_API_KEY=your_key ``` [Crea un account con il codice CLAUDECODE](/register?promo=CLAUDECODE) ## Domande frequenti Claude Code può scrivere test unitari? Sì — usando il framework e lo stile già adottati nel progetto, se CLAUDE.md li specifica. Chiedigli di eseguirli dopo averli scritti, così correggerà i propri errori.Claude Code può eseguire test Playwright? Sì. Può scrivere specifiche autonomamente e, con un server MCP Playwright, può controllare un browser reale per crearle e verificarle.Claude Code è valido per l'automazione QA? Molto, per generare test, completare il ciclo di scrittura, esecuzione e correzione e analizzare i problemi della CI. Non sostituisce la decisione su cosa debba essere testato, e i test generati richiedono comunque una revisione umana prima del merge.Come eseguo Claude Code in CI per i test? Usa claude -p con --allowedTools e --max-turns, le credenziali del gateway o di Anthropic come secret, e salva l'output con un commit su un branch per la revisione. La GitHub Action racchiude lo stesso meccanismo per le pull request. ## Esegui Claude Code sul gateway Stessi modelli, due variabili d'ambiente, crediti pari a 7.69231× il valore nominale — oppure un piano illimitato a tariffa fissa. Nuovi account: $5 di credito API gratuito con il codice CLAUDECODE.[Ottieni una chiave API](/register?promo=CLAUDECODE) [Scopri i piani illimitati](/it/plans/) AI Prime Tech è un gateway API indipendente e non è affiliato ad Anthropic, né approvato o sponsorizzato da Anthropic. «Claude» e «Claude Code» sono marchi di Anthropic. Le funzionalità di Claude Code descritte qui rispecchiano la documentazione pubblica di Anthropic al momento della stesura e cambiano frequentemente; i prezzi e gli elenchi dei modelli presenti in questa pagina vengono letti dalle impostazioni attuali di questo gateway. ## Altre guide su Claude Code [Claude Code: la guida completa](/it/claude-code/)[Come installare Claude Code](/it/claude-code/install/)[Documentazione della CLI di Claude Code: comandi e flag](/it/claude-code/cli/)[Prezzi e limiti di Claude Code, spiegati](/it/claude-code/pricing/)[L'SDK di Claude Code, ora Claude Agent SDK](/it/claude-code/sdk/)[Skill e plugin di Claude Code](/it/claude-code/skills/)[Claude Code in GitHub: App, Action e @claude](/it/claude-code/github/)[Claude Code ha un'interfaccia web? Le versioni web, desktop e per IDE spiegate](/it/claude-code/web-and-desktop/)[Quale modello usa Claude Code e come cambiarlo](/it/claude-code/models/)[Errori di Claude Code e come risolverli](/it/claude-code/errors/)[Claude Code è open source?](/it/claude-code/open-source/)[Tutorial di Claude Code: la tua prima sessione reale](/it/claude-code/tutorial/)[Claude per studenti: Claude Code, l'API e ciò che offre davvero il settore education](/it/claude-code/for-students/)[Claude Code e Cursor a confronto: quale scegliere, quando — e come usarli entrambi](/it/claude-code/vs-cursor/)[Claude Code vs Codex vs OpenCode: confronto tra gli agenti da terminale](/it/claude-code/vs-codex/)[Subagenti di Claude Code: come funzionano, come definirli e team di agenti](/it/claude-code/subagents/)[Hook di Claude Code: controllo deterministico su ciò che fa l'agente](/it/claude-code/hooks/)[MCP in Claude Code: connessione ai server, ambiti, MCP remoto ed esempi concreti](/it/claude-code/mcp/)[L'ecosistema Claude Code: router, framework, plugin e gli elenchi che li raccolgono](/it/claude-code/ecosystem/)[Claude Code in VS Code: l'estensione, l'uso dal terminale e gli errori](/it/claude-code/vscode/)[Come usare OpenRouter in Claude Code (e quando evitarlo)](/it/claude-code/openrouter/)[Errore di limite di frequenza di Claude: cosa significa "Errore API: limite di frequenza raggiunto" e come risolverlo](/it/claude-code/rate-limits/)[Come usare Claude Code: dall'installazione all'uso quotidiano](/claude-code/zh/)