Esempi che è possibile utilizzare

Questo esempio proxy spiega come estendere il funzionamento della registrazione di un controllo con SubItems e il supporto per la riproduzione corrispondente.

Funzioni estese: registrazione dei controlli con SubItems

Questo esempio proxy estende l'API proxy processSingleMouseEvent() per modificare il funzionamento della registrazione di un controllo spin. Nonostante un controllo spin abbia due pulsanti e un controllo di testo come i relativi elementi secondari, da una prospettiva di test, deve essere trattato come un singolo controllo senza elementi secondari nella mappa TestObject. In TestObjectMap, i pulsanti e il testo sono trattati come SubItems. L'implementazione processSingleMouseEvent() imposta i metodi con i SubItems adatti, ad esempio atButton("UP") oatButton("DOWN") come parametri per la registrazione. Inoltre, tenere presente che nonostante esistano oggetti child per il controllo spin, è necessario verificare che questi non siano riportati come TestObjects separati. Pertanto, le API getChildAtPoint() egetChildren() sono estese per restituire valori null. Questi oggetti child sono trattati come SubItems.

Supporto di riproduzione

Per supportare la riproduzione per ogni SubItem che viene introdotto durante la registrazione, Functional Tester ricerca il rettangolo di schermo per ogni SubItem mediante il proxy. Il rettangolo SubItem può essere fornito estendendo l'API proxy java.awt.Rectangle getScreenRectangle(Subitem subitem).

Distribuzione dei file binari

Copiare i file JSpinnerProxy.jar eJSpinnerProxy.rftcust nella directory di personalizzazione e riavviare Functional Tester per testare l'AUT (application-under-test) di esempio.

Verifica del funzionamento della registrazione

È possibile verificare il funzionamento della registrazione del controllo spin:

  • Prima di distribuire i proxy, quando si registrano i risultati dei pulsanti up edown di JSpinner, i clic sono registrati come button.click(), dove ogni controllo up e down è trattato come un controllo separato.
  • Dopo aver distribuito i proxy, il clic sul pulsante up è registrato come spinner().click(atButton("UP")). I pulsanti sono trattati e registrati come SubItems e non come TestObjects separati.

Verifica del funzionamento della riproduzione

  • Prima di distribuire i proxy, la riproduzione delle azioni utente con SubItems, ad esempio spinner().click(atButton("UP")) emette un'eccezione Punto non trovato.
  • Dopo aver distribuito i proxy, la riproduzione delle azioni utente con SubItems funziona correttamente.
Argomento principale: JSpinnerProxy

Feedback