step step guide jubula open source automated functional testing tool
(Tutorial detallat amb moltes imatges, així que permeteu que es carregui)
Avui aprendrem un tema popular eina de proves funcionals de codi obert: Jubula.
És un projecte Eclipse per a proves de GUI funcionals i automatitzades per a moltes aplicacions. És útil per escriure proves automatitzades des de la perspectiva de l'usuari amb poc o sense habilitats de codificació , estalviant temps i millorant la llegibilitat i el manteniment de les proves.
Un ampli ventall de eines d'automatització de codi obert estan disponibles al mercat amb la bona quantitat d’ajuda en línia.
Quan es tracta de Jubula , l'ajuda en línia proporciona molta informació sobre el seu marc integrat. Aquesta informació és molt útil per als provadors no tècnics que no participen en la codificació i que volen crear scripts d’automatització mitjançant la GUI de Jubula.
Però els verificadors tècnics d'automatització que volen crear un personalitzat marc amb Jubula és difícil arribar a l’ajuda.
Aquest tutorial detallat es crea amb l'objectiu de compartir el coneixement que he adquirit a Jubula per ajudar-vos a crear un marc de proves d'automatització personalitzat, robust i flexible.
Primer examinem-ho s marc integrat (Aquesta secció del tutorial us ajudarà a entendre els conceptes bàsics) i després procediu Estructura de construcció a Jubula mitjançant codi Java.
Què aprendreu:
- Conceptes bàsics: marc integrat:
- AUTs de mostra:
- Projecte de demostració
- Com provar:
- Punts a destacar
- Estructura de construcció a Jubula mitjançant codi Java:
- O
- Creació d'una classe de mapatge d'objectes
- Realització d'accions de prova
- Treballar amb diversos AUT
- Conclusió
- Lectura recomanada
Conceptes bàsics: marc integrat:
Instal·lació i llançament:
(Nota: feu clic a qualsevol imatge per ampliar-la)
1) Aneu a la pàgina de descàrrega aquí .
Nota: podeu comprovar-ho aquesta pàgina de descàrrega per a diverses opcions basades en les funcions que us interessen.
2) Registra't i inicia sessió.
3) Fer clic a Descarregueu els instal·ladors.
4) Feu clic al botó pàgina de descàrrega sota Descàrregues de Jubula secció.
5) Baixeu-vos l'instal·lador adequat (segons el sistema operatiu).
6) Instal·leu-lo mitjançant el fitxer descarregat exe arxiu i deseu la carpeta en una ubicació preferida (l’he desat a C: Fitxers de programa ).
7) Un cop finalitzada la instal·lació, hauríeu de poder iniciar l'eina des de 'Tots els programes'.
8) Durant el llançament, creeu l'espai de treball en una ubicació preferida.
9) La pantalla inicial es mostrarà a continuació:
AUTs de mostra:
Una cosa impressionant d'aquesta eina és que ve amb exemples d'automòbils (aplicacions en prova). Els AUTs estaran presents a examples AUTs.
En aquest cas, es troba a C: Program Files jubula_8.2.0.021 examples AUTs
Projecte de demostració
Ara, amb Jubula instal·lat i els exemples d’automòbils disponibles, intentem automatitzar un funcionalitat d'addició senzilla mitjançant una aplicació ‘swing’ anomenada ‘SimpleAdder’.
Aquesta aplicació es pot invocar mitjançant el fitxer:
‘C: ProgramFiles jubula_8.2.0.021 examples AUTs SimpleAdder swing SimpleAdder.cmd I té el següent aspecte:
La tasca consisteix a introduir 'valor1', introduir 'valor2', fer clic al botó '=' i verificar el 'resultat'.
Com provar:
A continuació es mostren els passos que cal seguir per automatitzar la tasca:
Pas 1 - Crea un projecte.
Pas 2: Crea bytes.
Pas 3: Creeu un cas de prova, incloeu els passos de prova i les dades del mapa.
Pas 4: Crea un conjunt de proves.
Pas 5: Assigneu AUT al conjunt de proves.
Pas 6: Assigneu el cas de prova al conjunt de proves.
Pas 7: Mapeu objectes de prova lògics amb identificadors d’objectes tècnics.
Pas 8: Executeu el conjunt de proves.
Vegem com realitzar cada pas en detall:
Pas 1: crear un projecte
Un projecte a Jubula es pot considerar com un espai de treball lògic on es reuneixen tots els components necessaris per completar una tasca de prova.
La creació d’un projecte és la següent:
1) Aneu a Prova> Nou.
2) Introduïu el nom del projecte, per exemple. 'DemoProject' i feu clic a 'Finalitza' (En fer clic a 'Següent' hauríeu de ser capaç de crear AUT. Però deixeu-nos 'Finalitzar' aquí i vegeu la creació de AUT al pas # 2).
3) El navegador Test Suite mostra el projecte creat.
Pas 2: crear aut
S'ha de crear una instància de l'aplicació en prova (SimpleAdder) a Jubula per assignar objectes i executar el conjunt de proves.
1) Aneu a Prova> Propietats.
utilitat per controlar la temperatura de la CPU i la velocitat del ventilador
2) Trieu 'AUTs'.
3) Introduïu el nom AUT (pot ser qualsevol valor definit per l'usuari. Per exemple, DemoAUTSimpleAdder).
4) Trieu la tecnologia en què es desenvolupa l'AUT. (En aquest cas, és 'swing').
5) Feu clic a 'Afegeix' a la configuració AUT.
6) Introduïu l'identificador AUT (pot tornar a ser qualsevol valor definit per l'usuari. Per exemple, DemoAUTSimpleAdderID).
7) Introduïu el nom del fitxer executable, és a dir, el fitxer que invoca el qual s'obrirà l'aut. Com he esmentat anteriorment, he utilitzat 'C: ProgramFiles jubula_8.2.0.021 examples AUTs SimpleAdder swing SimpleAdder.cmd' .
Tingueu en compte que per invocar l’automàtic mitjançant Jubula, ha d’haver estat connectat a «agents AUT». Hi ha dos agents AUT amb els quals Jubula es pot connectar:
- Agent AUT incrustat instal·lat a 'localhost: 60001'
- Agent AUT extern instal·lat a 'localhost: 60000'
Un cop Jubula estigui connectat a qualsevol dels agents AUT, hauríeu de poder invocar l'aplicació a través d'ella. La captura de pantalla següent mostra com connectar-se als agents AUT. Aquí em connecto a l'agent AUT incrustat.
La captura de pantalla següent mostra com connectar-se als agents AUT. Aquí em connecto a l'agent AUT incrustat.
Un cop l'agent AUT està connectat amb Jubula, es pot invocar AUT (DemoAUTSimpleAdder) de la manera següent:
L’AUT s’invocarà com es mostra a continuació. L'aplicació es pot continuar executant en segon pla. Però, en aquesta etapa, prefereixo tancar l'aplicació per estar còmode en realitzar la resta de passos.
Pas 3: creeu un cas de prova, incloeu els passos de prova i les dades del mapa
Aquest és el pas crucial on es produeix el desenvolupament real dels scripts d'automatització (sense codificar).
Hi ha un navegador de casos de prova a la part inferior esquerra de l'eina on es poden desenvolupar casos de prova de l'usuari.
1) Feu clic amb el botó dret i aneu a Nou per crear un cas de prova nou.
2) Introduïu el nom del cas de prova i feu clic a 'D'acord' (per exemple, DemoTestCase).
3) Ara, el navegador de casos de prova hauria de crear l'usuari cas de prova juntament amb els casos de prova de Jubula.
4) Feu doble clic al cas de prova creat. El cas de prova buit s'obrirà al tauler central.
5) Arrossegueu i deixeu anar les accions de prova adequades des de les accions base de Jubula al cas de prova.
Com es mostra a les captures de pantalla següents:
- Per introduir valor1 i valor2, utilitzeu 'Component amb entrada de text: substituïu el text'.
- Per fer clic al botó és igual, feu clic a 'Feu clic a l'esquerra'.
- Per comprovar el valor, utilitzeu 'Component amb entrada de text: comproveu el text'.
6) Ara, per a cada pas de prova inclòs, introduïu el següent segons correspongui (per exemple, si feu clic a un botó no necessiteu cap dada):
- Nom de referència del cas de prova (descripció del pas de prova).
- Nom del component (nom lògic al qual s’assignarà l’identificador tècnic).
- Dades: les dades es poden introduir com a valor directe, per exemple. 10, 20 o parametritzats mitjançant variables, per exemple = Valor1, = Valor2 o alimentat mitjançant un full Excel. En aquest cas, estic parametritzant les dades).
a)
b)
c)
d)
7) Com es va esmentar al pas anterior, quan es parametritzen els valors de les dades, ressalteu el cas de prova com es mostra a continuació. Hauríeu de poder veure una quadrícula on es puguin definir els valors de les variables. Utilitzeu el botó 'Afegeix' per inserir una fila de dades. Podeu tenir n nombre de files de dades per n nombre d'iteracions d'execució.
a)
b)
Pas 4: creeu un conjunt de proves
El conjunt de proves de Jubula és un component executable del projecte en què seqüencien els casos de prova definits per l'usuari per executar-los.
1) Feu clic amb el botó dret del ratolí sobre el projecte i aneu a Nou per crear un nou conjunt de proves.
2) Introduïu el nom del conjunt de proves i feu clic a D'acord (per exemple, DemoTestSuite).
3) Hauríeu de poder veure el conjunt de proves creat al projecte.
Pas 5: assigneu AUT al Test Suite
Quan només hi hagi un sol AUT definit a Jubula, el AUT es seleccionarà automàticament per al conjunt de proves. Però quan hi ha diversos AUTs, és molt important assegurar-se que el paquet de proves funcioni amb el AUT correcte.
1) Feu doble clic a la suite de proves i ressalteu el mateix al tauler central.
2) Seleccioneu el AUT al menú desplegable.
Pas 6: assigneu el cas de prova a la suite de proves
Arrossegueu i deixeu anar el cas de prova al conjunt de proves. També es poden seqüenciar diversos casos de proves a la suite de proves.
En desar-lo, hauríeu de poder veure el cas de prova a la suite de proves de la manera següent:
Pas # 7: mapeu objectes de prova lògics amb identificadors d’objectes tècnics
1) Feu clic amb el botó dret a la suite de proves i obriu-lo amb l'editor de mapatge d'objectes.
2) Es mostraran tots els components lògics de la suite de proves per als quals s'han d'assignar noms tècnics.
3) Invoca l'aut.
4) Feu clic a la icona de mapatge d'objectes per a l'automàtica en particular.
5) Moveu el cursor sobre el camp per al qual haureu d'identificar el nom tècnic. El camp es ressaltarà en verd.
6) Premeu control + majúscules + Q per obtenir el nom tècnic del camp corresponent a la secció de noms tècnics sense assignar. Repetiu-ho per a tots els camps del conjunt de proves.
7) Ara assigneu noms de components sense assignar amb un nom tècnic sense assignar simplement arrossegar i deixar anar.
eina de reparació gratuïta de Windows 10
8) Deseu l’espai de treball i sortiu del mode de mapatge d’objectes.
Pas 8: executeu el conjunt de proves
Ara el conjunt de proves està llest per executar-se. Assegureu-vos que s’invoca l’AUT mitjançant Jubula.
Feu clic al botó d'execució del navegador del conjunt de proves.
(També podeu activar l'aplicació com a primer pas. Però quan no la tingueu, assegureu-vos que activeu l'aplicació després d'executar el conjunt de proves).
Els resultats es poden veure a continuació:
Punts a destacar
Mentre alimenteu el conjunt de proves amb dades a través d'Excel, proporcioneu la ubicació del fitxer Excel en el format d'exemple:
C: //Data//Data.xls
A la demostració anterior, les dades es parametritzen mitjançant les variables '= Valor1', = 'Valor2' i = 'Resultat'.
En aquest cas, quan s'hagin de passar els valors a través d'un fitxer Excel, assegureu-vos que el fitxer tingui les columnes corresponents amb noms que coincideixin exactament amb les variables i el nom del full establert amb l'idioma triat en el moment de la creació del projecte.
L'agent AUT extern (localhost: 60000) es pot connectar després d'iniciar l'agent des de 'Tots els programes', on podeu trobar opcions per iniciar i aturar l'agent.
Es poden crear diverses suites de proves en un treball de prova. Això seria útil quan la prova implica més d’una aplicació (es poden assignar diferents AUT a diferents suites de proves).
Això explica els conceptes bàsics per jugar al voltant de l'eina. És molt important familiaritzar-se amb les accions bàsiques de Jubula per automatitzar funcionalitats complexes i tractar diversos objectes de prova.
Jubula també pot automatitzar aplicacions desenvolupades amb diferents tecnologies, no només aplicacions swing.
Estructura de construcció a Jubula mitjançant codi Java:
Amb els coneixements bàsics anteriors, vegem ara com construir un framework personalitzat a Jubula mitjançant codi Java.
És possible que alguns no trobin l’automatització a l’espai de treball de Jubula flexible i reutilitzable. És possible que no sigui possible una àmplia automatització. Però per a cada acció que hem fet utilitzant la GUI de Jubula, hi ha un mètode java corresponent.
Aquí, en aquesta secció, veurem els conceptes bàsics d’aquests mètodes Java amb els quals es pot construir qualsevol marc complicat.
Pots
Els pots necessaris per als mètodes estan disponibles a la carpeta d’instal·lació de Jubula:
C: Program Files jubula_8.2.0.021 development api
O
Vegem primer com connectar-nos amb l'agent AUT i com invocar l'AUT creant un identificador AUT mitjançant la configuració AUT
Necessitem les variables següents:
AUTAgent autagent = null; AUTConfiguration autconfiguration = null; AUTIdentifier autidentifier = null; AUT aut = null;
Connexió amb l'agent AUT:
autagent = MakeR.createAUTAgent('localhost',60000); autagent.connect();
Llançament AUT:
autconfiguration = new SwingAUTConfiguration('Autidentifier', 'Autidentifier','runlocal.bat', 'C:\Application',null,Locale.getDefault()); autidentifier = autagent.startAUT(autconfiguration); aut = autagent.getAUT(autidentifier, SwingComponents.getToolkitInformation()); aut.connect();
On runlocal.bat és l'executable i l'aplicació C: \ és la ubicació on hi ha un fitxer executable.
També podem crear la configuració per a altres jocs d’eines.
Per exemple, JavaFXAUTConfiguration, RCPAUTConfiguration, HTMLAUTConfiguration.
Les accions de prova ara es poden realitzar mitjançant la instància 'O' . Però hem de tenir els identificadors d’objectes per realitzar accions de prova.
Creació d'una classe de mapatge d'objectes
Feu clic amb el botó dret a l’editor de mapatge d’objectes i trieu 'Exporta l'assignació d'objectes a un fitxer' des de 'Utilitza a l'API' opció i exporteu els detalls de mapatge d'objectes a una classe Java.
Incloeu aquesta classe al projecte. L'he desat com a OM.java, on hi ha la identificació tècnica de cada objecte a l'editor de mapatge d'objectes.
com utilitzar Java per obrir un fitxer jar
Realització d'accions de prova
Les accions de prova es poden realitzar en dos passos:
Pas 1: Definiu el component sobre el qual s'ha de realitzar l'acció de prova.
TextInputComponent input1 = SwingComponents.createJTextComponent(OM.txtValue1); TextInputComponent input2 = SwingComponents.createJTextComponent(OM.txtValue2); ButtonComponent equals = SwingComponents.createAbstractButton(OM.btnEquals); TextComponent result = SwingComponents.createJLabel(OM.txtResult);
Pas 2 : Realitzeu l'acció.
aut.execute(input1.replaceText(“10”), 'jubula'); aut.execute(input2.replaceText(“15”), 'jubula'); aut.execute(equals.click(1,InteractionMode.primary), 'jubula'); aut.execute(result.checkText(“25',Operator.equals), 'jubula');
On 'Jubula' és només un text fictici que preferiblement hauria de portar la descripció de l'acció.
L’instrucció ‘execute’ porta CAP (C - Component, A-Action, P-Parameter (Data)).
Acció i paràmetre corresponen a la mateixa de casos de prova a l'espai de treball de Jubula.
Treballar amb diversos AUT
Treballar amb diverses aplicacions i intercanviar-les és una mica complicat quan desenvolupeu el vostre propi marc mitjançant mètodes Java de Jubula.
Mentre es tracta de diverses aplicacions, assegureu-vos que l’automàtica estigui activada abans de realitzar accions i que el mateix estigui desactivat un cop hàgiu acabat.
En activar:
- Connecteu l'agent automàtic.
- O connecteu-vos.
Mentre es desactiva:
- Connecteu-vos.
- Desconnecteu l'agent automàtic.
per exemple
Activate(autidentifier1); //perform actions on aut1 Currentaut.execute(…) Currentaut.execute(…) Deactivate(autidentifier1); Activate(autidentifier2); //perform actions on aut2 Currentaut.execute(…) Currentaut.execute(…) Deactivate(autidentifier2); Activate(autidentifier1); //perform actions on aut1 Currentaut.execute(…) Currentaut.execute(…) Deactivate(autidentifier1);
Activar i desactivar les funcions hauria de ser una cosa així:
public static void Activate(AUTIdentifier autidentifier){ if(autagent.isConnected()) { autagent.disconnect(); autagent.connect(); } else autagent.connect(); if(Currentaut==null){ Currentaut = autagent.getAUT(autidentifier, SwingComponents.getToolkitInformation()); Currentaut.connect(); } else{ if(Currentaut.isConnected()){ Currentaut.disconnect(); Currentaut = autagent.getAUT(autidentifier, SwingComponents.getToolkitInformation()); Currentaut.connect(); } else{ Currentaut = autagent.getAUT(autidentifier, SwingComponents.getToolkitInformation()); Currentaut.connect(); } } } public static void DeActivate(AUTIdentifier autidentifier){ if(Currentaut.isConnected()) Currentaut.disconnect(); if(autagent.isConnected()) autagent.disconnect(); }
Conclusió
Al final d’aquest article, cal haver adquirit bons coneixements sobre l’ús del marc existent de Jubula i el desenvolupament d’un marc personalitzat mitjançant els mètodes java de Jubula.
Aquí hem estudiat l’automatització de components swing Java. No obstant això, Jubula pot treballar en múltiples tecnologies.
Automatitzar múltiples aplicacions (de les mateixes i de les diferents tecnologies) alhora és l’àrea més difícil. Els passos que es detallen a Treballar amb diversos AUTs haurien de ser útils.
Mentre penseu en construir un marc personalitzat mitjançant Jubula, us heu de preguntar com definir diferents components de prova (per exemple, botó, entrada de text, text, arbre, taula, etc.), quines són les diferents accions que es poden realitzar sobre aquests components i què calen dades per a cada acció.
Per saber com definir diferents components i com realitzar diverses accions de prova mitjançant l'ordre 'executar', consulteu 'Manual de referència de Jubula'. aquí .
Prova-ho!
Sobre l'autor: Aquest és un tutorial per a convidats de Geethalakshmi. Treballa com a enginyera tècnica principal en una organització líder en proves de programari amb un gran interès en explorar eines d’automatització funcionals.
No dubteu a publicar els vostres comentaris / consultes sobre l'eina Jubula.
Lectura recomanada
- Tutorial de l'eina de proves d'accessibilitat WAVE
- Proves funcionals contra proves no funcionals
- Tutorial de Parrot QA: revisió de l'eina de proves funcionals de diversos navegadors
- Les millors eines de prova de programari 2021 (Eines d'automatització de proves de control de qualitat)
- Les diferències entre la prova unitària, la prova d’integració i la prova funcional
- Proves funcionals i proves de rendiment: s'hauria de fer simultàniament?
- Guia pas a pas per implementar la prova de concepte (POC) a les proves d'automatització
- Una guia pas a pas per obtenir el vostre primer projecte de proves multitudinàries de pagament