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.
Penso che la CRUD che hai menzionato nei test di scoperta sia rilevante solo per le API REST. – Renaud