Per riferimento - link
Ho uno scenario di prova in cui in un modulo di applicazione è responsabile della creazione di voci di contabilità generale. Ci sono tre attività di base che potrebbero essere svolte -
- Visualizza le voci della contabilità in formato tabella.
- Crea una nuova voce mastro utilizzando il pulsante crea.
- Fare clic su una voce di contabilità generale nella tabella (menzionata nel primo puntatore) e visualizzarne i dettagli nella pagina successiva. In questa pagina puoi annullare la voce di un libro mastro.
(Ci sono un paio di operazioni / convalide in ogni pagina ma per brevità lo limiterò a queste)
Quindi ho deciso di creare tre classi diverse -
- LedgerLandingPage
- CreateNewLedgerEntryPage
- ViewLedgerEntryPage
Queste classi offrono i servizi che potrebbero essere eseguiti in quelle pagine ei test di selenio usano queste classi per portare l'applicazione in uno stato in cui potrei fare certe asserzioni.
Quando lo stavo rivedendo con il mio collega, lui era sopraffatto e mi ha chiesto di fare una sola lezione per tutti. Anche se ritengo che il mio progetto sia molto pulito, dubito che mi stia abusando del principio di responsabilità singola