View a markdown version of this page

Test di rilascio - AWS DevOps Agente

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Test di rilascio

I test di rilascio generano ed eseguono piani di test per convalidare le modifiche al codice in ambienti realistici. L'agente di release testing esegue test UAT e regressione esplorativi (regressione funzionale, convalida del percorso utente, test di integrazione ed esplorazione dei casi limite) rispetto alle applicazioni Web e alle API REST distribuite.

Come funzionano i test di rilascio

Importante

Il test di rilascio esegue richieste reali sull'applicazione di destinazione, incluse le operazioni di scrittura (POST, PUT, DELETE). L'agente esplora gli endpoint, invia moduli e verifica la gestione degli errori: queste azioni possono creare, modificare o eliminare dati nell'applicazione di destinazione. Utilizzatele solo laddove il vostro profilo di rischio sia in grado di accettare azioni mutanti nell'ambito dei test esplorativi. Assicurati che le tue applicazioni siano in grado di tollerare operazioni di scrittura esplorative senza conseguenze indesiderate, come l'invio di notifiche ai clienti, l'elaborazione dei pagamenti o l'eliminazione definitiva dei record. Consigliamo di utilizzare implementazioni temporanee; le applicazioni di produzione devono essere prese di mira solo quando le operazioni di scrittura dell'applicazione sono sicure per i test automatici.

Quando viene attivato, l'agente di test di rilascio:

  1. Genera un piano di test: crea un piano di test basato sulle modifiche al codice o sull'intento di test fornito dall'utente. Quando viene attivato da una pull request o da una branch, il piano mira alle funzionalità interessate. Se attivato manualmente o dalla chat, puoi fornire un intento di test che descriva cosa convalidare. Il piano copre la correttezza funzionale, il comportamento di integrazione e gli scenari rivolti all'utente.

  2. Esegue test su un'applicazione in esecuzione: dato un URL di destinazione (applicazione Web o endpoint API), l'agente esplora l'applicazione ed esegue i test generati. Per le applicazioni Web, ciò include l'interazione dell'interfaccia utente basata su browser e l'ispezione visiva. Per le API, ciò include il test diretto degli endpoint HTTP, la convalida dello schema e la verifica della gestione degli errori.

  3. Riporta i risultati: i risultati vengono restituiti con errori specifici, funzionalità compromesse, fasi di riproduzione e correzioni consigliate.

Il test di rilascio supporta applicazioni web (React, Angular, Vue, renderizzate dal server) e API REST.

Tipi di test supportati

  • Test dell'interfaccia utente: Browser-based test con interazioni visive per applicazioni Web

  • Test delle API: test diretti degli endpoint HTTP per le API REST

Definizione dei profili di test

I profili di test definiscono le applicazioni Web e API che desideri testare e le configurazioni necessarie. Ogni profilo di test specifica un'applicazione di destinazione e il relativo tipo di test.

Per creare un profilo di test:

  1. Nell'app web DevOps Agent, accedi a Release Manager nella barra di navigazione a sinistra.

  2. Seleziona il pulsante Test profiles.

  3. Scegli Aggiungi profilo di test.

  4. Compila il modulo con i seguenti dettagli:

    • Nome: un nome descrittivo per il profilo di test (ad esempio, "MyApp Staging»)

    • URL di destinazione: l'URL di una distribuzione temporanea o di test dell'applicazione. L'agente invia traffico HTTP reale, comprese le operazioni di scrittura (POST, PUT, DELETE). Non utilizzate URL di produzione a meno che non comprendiate e accettiate il rischio di modifica dei dati.

    • Tipo di test: seleziona il test dell'interfaccia utente (test basato su browser con interazioni visive) o il test dell'API (test diretto degli endpoint HTTP)

  5. Scegli Aggiungi profilo di test per salvare.

Esecuzione di test da un profilo di test

Dalla pagina dei profili di test, puoi attivare manualmente un'esecuzione di test:

  1. Individua il tuo profilo di test nell'elenco.

  2. Scegli Inizia il test.

  3. (Facoltativo) Specificate istruzioni specifiche e cosa testare in Test intent. Ad esempio, «Verifica che il flusso di pagamento gestisca correttamente i coupon scaduti» o «Verifica il modulo di registrazione utente con input non validi».

L'agente genererà un piano di test basato sull'intento dell'utente (o lo esaminerà in modo approfondito se non viene fornito alcun intento), eseguirà i test e riporterà i risultati nella sezione Release Manager sotto le modifiche proposte.

Esecuzione dei test dalla chat dell'agente DevOps

Da DevOps Agent chat, puoi richiedere il test di rilascio. Chiedi all'agente di elencare i tuoi profili di test o di specificare quale eseguire. L'agente chiederà tutte le informazioni di follow-up necessarie, ad esempio cosa testare o su quali aree concentrarsi.

Esempi:

  • «Elenca i miei profili di test»

  • «Esegui il profilo di test my-test-profile»

  • «Esegui il test di rilascio sulla mia applicazione all'indirizzo https://staging.myapp.com e verifica il flusso di pagamento»

L'agente segnala i progressi compiuti durante l'esplorazione dell'applicazione e restituisce i risultati con risultati specifici, schermate (per i test dell'interfaccia utente) e fasi di riproduzione.

Esecuzione di test dal tuo IDE

Da Kiro IDE o Claude Code, l'agente di codifica può richiamare i test di rilascio:

Innanzitutto, installa il plugin Kiro power o Claude Code.

  • Specificate un requisito o un intento di test che descriva cosa convalidare (ad esempio, «verifica che il flusso di accesso funzioni dopo il refactor di autenticazione»)

  • L'agente di codifica trasmette l'intento di test e un profilo di test di destinazione all'agente di test di rilascio

  • L'agente di release testing genera ed esegue i test, quindi riporta i risultati

  • Se vengono rilevati problemi, l'agente di codifica si offre di risolverli sul posto

Test di rilascio nelle pipeline CI/CD

GitHub Azioni

L'aws-actions/devops-agent-release-testing@v1 GitHub azione attiva l'agente di release testing dopo la distribuzione e riporta i risultati come GitHub Check Run sulla richiesta di commit o pull.

Prerequisiti

Fase 1: Configurazione dei segreti GitHub del repository

Nel tuo GitHub repository, vai su Impostazioni → Segreti e variabili → Azioni → Segreti del repository e aggiungi:

Segreto Description
DEVOPS_AGENT_WEBHOOK_URL L'URL del webhook dal tuo Agent Space
DEVOPS_AGENT_WEBHOOK_SECRET Il segreto di firma del webhook dal tuo Agent Space

Per informazioni sulla creazione di un endpoint webhook, consulta. Richiamo DevOps dell'agente tramite Webhook

Passaggio 2: aggiungi l'azione al tuo flusso di lavoro

Aggiungi la fase di test di rilascio al tuo flusso di lavoro (ad esempio,.github/workflows/release-tests.yml):

name: Release Tests on: push: branches: [main] pull_request: branches: [main] permissions: checks: write contents: read pull-requests: read jobs: test: runs-on: ubuntu-latest steps: - name: Trigger Release Tests uses: aws-actions/devops-agent-qa@v1 with: webhook-url: ${{ secrets.DEVOPS_AGENT_WEBHOOK_URL }} webhook-secret: ${{ secrets.DEVOPS_AGENT_WEBHOOK_SECRET }} test-profile-id: <YOUR_TEST_PROFILE_ID> test-requirement: <WHAT_TO_TEST> # optional env: GITHUB_TOKEN: ${{ github.token }}

Sostituiscilo <YOUR_TEST_PROFILE_ID> con l'ID del profilo di test dal tuo Agent Space (inizia conki-). L'test-requirementinput è facoltativo: utilizzalo per concentrare l'agente su aree specifiche (ad esempio, «verifica il flusso di accesso dopo il refactor di autenticazione»).

Input d'azione

Input Richiesto Description
webhook-url L'URL del webhook dal tuo Agent Space
webhook-secret Il segreto della firma del webhook per l'autenticazione HMAC-SHA256
test-profile-id L'ID del profilo di test da attivare (inizia con) ki-
requisito del test No Area di interesse opzionale per i test

Autorizzazioni richieste per il flusso di lavoro

Autorizzazione Motivo
contenuti: leggi Obbligatorio per actions/checkout i repository privati
pull-request: leggi Risolve il numero PR da merge commit SHA

Come funziona

  1. I trigger del flusso di lavoro (ad esempio, dopo la distribuzione in un ambiente di staging).

  2. L'azione crea un Check Run (in_progress) sul commit o PR, che appare come un controllo in sospeso.

  3. L'azione firma e invia un webhook al tuo Agent Space.

  4. L'agente di release testing si occupa del compito ed esegue i test sulla vostra applicazione.

  5. I risultati vengono riportati sotto forma di GitHub Check Run (pass/fail con un riepilogo dettagliato).

Puoi visualizzare i dettagli completi dell'esecuzione (cronologia, casi di test, schermate per i test dell'interfaccia utente) nell'app web DevOps Agent collegata da Agent Space.

Revisione dei risultati dei test

I risultati dei test vengono visualizzati nella sezione Modifiche dell'app Web DevOps Agent, sotto le modifiche proposte. Ogni esecuzione del test mostra:

  • Stato: completato, non riuscito o in corso

  • Categoria: test di rilascio

  • Durata: quanto tempo è durato l'esecuzione del test

  • Fonte: indipendentemente dal fatto che sia stato attivato manualmente, dalla chat o da una pipeline CI/CD

Seleziona un'esecuzione di test per visualizzare i risultati dettagliati, tra cui errori di test specifici, schermate (per i test dell'interfaccia utente), fasi di riproduzione e correzioni consigliate.