È possibile utilizzare i modelli di verifica EJB come supporto nel processo della verifica EJB. I modelli includono il modello di verifica del ciclo vitale EJB, il modello di verifica della logica business e il modello di verifica della facciata della sessione EJB.
Con le funzionalità della verifica automatica componenti, è possibile verificare gli EJB in modo remoto mediante le interfacce remote (remote e home) o localmente mediante le interfacce locali (locali e home locali). Quando si effettua la verifica localmente, la verifica viene distribuita sullo stesso server di applicazioni dell'EJB sottoposto a verifica.
Si consiglia di utilizzare il modello di verifica del ciclo vitale EJB per effettuare la verifica dei metodi di ciclo vitale dell'EJB (creazione di nuovi bean, rimozione di bean e ricerca di bean). Per ciascun metodo di ciclo vitale pubblicato nella home locale o interfaccia home, esiste un metodo di richiamo del metodo corrispondente nella classe bean dell'EJB che ne definisce l'implementazione. Ad esempio, per ciascun metodo create dell'interfaccia home, esiste un metodo corrispondente ejbCreate nella classe bean.
Il modello di ciclo vitale contribuisce a verificare i metodi di richiamo simulando numerosi scenari che potrebbero dar luogo al fallimento dei richiami. Tale modello di verifica controlla anche che lo stato di un bean sia corretto, nel caso di bean di sessioni stateful e di bean entity. Un esempio potrebbe essere la verifica del valore dei campi all'interno della classe bean. Per verificare tale valori è necessario fornire dati pertinenti nella tabella dati di verifica.
Il modello di ciclo vitale genera automaticamente un codice di verifica per gli scenari previsti per ciascun tipo di bean, semplificando in tal modo l'attività di verifica EJB.
Per verificare un bean di sessione stateless utilizzando il modello di verifica del ciclo vitale, viene generato un codice per verificare i metodi di callback ejbCreate() e ejbRemove() implementati nella classe di bean EJB. Vengono verificati i seguenti metodi di richiamo:
Vengono inclusi i seguenti scenari di verifica:
Per verificare un bean di sessione stateful utilizzando il modello di verifica del ciclo vitale, viene generato un codice per verificare lo stato del bean, in aggiunta al codice generato per verificare ejbCreate() e ejbRemove(). Vengono verificati i seguenti metodi di richiamo:
Vengono inclusi i seguenti scenari di verifica:
Per verificare i bean entity utilizzando il modello di ciclo vitale, è necessario generare ulteriore codice per verificare la persistenza e le ricerche nel database. Vengono verificati i seguenti metodi di richiamo:
Vengono inclusi i seguenti scenari di verifica:
Utilizzo del modello di verifica logica business EJB per verificare la logica business. La logica business viene solitamente implementata nei bean di sessione benché anche i bean entity possano talvolta contenerla. È consigliabile verificare la logica business stessa, ovvero, gli algoritmi che elaborano i dati in parametri e utilizzare la tabella dati di verifica per effettuare una verifica basata sui dati su un'ampia serie di dati di input.
Si consiglia di utilizzare il modello di verifica della facciata della sessione EJB per verificare l'implementazione del modello di progettazione della facciata di sessione. Il modello di progettazione viene utilizzato per fornire un'interfaccia logica business di livello superiore, per nascondere la complessità dell'applicazione al client e migliorare le prestazioni. Il modello di progettazione della facciata della sessione è la versione EJB del noto modello di facciata J2SE. Il modello di verifica della facciata della sessione viene comunemente usato per verificare un bean di sessione che chiama un bean entity locale. Come il modello della facciata della sessione solitamente racchiude un insieme di bean entity (il sottosistema)all'interno di uno strato di bean di sessione (la facciata della sessione), così il modello di verifica della facciata della sessione genera verifiche per il sottosistema presente dietro la facciata. Una pagina della procedura guidata della verifica consente di selezionare un EJB (solitamente un bean di sessione) e una serie di metodi per l'interfaccia business.
Si consideri ad esempio un sottosistema che consiste in tre EJB:
L'EJB TransferFunds contiene un metodo transferFunds, come visualizzato nel codice seguente:
public void transferFunds(String accountId1, String accountId2, int amount){ BankAccountHome bankAccountHome=getHome("",...); BankAccount bankAccount=bankAccountHome.findByPrimaryKey(accountId1); CardAccountHome cardAccountHome=getHome("",...); CardAccount cardAccount=cardAccountHome.findByPrimaryKey(accountId2); bankAccount.withDraw(amount); cardAccount.deposit(amount); }
Esaminando il metodo transferFunds, è possibile notare quanto segue:
In questo caso l'EJB TransferFunds EJB è la facciata e il sottosistema sottoposto a verifica consiste negli EJB BankAccount e CardAccount. È possibile utilizzare i Verifica automatica dei componenti per generare una verifica dei metodi del sottosistema, ovvero, findByPrimaryKey; findByPrimaryKey; withDraw; e deposit.
Concetti correlati
Processo di generazione verifica
Modelli di verifica per Java standard
Attività correlate
Creazione di nuovi progetti di verifica componenti
Creazione di verifiche per i metodi del ciclo vitale dei bean entity
Creazione di verifiche per i metodi ciclo di vita dei bean di sessione
Creazione di verifiche per metodi business EJB
Creazione di verifiche per l'aspetto sessione EJB