Sto provando a decidere come creare una serie di test di accettazione per un'applicazione web Java-EE.Come eseguire i test dopo la distribuzione utilizzando Maven?
Ecco la configurazione: Maven viene utilizzato per generare un file WAR e distribuirlo in Glassfish. Alla distribuzione, lo schema del database MySQL viene automaticamente aggiornato dalle classi del modello usando Hibernate (opzione "hbm2ddl = auto").
I test di accettazione devono testare il codice distribuito richiamando vari metodi e verificando che i risultati siano come previsto (*). Abbiamo scritto un set aggiuntivo di pacchetti da collegare a un sistema esistente in modo che i test di accettazione mostrino come questi possono essere integrati nella base di codice esistente.
(*) Questo può sembrare più simile a Unità/Test di integrazione, ma sono test di accettazione nel senso che dovrebbero dimostrare che cosa abbiamo fatto e devono essere eseguiti dopo la distribuzione in modo che sia presente un database.
Da quanto sopra, il mio pensiero corrente è di usare JUnit per controllare i valori attesi, ecc. Il problema con cui sto combattendo è come richiamare questi test dopo la distribuzione. "deploy" è l'ultima fase di Maven, quindi non è sicuro se questo è possibile?
Non sono sicuro che sia davvero necessario eseguire l'implementazione prima del test. Per il test di integrazione, possiamo usare DBUnit e il database sarà disponibile sul posto. –
Grazie, ma è vero anche se il database viene generato dalle classi usando Hibernate? Non ho mai usato DBUnit (ma l'ho incontrato qui alcune volte quando cercavo di trovare delle risposte per questo), quindi avrei dovuto esaminare questo. –
sì, è vero; Attualmente lo uso per i test di integrazione. –