Unità 3 / 11

Test esplorativi e generazione di idee di test: caccia creativa ai bug con l'intelligenza artificiale

Guadagni:

  • Capacità di comprendere la natura basata sulla curiosità umana dei test esplorativi e di utilizzare l'intelligenza artificiale come partner per generare carte di test e indizi intuitivi
  • Capacità di diversificare gli assi di scoperta quali input, tempistica, formato, autorizzazione e interruzione e registrare nuovamente ogni anomalia con la fase di produzione
  • Possibilità di applicare il limite di utilizzo dell'intelligenza artificiale solo in fase di preparazione e conclusione mentre la sessione di scoperta stessa è condotta da esseri umani

Ogni caso di test scritto verifica qualcosa a cui si è già pensato. Ma gli errori più pericolosi spesso si nascondono in posti a cui nessuno aveva pensato prima. Il test esplorativo, un approccio di test in cui il tester apprende, progetta ed esegue simultaneamente il prodotto esplorandolo, senza fare affidamento su uno script pre-scritto, mira esattamente a questa lacuna. Nei test esplorativi, l’esperto gioca liberamente con il prodotto, si chiede “e se lo facessi” e rileva comportamenti inattesi del sistema. Questo è il tipo di test che si basa maggiormente sull’intuizione e sulla curiosità umana – ed è esattamente per questo che il ruolo dell’intelligenza artificiale (AI) qui non è quello di “sostituire” ma di amplificare la curiosità, evocare punti ciechi e generare idee.

In questa unità imparerai come utilizzare l'intelligenza artificiale come partner di test esplorativi: dalla stampa delle carte dei test, all'evocazione di euristiche, al riepilogo delle note post-sessione.

Perché i test esplorativi sono ancora un lavoro umano?

Il test con script – un test con passaggi scritti in anticipo e ripetuti parola per parola – conferma ciò che è noto; I test esplorativi cercano l’ignoto. Il valore dei test esplorativi deriva dal momento in cui il tester vede il prodotto e percepisce che "c'è qualcosa di strano qui". L'intelligenza artificiale non può vedere il prodotto come lo vedi tu, non può percepire cosa disturberebbe l'utente reale, non può essere disturbata dicendo "questo pulsante è nel posto sbagliato". Ma l’intelligenza artificiale è un aiuto molto potente in tre modi: (1) produce elenchi sistematici di idee di test, (2) ricorda ti assi di test che hai dimenticato, (3) trasforma le tue note di scoperta sparse in un rapporto organizzato.

Suggerimento: chiedi all’IA un “riscaldamento dell’idea di prova” prima di iniziare la sessione di scoperta; Non lasciare lo schermo all'IA durante la sessione. L'intelligenza artificiale è utile prima e dopo la sessione; La sessione stessa è guidata dalla tua curiosità.

Euristica e intelligenza artificiale

I tester esplorativi utilizzano euristiche, ovvero brevi promemoria che forniscono indicazioni nella caccia al bug. L’intelligenza artificiale può ricordarteli adattandoli al tuo contesto. Alcuni classici:

  • CRUD: prova il flusso Crea, Leggi, Aggiorna, Elimina per ciascun dato; interrompere qualcuno.
  • Riccioli d'oro (poco/intero/lotto): inserisci pochissimi, interi e molti dati in un campo (0 caratteri, 1 carattere, 10.000 caratteri).
  • CRUD + pianificazione: modifica lo stesso record in due schede contemporaneamente, quindi salvale entrambe.
  • Interruzione: aggiorna la pagina durante l'azione, disconnette la rete, premi backspace.
  • Ordine inverso: esegui i passaggi in ordine inverso (prima paga, poi aggiungi al carrello).

Quando dici all’intelligenza artificiale di “suggerire prove concrete applicando questi segnali intuitivi per quello schermo”, ottieni una lista di controllo pronta sul campo.

Scrivere una condizione di test (carta)

I test esplorativi non riguardano il vagare; Si concentra sulla carta del test (una breve direttiva che definisce cosa esplorerà una sessione di esplorazione e per quale scopo). Una buona carta segue questo schema: “Esplora [dominio di destinazione], utilizzando [strumenti/dati], per scoprire [quali informazioni/rischio]”. L'intelligenza artificiale elabora rapidamente questi termini.

Bilanciamento dei test con script con i test esplorativi

Una valida strategia di test utilizza una combinazione di test con script (automatizzati, ripetibili) e test esplorativi. I test con script verificano in modo economico che i comportamenti noti non siano interrotti, versione dopo versione; I test esplorativi, invece, cercano nuovi rischi che questi script non hanno mai considerato. I due non sono concorrenti, ma complementari. Un errore comune è pensare “automatizziamo tutto in modo che non ci sia bisogno di scoperte”; mentre l'automazione controlla solo ciò che già sai, non potrà mai trovare ciò che non sai. Un altro errore è l'opposto: affidarsi al rilevamento manuale con ogni versione senza impostare alcuna automazione: questo porta agli stessi bug di base a insinuarsi ancora e ancora.

L'intelligenza artificiale aiuta a stabilire questo equilibrio: puoi trasformare un'anomalia che trovi nella tua sessione di scoperta in un test di regressione programmato permanente fornendolo all'intelligenza artificiale. Pertanto, l'errore una volta scoperto nella scoperta non potrà mai più ripresentarsi senza essere rilevato. La scoperta si occupa di “trovare il nuovo rischio”, l'automazione si occupa di “non lasciare andare quello trovato”; L’intelligenza artificiale accelera il ponte tra i due.

Suggerimento: separa l'output di ciascuna sessione di rilevamento in due contenitori: "bug da correggere immediatamente" e "scenari da trasformare in automazione permanente". Il secondo bucket trasporta il valore a lungo termine della scoperta nel pacchetto di regressione.

Prompt debole / Prompt forte

Debole: "Cosa devo testare su questa schermata?"
Forte: "Per una funzione di 'caricamento di foto del profilo', dividere la sessione di test esplorativo di 90 minuti in 3 condizioni di test. Per ciascuna condizione: fornire l'obiettivo, indizi intuitivi da utilizzare (dimensione/formato/riccioli d'oro/troncamento del file), 5 azioni concrete da provare e segnali di rischio a cui prestare attenzione (rallentamento, immagine danneggiata, sicurezza). Affrontare in modo difensivo i rischi di caricamenti di file dannosi (file troppo grandi, estensione sbagliata)."

Prompt potente; fornisce durata, struttura, indizi e focus sul rischio. Il risultato è una road map che manterrai a portata di mano per tutta la sessione.

Tabella degli assi di esplorazione

asse

domanda da porre

saggio di esempio

Limiti di input

Cosa fa il campo a valori estremi?

Nome di 10.000 caratteri

tempistica

Cosa succede nell'elaborazione simultanea/interrotta?

Salva lo stesso record in due schede

Formato

Come gestire il formato imprevisto?

Emoji, testo da destra a sinistra, HTML

autorità

Gli utenti non autorizzati possono accedere?

Modifica l'URL manualmente

Stato

È possibile una transizione di stato non valida?

Prova a pagare per l'ordine annullato

detrazione

I dati sono coerenti quando la rete/sessione viene interrotta?

Interrompi la rete durante la registrazione

Quattro modelli copiabili

1) Generatore delle condizioni di test:

Il tuo ruolo: tester esplorativo senior. Suddividi la sessione esplorativa di [durata] minuti in 3-4 condizioni di test per la funzionalità:[funzionalità]. Ogni condizione: obiettivo, indizi intuitivi da utilizzare, 5 azioni concrete da provare, segnali di rischio da tenere d'occhio. Modello di condizione: "Esplora [dominio] con [strumento/dati] per [rischio/informazioni]."

2) Adattatore di stecca intuitivo:

Traduci questi indizi intuitivi in esperimenti concreti per la seguente schermata: CRUD, riccioli d'oro (meno/pieno/più), interruzione, ordine inverso, autorizzazione bypass. Schermata: [descrizione schermata/flusso]. Scrivi 2 esperimenti specifici dello schermo per ogni indizio.

3) Promemoria angolo cieco:

Sto testando la seguente funzionalità: [funzionalità]. Elenca i 10 casi in cui i tester esperti MAGGIOR PARTE mancano di questo tipo di funzionalità. Includere gli assi di accessibilità, localizzazione (lingua/data/valuta), concorrenza, sicurezza e prestazioni.

4) Riepilogo della nota della sessione:

Di seguito sono riportate le note grezze della mia sessione di scoperta. Organizzateli in questa struttura: - Anomalie riscontrate (con gravità stimata) - Quelle con una fase di riproduzione nota - Quelle che richiedono ulteriori indagini - Suggerimento per la sessione successiva Note grezze: [incolla note]

tre mini custodie

Caso 1: promemoria angolo cieco in azione. Un esperto stava testando la funzionalità di ricerca in un'applicazione multilingue. Dopo che AI ​​ha ricordato di "non dimenticare l'asse di localizzazione", ha provato la conversione delle lettere "i/I" specifica per il turco. La ricerca per "Istanbul" non ha prodotto alcun risultato; È stato rilevato un errore di conversione in minuscolo. L'asse AI ha ricordato, l'esperto ha provato e l'ha trovato.

Caso 2 — Focus della carta. Un nuovo tester ha trascorso 2 ore a "navigare" attraverso una schermata di pagamento, ma ha preso solo 2 piccole note perché non era strutturata. Dopo aver pianificato una sessione con l’AI divisa in 3 condizioni di test, ha registrato 11 anomalie nello stesso periodo; due di loro erano gravi. Lo stesso tempo è stato 5 volte più efficiente grazie alla struttura.

Caso 3: test difensivo del caricamento di file. Un team ha provato "l'estensione sbagliata/file troppo grande" suggerito da YZ caricando una foto del profilo, all'interno dei propri prodotti. È stato riscontrato che un file da 50 MB ha bloccato il server per 40 secondi e ha aggiunto un limite di dimensione e un timeout. I test sono stati effettuati solo sui propri prodotti, a scopo difensivo.

Errori comuni

  • Sostituzione dell'intelligenza artificiale con la sessione. Il valore della scoperta sta nella tua osservazione e intuizione; L’intelligenza artificiale aiuta nella preparazione e nel recupero.
  • Naviga senza prenotazione. Trascorrere ore senza concentrazione e trovare poco. La condizione di test fornisce il focus.
  • Non raccogliere appunti. Se non si salva nuovamente l'anomalia riscontrata nel ritrovamento con la fase di produzione, quel ritrovamento andrà perso.
  • Essere bloccato su un asse. Testare sempre i limiti dell’input; Aggirare autorità, programmazione, assi di localizzazione.
  • Condurre test di sicurezza non autorizzati. Tenta la manipolazione di file/URL solo sul tuo prodotto e con autorizzazione.

In sintesi

I test esplorativi sono il tipo di test che si basa maggiormente sulla curiosità umana, alla ricerca del non scritto. L’intelligenza artificiale non ti sostituirà qui; Delinea le condizioni del test, adatta gli indizi intuitivi al tuo contesto, ti ricorda i punti ciechi e trasforma le tue note disordinate della sessione in un rapporto organizzato. Il valore deriva dalla tua osservazione e intuizione; L’intelligenza artificiale focalizza e moltiplica questo valore. Scrivere condizioni, variare gli assi, registrare nuovamente i risultati con la fase di produzione, eseguire test di sicurezza solo previa autorizzazione.

Compito dell'applicazione

Scegli una funzionalità dal tuo prodotto. Dividi la sessione da 60 minuti in 3 condizioni utilizzando il modello "generatore di condizioni di test" con AI. Esegui la sessione (senza intelligenza artificiale, esplorando a mano), mantieni le note grezze. Una volta terminato, organizza le note con il modello “Riepilogo note sessione”. Risultato: almeno 5 anomalie, fase di rigenerazione per ciascuna e stima della gravità. Nota quale condizione di test e indizio intuitivo ha prodotto l'anomalia più preziosa che hai trovato.

lista di controllo

  • [ ] Prima della sessione ho creato le condizioni di prova con l'intelligenza artificiale e ho determinato il focus.
  • [ ] Ho provato almeno 4 diversi assi di scoperta (input, tempistica, formato, autorizzazione, interruzione).
  • [ ] Ho condotto la sessione manualmente, con la mia curiosità; Non ho sostituito l'intelligenza artificiale.
  • [ ] Ho registrato ogni anomalia con il relativo passo di riproduzione e stima della gravità.
  • [ ] Ho trasformato i miei appunti in un rapporto regolare con l'intelligenza artificiale.
  • [ ] Ho tentato solo di effettuare operazioni di sicurezza/manipolazione sul mio prodotto e con autorizzazione.