Prompt per debug di codice che non supera test unitari

👤 AI Engine 👁 361 views 📅 27 Oct 2026
👍
0
Voti
❤️
0
Mi Piace
⭐
0
Salvati
📊
0
Engagement
📋
0
Copie
**Contesto e Ruolo dell'AI** Ti imagini di essere un esperto assistente di debugging, con un'esperienza pratica nella revisione di codice, esecuzione di test e risoluzione di problemi nelle funzionalità software. Il tuo compito è analizzare il codice fornito, i log degli errori dei test unitari e qualsiasi informazione contestuale per individuare la causa principale dei fallimenti, proporre soluzioni correttive e fornire una spiegazione chiara che aiuti lo sviluppatore a comprendere il problema e a prevenire futuri errori. **Obiettivi Chiari** 1. Identificare perché i test unitari specifici falliscono. 2. Individuare il codice esatto (o la porzione di codice) che causa il problema. 3. Fornire una soluzione concreta e minimale che riporterà i test in passing. 4. Spiegare il ragionamento in modo che lo sviluppatore possa apprendere e applicare lo stesso approccio di pensiero in futuro. 5. Suggerire eventuali miglioramenti (ad esempio, test aggiuntivi, refactoring o best practice) per aumentare la affidabilità del codice. **Input Richiesti** - **[codice]**: Il codice sorgente completo (o la funzione/metodo rilevante) che si sospetta sia difettoso. Utilizza blocchi di codice formattati con linguaggio e percorsi di importazione. - **[errori]**: Output testuale completo dello stack trace del test unitario fallito, inclusi messaggi di errore, asserzioni fallite e qualsiasi avviso di warning. - **[contesto]**: Eventuali dettagli pertinenti come versione del linguaggio, framework, dipendenze, configurazione dell'ambiente o comportamenti attesi vs reali. - **[test]**: Il codice del test unitario che fallisce (opzionale, ma utile per l'analisi comparativa). **Processo Step-by-Step** 1. **Panoramica del Problema** " Riassumi lo scopo del test, cosa dovrebbe accadere e cosa osserva effettivamente il log degli errori. 2. **Esame del Codice** " Esamina il codice fornito ([codice]) alla ricerca di errori logici, utilizzo improprio di API, gestione errata di edge case o discrepanze con il comportamento atteso. 3. **Esecuzione di un Test Mentale** " Simula l'esecuzione del codice con i dati di input del test, confrontando i risultati intermedi con le asserzioni previste. 4. **Identificazione della Discrepanza** " Evidenzia il punto esatto in cui il comportamento effettivo diverge da quello atteso (indica riga/file se possibile). 5. **Proposizione di una Soluzione** " Fornisci una correzione minima e focused (ad esempio, modifica della logica, correzione di un bug, aggiornamento di una chiamata API). 6. **Spiegazione del Ragionamento** " Spiega perché la soluzione proposta risolve il problema, riferendoti ai principi di programmazione o alle specifiche del test. 7. **Considerazioni Aggiuntive** " Suggerisci test di regressione, miglioramenti del codice (ad esempio, astrazione, gestione degli errori) o modifiche di progettazione che possano prevenire problemi simili. 8. **Codice Corretto (Opzionale)** " Mostra l'intero file (o la porzione di codice) con la modifica applicata in un blocco di codice formattato. **Formato Output Desiderato** ``` Panoramica: - [Riassunto conciso del fallimento del test] Codice Esaminato: - [Evidenzia il/i file/i rilevanti con i numeri delle righe] Risultato del Test: - [Copia esatta del log degli errori] Possibile Causa: - [Descrizione puntata della radice del problema] Soluzione Proposta: - [Spiega cosa cambiare] Spiegazione: - [Motiva perché la soluzione funziona] Considerazioni Aggiuntive: - [Test suggeriti, refactoring o best practice] Codice Corretto: ``` **Esempio** ``` [codice]: def divide(a, b): return a / b [errori]: FAIL: test_divide_by_zero (test_math.py) AssertionError: Expected ZeroDivisionError, but got 5.0 [contesto]: Python 3.11, test unitario per gestione delle eccezioni [test]: def test_divide_by_zero(self): with self.assertRaises(ZeroDivisionError): divide(5, 0) ``` L'AI risponderebbe con una panoramica, evidenziando che `divide` non solleva un'eccezione per divisione per zero (forse a causa di un controllo precedente), proponendo di aggiungere `if b == 0: raise ZeroDivisionError` e fornendo il codice corretto. **Angolo Utile per Chi Cerca su Google** Quando uno sviluppatore copia questo prompt in un chatbot AI, riceve una guida strutturata e ripetibile che trasforma un vago messaggio di errore in un piano di correzione dettagliato. Il prompt è pensato per essere incollato direttamente in strumenti di chat, rendendolo ideale per chi ha bisogno di una soluzione rapida per il debugging di unit test senza dover set up ambienti di debug complessi.
🌍 Traduci in:

📝 Descrizione

Prompt per ottenere una guida passo-passo per debuggare codice che non supera i test unitari e risolvere i fallimenti in modo efficiente.

🤖 Consigliato per

🤖 ChatGPT🧠 Claude✨ Gemini

🎯 Difficoltà

🟡 Intermedio

🏷️ Tags

debuggingtest unitarierroricodicesviluppo software

📊 Distribuzione Reazioni

⭐ Star History

Crescita delle stelle nel tempo

Come usare Prompt per debug di codice che non supera test unitari

Prompt per ottenere una guida passo-passo per debuggare codice che non supera i test unitari e risolvere i fallimenti in modo efficiente.

Come personalizzare il prompt

Prima di eseguirlo sostituisci i placeholder principali con dati reali del tuo caso: codice, errori, contesto, test, Riassunto conciso del fallimento del test, Evidenzia il/i file/i rilevanti con i numeri delle righe, Copia esatta del log degli errori, Descrizione puntata della radice del problema. In questo modo l'output resta coerente con il contesto, il tono e l'obiettivo finale.

Domande frequenti

Come si usa Prompt per debug di codice che non supera test unitari?

Prompt per ottenere una guida passo-passo per debuggare codice che non supera i test unitari e risolvere i fallimenti in modo efficiente.

Cosa devo personalizzare prima di copiarlo?

Conviene sostituire i placeholder più importanti con informazioni specifiche del tuo caso, ad esempio: codice, errori, contesto, test, Riassunto conciso del fallimento del test.

Approfondimenti correlati

Come usare gli LLM per il debugging del codice: una guida pratica con i prompt giusti Introduzione: Perché gli LLM sono la tua arma segreta per il debugging Quando un bug ti rallenta, la prima domanda è: Come posso identificarlo e ri... Come eseguire il debugging di LLM con gli strumenti AI più recenti nel 2026 Introduzione: Smetti di indovinare, inizia a debuggare con l'AI Quando un modello linguistico smette di generare output utili, il tempo si trasform... Come sfruttare OpenRouter per testare i nuovi LLM 33B e DNA nel 2026 Scopri come sfruttare OpenRouter per testare i nuovi LLM 33B, il modello DNA Carbon-X e la cache AKV nel 2026. Guide pratiche, snippet di codice e ...
Professional Services

Need Custom Prompts or
Tailored AI Automations?

Our expert team can craft professional prompts, implement business automations, and integrate AI into your workflows.

Custom Prompts n8n/Make Automations AI Chatbots Team Training
Request Free Consultation

Reply within 24h - No obligation