Tutorial sul framework di automazione del test dell'interfaccia utente codificata

Anonim

Un tipico test di automazione del software richiede strumenti di automazione come Selenium e QTP. L'interfaccia utente codificata è simile a questi strumenti e può essere particolarmente utile per i test funzionali.

Coded UI Test (CUIT) usa l'IDE di Visual Studio per scrivere script, poiché la registrazione può essere eseguita utilizzando Visual Studio.

In questo tutorial imparerai-

  • Che cos'è il test codificato dell'interfaccia utente (CUIT)?
  • Funzionalità di test codificato dell'interfaccia utente
  • Tecnologie supportate dal test codificato dell'interfaccia utente (CUIT)
  • Perché utilizzare l'interfaccia utente codificata per l'automazione dei test
  • Come creare test UI codificati (CUIT)
  • Contenuto di un test codificato dell'interfaccia utente
  • Come eseguire il test dell'interfaccia utente codificato
  • Best practice per il test codificato dell'interfaccia utente (CUIT)
  • Confronto tra test UI codificato vs. Selenio contro QTP

Che cos'è il test codificato dell'interfaccia utente (CUIT)?

I CUIT sono test automatizzati che guidano la tua applicazione attraverso la sua interfaccia utente (UI). Quindi, il nome coded UI tests (CUITs). Questi test comportano test funzionali dei controlli dell'interfaccia utente. Controlla la funzionalità dell'intera applicazione inclusa l'interfaccia utente.

Funzionalità di test codificato dell'interfaccia utente

Le funzionalità dell'interfaccia utente codificata includono

  • Test funzionali
  • Genera codice in VB / C #
  • Integrato con la storia di ALM
    • Crea, distribuisci e testa in laboratorio o come parte di una build
    • Locale, corse remote, raccolta dati
  • Ricca estensibilità
  • Registrazione sensibile agli intenti e riproduzione resiliente

Tecnologie supportate dal test codificato dell'interfaccia utente (CUIT)

Con l'interfaccia utente codificata, un'applicazione dotata di interfaccia utente (interfaccia utente) può essere facilmente testata. L'applicazione può essere basata su finestre o sul web.

L'interfaccia utente codificata supporta tecnologie come

  • Applicazioni desktop basate su finestre
  • Servizi Web (SOAP, ASPX, ecc.)
  • Applicazioni per Windows Phone
  • WPF (Windows Presentation Foundation)
  • Applicazioni web (HTML, Silverlight, HTML5)

Perché utilizzare l'interfaccia utente codificata per l'automazione dei test

Il motivo per cui è preferibile l'interfaccia utente codificata per l'automazione dei test

  • Sviluppatori e tester di software possono collaborare in modo efficace utilizzando gli stessi strumenti / linguaggio.
  • Supporta sia i web che i progetti Windows.
  • Il meccanismo di identificazione degli elementi è un'ottima funzionalità nell'interfaccia utente codificata. Inoltre, supporta la sincronizzazione
  • Il motore di riproduzione supporta funzionalità come "WaitForControlExist", "WaitForReadyLevel", ecc.
  • Con l'aiuto degli "agenti di test", i test di automazione possono essere eseguiti su macchine remote
  • I team di automazione possono sviluppare test sofisticati, utilizzando l'interfaccia utente codificata con un framework a più livelli
  • I tester del software possono acquisire le eccezioni e registrare il risultato in modo efficace utilizzando log4net.dll
  • Lo strumento UI codificato supporta la programmazione descrittiva. Consente ai tester del software di automatizzare gli scenari in base alle proprietà degli oggetti
  • Supporta i controlli AJAX.

Come creare test UI codificati (CUIT)

Per creare test UI codificati puoi farlo nei seguenti modi.

  • Generazione da una registrazione di attività esistente (conversione dalla registrazione di test manuale)
  • Creazione di un nuovo test codificato dell'interfaccia utente da zero
  • Scrivere codice da zero

Contenuto di un test codificato dell'interfaccia utente

Quando crei un test codificato dell'interfaccia utente, il generatore di test codificato dell'interfaccia utente crea una mappa. Ciò include l'interfaccia utente sotto test, metodi di test, parametri, asserzioni, ecc. Per ogni test, crea anche un file di classe.

File Soddisfare Modificabile
UIMap.Designer.cs Sezione della dichiarazione Proprietà dei metodi della classe UIMap No
UIMap.cs Classe UIMap (parziale)
CodedUITest1.cs Proprietà dei metodi della classe CodeUITest1
UIMap.uitest La mappa XML dell'interfaccia utente per il test. Viene modificato solo tramite l'editor della mappa dell'interfaccia utente No
  1. UIMap.Designer.cs : il designer contiene la vista codice di UIMap. Viene generato quando un tester registra alcune interazioni con l'interfaccia utente o quando alcuni oggetti vengono aggiunti manualmente a UIMap.
  2. UIMap.cs : qualsiasi modifica o personalizzazione apportata a UIMap viene archiviata in questo file. Inizialmente, questo file sarà vuoto e potrà essere popolato in seguito. Se le modifiche vengono effettuate direttamente nel file UIMap.designer.cs, assicurarsi che non sia registrato altrimenti tutte le modifiche andranno perse.
  • CodedUITest1.cs : questo file contiene classe di test UI codificata, metodi di test, invocazione di asserzioni e invocazione di metodi. Tutte le asserzioni e i metodi vengono richiamati per impostazione predefinita da questo file.
  • UIMap.uitest : è una rappresentazione XML della classe UIMap. Include finestre, controlli, proprietà, metodi, azioni e asserzioni. Viene modificato solo tramite l'editor della mappa dell'interfaccia utente

Come eseguire il test dell'interfaccia utente codificato

L'interfaccia utente codificata ha due modi diversi per eseguire un test per la tua applicazione.

  1. Registrazione e riproduzione codificate dell'interfaccia utente o
  2. Codifica manuale dell'interfaccia utente codificata

Devi seguire il seguente passaggio per eseguire il test codificato dell'interfaccia utente,

  1. Crea un progetto di test dell'interfaccia utente codificato
  2. Aggiungi un file di test dell'interfaccia utente codificato
  3. Registra una sequenza di azioni
  4. Verifica i valori nei campi dell'interfaccia utente come le caselle di testo
  5. Visualizza il codice di test generato
  6. Aggiungi altre azioni e asserzioni
  7. Modifica i dettagli delle attività di test e delle asserzioni
  8. Esegui il test

Best practice per il test codificato dell'interfaccia utente (CUIT)

Di seguito sono riportate alcune best practice per un test codificato dell'interfaccia utente,

  • Utilizzare il generatore di test dell'interfaccia utente codificata ogni volta che è possibile
  • Cerca di non modificare direttamente il file UIMap.designer.cs. In caso contrario, le modifiche apportate al file verranno sovrascritte
  • Crea il tuo test come una sequenza di metodi registrati
  • Ogni metodo registrato dovrebbe agire su una singola pagina, modulo o finestra di dialogo. Inoltre, crea un nuovo metodo di prova per ogni nuovo modulo, pagina o finestra di dialogo
  • Quando crei un metodo, invece del nome predefinito usa un nome di metodo significativo. Un nome significativo aiuta a identificare lo scopo del metodo
  • Se possibile, limitare ogni metodo registrato a meno di 10 azioni. Questo approccio semplifica la sostituzione di un metodo se l'interfaccia utente cambia.
  • Per creare un'asserzione, utilizzare il generatore di test dell'interfaccia utente codificato. Aggiunge automaticamente un metodo di asserzione al file UIMap.Designer.cs.
  • Registrare nuovamente i metodi di prova / metodi di asserzione, se l'interfaccia utente cambia o registra nuovamente le sezioni interessate di un metodo di prova esistente.
  • Se stai codificando direttamente con l'API, utilizza i metodi e le proprietà nelle classi create nel file UIMap.Designer.cs. Queste lezioni renderanno il tuo lavoro più affidabile e più facile e ti aiuteranno a essere più produttivo.

Confronto tra test UI codificato vs. Selenio contro QTP

Di seguito è riportata la tabella di confronto del test codificato dell'interfaccia utente con altri strumenti di automazione.

  • Selenium non supporta alcun WPF così come le applicazioni Windows
  • L'interfaccia utente codificata di Visual Studio supporta il test dell'applicazione Window Store e il test dell'applicazione Window Phone. Nessun altro strumento lo supporta.
  • Il completamento del test supporta l'applicazione Windows ma richiede l'installazione di un plug-in.

Sommario:

  • I test automatizzati che guidano l'applicazione attraverso la sua interfaccia utente (UI) sono noti come test UI codificati (CUIT).
  • L'interfaccia utente codificata supporta tecnologie come servizi Web, applicazioni per telefoni Windows, applicazioni Web e così via.
  • L'interfaccia utente codificata consente a sviluppatori e tester di software di collaborare in modo efficace utilizzando gli stessi strumenti / linguaggio
  • Include contenuto o un file creato durante l'utilizzo di interfaccia utente codificata
    • UIMap.Designer.cs
    • UIMap.cs
    • CodedUITest1.cs
    • UIMap.uitest