Suona personalmente come se i tuoi test di accettazione comprendessero le proprietà dei test di integrazione e che tu stia cercando di "uccidere due piccioni con una fava" come dice il proverbio.
Nel modello tradizionale a cascata un singolo test di accettazione dovrebbe determinare se un singolo requisito è stato soddisfatto. Se si sviluppa in base a un rigoroso documento SRS, è possibile che anche la convalida dell'input di base sia definita in modo esplicito e in base alla natura del test di accettazione deve essere testato manualmente per essere verificato.
Nel modello Agile, tuttavia, i Test di accettazione verificano una singola storia utente, un test di alto livello per verificare l'esigenza di un alto livello degli stakeholder dell'utente. In genere, nel modello Agile, è necessario comprendere il controllo e le specifiche a grana fine su aspetti quali la convalida dell'input, a meno che tale convalida non sia univoca o specifica per le esigenze aziendali.
In ogni caso, nell'esempio in cui si desidera verificare che un record duplicato non sia stato inserito in un database è di gran lunga troppo basso per un utente, si potrebbe dire che è uno spreco di tempo prezioso per elevarsi al importanza di un test di accettazione. La garanzia di qualità o il tester per tale funzione dovrebbero essere in grado di verificare che il requisito di alto livello sia stato rispettato senza difetti evidenti.
I tuoi test devono essere suddivisi:
Test unità automatizzati
Per i test di livello più basso, tipicamente scritti e eseguiti dallo sviluppatore per verificare tutte le funzionalità di uno specifico componente o livello di applicazione a parte, indipendente di altre aree di l'applicazione e riproducibile da eseguire più volte.
Test di integrazione
Questi test, come i test unitari, possono verificare situazioni come la creazione di un nuovo record Persona, su tutti i livelli di sistema, la verifica dell'integrazione di tutte le dipendenze dell'applicazione mentre si verifica che la creazione di un nuovo record Persona o la creazione di un record Persona duplicato venga creato correttamente.
Il caso per i test di integrazione
Uno degli aspetti più importanti di questo tipo di test è che le loro sono varie strategie non solo per Automatizzare questi test, ma possono anche utilizzare le transazioni del database per farle funzionare in parallelo e non in conflitto, e anche questa transazione di database può essere ripristinata quando il test ha terminato di riportare il database su una lavagna pulita e renderlo riproducibile .
Considero che sulla base della tua domanda la maggior parte dei tuoi "Test di accettazione" non sono terribilmente interessanti e sarebbero meglio automatizzati. Questo non vuol dire che il test di accettazione non dovrebbe verificarsi, ma dovrebbe essere fatto su un livello molto più elevato a dove questi problemi non sono più importanti.