2013-02-19 23 views
5

Quando una nuova API viene creata dallo sviluppatore e inviata al tester per il test, come dovrebbe iniziare un nuovo tester API con il test di tale API?Che cosa significa test API?

Sembra una domanda semplice ma dopo aver letto molti articoli sull'API, ne sono completamente confuso.

Qualcuno può fornire un modo corretto per capire, cos'è un'API, perché è necessario, cosa devono essere testati e come possono essere testati?

Nota: Sono puramente nuova API e variare male hanno bisogno di imparare API e suoi concetti nel dettaglio

Grazie in anticipo

risposta

5

Un'API (Application Programming Interface) è una raccolta di funzioni software e procedure, chiamate API che possono essere eseguite da altre applicazioni software.

Gli sviluppatori di applicazioni utilizzano i collegamenti alle API esistenti per utilizzare le loro funzionalità.

Durante il test dell'API, viene eseguito un test per verificarne la funzionalità, a prescindere dal fatto che sia stato progettato per simulare l'utilizzo dell'API da parte delle applicazioni dell'utente finale.

I problemi per i quali i tester cercare sono:

per controllare i valori limite delle variabili

valori dei parametri per l'API dovrebbero essere abilitati in modo tale che possono chiamare con 2 o più parametri

il più importante per verificare il contenuto delle API e le loro impostazioni

spero che questo ti sia utile.

8

Esistono diversi approcci al test del software e la relazione tra test e lavoro di sviluppo può variare notevolmente da un team all'altro. Allo stesso modo, quanto è necessario testare una determinata API o componente è in definitiva una decisione di tempo/budget. In astratto, però, a prescindere dal processo SDLC, direi che il test API veramente completa dovrebbe coprire almeno i seguenti:

Documentazione

documentazione API dovrebbe essere parte del prodotto finale, e probabilmente dovrebbe essere scritto inizialmente dal dev, piuttosto che dal team di test. Il team di test deve garantire che la documentazione sia adeguata (quale "adeguato" significa variare con il pubblico previsto) e fornisce informazioni sufficienti per interagire con l'API.

test Discovery

Il gruppo di prova deve esercitare manualmente il set di chiamate documentate nella API (ad esempio, verificare che una particolare risorsa esposta dal API può essere creato, elencato, aggiornato, e all'occorrenza soppressi). Ciò può verificarsi tramite un client della riga di comando (ad esempio, cURL per un'API HTTP), tramite una libreria di wrapper API o tramite un client con script leggero.

Test di usabilità

Test di usabilità valuta se l'API è funzionale e accogliente dal punto di vista di un cliente (in genere uno sviluppatore di software), che verrà utilizzato per costruire qualcosa. L'API si integra bene con le piattaforme a cui è destinata? È coerente e ad un ragionevole livello di astrazione? Fondamentalmente, ha senso?

test di sicurezza

sono requisiti di sicurezza definiti per l'API? Che tipo di autenticazione, se esistente, è richiesta e quali strutture di autorizzazioni possono essere applicate? I dati sensibili vengono sempre crittografati, inviati tramite HTTPS o entrambi? Ci sono modi in cui le persone possono avere accesso a cose che non dovrebbero?

test automatici

In generale, i test API dovrebbe culminare nella creazione di un insieme di script o uno strumento, che può essere utilizzato per esercitare regolarmente l'API e segnalare errori con l'interazione umana minima.

+0

Penso che la CRUD che hai menzionato nei test di scoperta sia rilevante solo per le API REST. – Renaud