working with soapui properties soapui tutorial 8
Aquest tutorial tracta de propietats de SoapUI. A l'últim tutorial de SoapUI que vam veure com afegir propietats a l'script Groovy .
Una propietat a SABÓ és similar a una variable / paràmetre i en aquest tutorial es parlarà de com utilitzar-ne una en una sol·licitud de servei i assignar-li un valor de resposta mitjançant scripts. Més endavant, passarem al pas de prova de transferència de propietats i després importarem propietats.
Aquest és el vuitè tutorial del nostre Formació en línia SoapUI sèrie.
Què aprendreu d’aquest tutorial SoapUI?
- Diferents cares de propietats
- Integració de propietats a la sol·licitud de servei
- Comprensió de la prova de transferència de propietats
- Carregueu propietats externament
Hi ha dostipus de propietats a SoapUI:
- Propietats predeterminades : inclòs a la instal·lació de SoapUI. Podem editar algunes de les propietats predeterminades, però no totes.
- Propietats personalitzades / definides per l'usuari : Els definim a qualsevol nivell que necessitem, com ara el global, el projecte, el conjunt de proves, el cas de prova o el pas de prova.
El més freqüent és que s’utilitzin propietats emmagatzemar i recuperar les dades mentre s’executen els casos de prova. La propietat interna emmagatzemarà el valor en format de parell de claus.
Per exemple , a la declaració següent, 'Local_Property_FromCurrency' és un nom clau i 'USD' fa referència al valor. Per accedir al valor de la propietat, hem d’utilitzar el nom de la propietat.
testRunner.testCase.testSteps ['Propietats']. setPropertyValue
( ' Local_Property_FromCurrency ', 'USD' )
Què aprendreu:
- Diversos nivells de propietat a SoapUI Pro
- Més detalls sobre propietats amb exemples
- Ús de propietats als serveis
- Trasllat de la propietat
- Conclusió
- Lectura recomanada
Diversos nivells de propietat a SoapUI Pro
Analitzem els diferents nivells de propietat de SoapUI Pro. A SoapUI hi ha disponibles tres nivells de propietats.
Nivell 1. Propietats del projecte i personalitzades
En aquest nivell, les propietats es divideixen en dues seccions. Són propietats del projecte i propietats personalitzades. Aquests apareixeran a la part inferior del tauler del navegador quan fem clic al nom del projecte. La secció Propietats del projecte té propietats predeterminades que es creen durant la creació del projecte, per exemple, Nom, Descripció, Fitxer, etc.
Per tal de crear les nostres pròpies propietats, podem utilitzar la pestanya de propietats personalitzades. Feu clic a la icona del signe més per crear propietats:
Hi ha moltes altres opcions disponibles, com ara suprimir, pujar cap amunt, baixar i ordenar al costat d'afegir. Qualsevol nombre de propietats personalitzades es poden afegir i utilitzar en qualsevol secció (suite de proves, casos de prova) dins del projecte.
Nivell 2. Suite de proves i propietats personalitzades
Aquestes propietats només són visibles a la suite de proves. Un conjunt de proves pot contenir qualsevol nombre de propietats i es pot accedir des de qualsevol pas de prova que pertanyi a aquest conjunt de proves.
Les propietats del conjunt de proves apareixen quan feu clic al nom del conjunt de proves corresponent al projecte. Per afegir propietats personalitzades segons sigui necessari, feu clic a la pestanya de propietats personalitzades i feu clic al signe '+' que hi ha a sota.
Propietat núm. 3. Cas de prova i propietats personalitzades
Les propietats del cas de prova són accessibles dins del cas de prova. No són accessibles per altres passos de casos de prova ni fins i tot per al conjunt de proves del projecte.
com utilitzar fitxers torrent després de la descàrrega
Més detalls sobre propietats amb exemples
Les propietats poden emmagatzemar punts finals, detalls d’inici de sessió, informació de capçalera i domini, etc. tot i que hem debatut sobre l’escriptura i lectura de dades a / des de les propietats, encara hem d’explicar aquest tema en detalls amb exemple.
Els nivells de propietats discutits anteriorment s’utilitzen en la creació de scripts per llegir les dades.
# 1. Propietats de lectura:
Veurem com podem llegir les propietats en guions fantàstics. Per accedir a diferents propietats de nivell, la sintaxi següent és:
Projecte: Sintaxi: $ {# Nom del projecte # Valor}
Exemple:
def pr ojectPro = testRunner.testC a se.testSuite.project.getPropertyValue
('Propietat_nivell_projecte')
'Propietat_nivell_projecte')
log.info (projectPro)
Suite de proves: sintaxi: $ {# TestSuite # Value}
Exemple:
def testP ro = testRunner.testCase.testSuite.getPropertyValue ('Testsuite_Property')
log.info (testPro)
Cas de prova: sintaxi: $ {# TestCase # Value}
Exemple:
def prova casePro = testRunner.testCase.getPropertyValue ('Testcase_Property')
log.info (testcasePro)
Consulteu la captura de pantalla següent:
# 2. Escriptura a propietats:
Per fer-ho, hem d’utilitzar setPropertyValue mètode.
Sintaxi: setPropertyValue ('nom de la propietat', 'valor')
Si assignem valors a propietats desconegudes, SoapUI crearà aquestes propietats recentment. Per a les propietats existents rebrà els valors durant l'assignació.
# 3. Eliminació de propietats mitjançant script:
Això es pot fer fent clic dret sobre el nom de la propietat al tauler de propietats. A continuació, feu clic a l'opció Elimina del menú contextual.
Per fer-ho mitjançant un script per eliminar les propietats personalitzades, utilitzeu les instruccions següents per als nivells de projecte, conjunt de proves o casos de prova respectivament:
testRunner.testCase.testSuite.project.removeProperty ('Testcase_Property');
testRunner.testCase.testSuite.removeProperty ('Testcase_Property');
testRunner.testCase.removeProperty ('Testcase_Property');
Els scripts anteriors no són òptims quan tenim diverses propietats a cada nivell, ja que aquests passos s'han de repetir diverses vegades per a cada propietat. Una alternativa és iterar les propietats a través de l'script de la manera següent:
testRunner.testCase.properties.each
{
clau, valor ->
testRunner.testCase.removeProperty (clau)
}
L'escriptura anterior iterarà fins a l'última propietat disponible en el cas de prova. ' Clau 'Es refereix al nom de la propietat on' valor ”Indica el valor real de la propietat. Podem modificar l'script anterior per eliminar la llista de propietats massives que hi ha a diversos nivells.
# 4. Afegir propietat:
Afegeix propietat s'utilitza aquest mètode la sintaxi de la qual és:
addProperty (nom de la propietat);
Es pot adaptar per a cada nivell de la manera següent:
testRunner.testCase.testSuite.project.addProperty ('ProjectProperty1')
testRunner.testCase.testSuite.addProperty ('TestsuiteProperty1')
testRunner.testCase.addProperty ('TestcaseProperty1')
Després d’executar els scripts anteriors, feu clic al projecte / suite de proves / nom del cas de prova. Comproveu la pestanya de propietats personalitzades del tauler de propietats i apareixerà la propietat creada aquí. Vegeu a continuació com a referència:
Ús de propietats als serveis
En aquesta secció, aprendrem com podem utilitzar les propietats dels serveis i utilitzarem els scripts anteriors per afegir, assignar i recuperar dades de propietats amb el servei web de convertidor de divises.
Integració de propietats al servei:
Comencem a afegir passos de prova com es mostra a la captura de pantalla següent.
A la captura de pantalla anterior, el pas de prova AddProperties_Script conté el següent script que afegeix dues propietats com ara Property_FromCurrency i Property_ToCurrency .
// Afegeix propietats
testRunner.testCase.addProperty ('Property_FromCurrency')
testRunner.testCase.addProperty ('Property_ToCurrency')
// Assigneu valors a les propietats
testRunner.testCase.setPropertyValue ('Property_FromCurrency', 'USD')
testRunner.testCase.setPropertyValue ('Property_ToCurrency', 'INR')
A la ServiceRequest_CurrencyConverter_1 conté la sol·licitud amb paràmetres d'entrada com es mostra a continuació:
Els valors assignats a les propietats es transferiran a aquests paràmetres durant l'execució. Després d’aquest pas de prova, GetResponseData_Script El pas de prova té l'script que obtindrà el valor de resposta i mostrarà el resultat al registre. Aquí teniu el guió.
// Obteniu dades de resposta del servei
def response = context.expand (‘$ {ServiceRequest_Currency
Converter_1 # Response} ')
def parsedResponse = new XmlSlurper (). parseText (resposta)
Cadena convertidaValor = parsedResponse.Body.ConversionRateResponse.
ConversionRateResult.text ()
log.info (convertValor)
Un cop hàgiu preparat tots els passos, feu doble clic al nom de la suite de proves i executeu-la. A continuació, feu doble clic a ServiceRequest_CurrencyConverter_1 i vegeu la secció de respostes.
Això és el que trobaríem:
- Es rebrà la resposta
- Obriu el registre de seqüències d'ordres per veure les dades resultants que es converteixen en funció dels paràmetres d'entrada
Així podem passar els paràmetres a la sol·licitud d'entrada i obtenir la resposta a través de l'script mitjançant propietats. Anant més enllà també podem passar el valor de resposta a un altre servei com a entrada.
Trasllat de la propietat
El pas de prova de transferència de propietats transfereix les dades de propietat d'una propietat a una altra durant l'execució. Vegem breument com podem crear el pas de prova de transferència de propietats i com es transfereix el valor de la propietat entre dues propietats.
- Feu clic amb el botó dret del ratolí sobre el nom del cas de prova a la suite de proves
- Feu clic a Afegeix el pas i després feu clic a Propietats opció del menú contextual
- Repetiu els passos anteriors per crear la segona propietat. Vegeu la captura de pantalla següent:
- Ara hem d'afegir el pas de prova de transferència de propietats.
- Feu clic amb el botó dret al nom del cas de prova i feu clic a l'opció de transferència de propietats al menú contextual
- Introduïu el nom de la transferència de propietat que vulgueu i feu clic a D'acord
- Feu clic a Afegeix, és a dir, signe més a la barra d'eines de transferència de propietats
- Especifiqueu el nom de la transferència i feu clic al botó D'acord
- Al tauler lateral dret, hi ha dues seccions disponibles: Font i Objectiu.
Trieu la font com a Propietats i propietat com Property_Zipcode . Feu el mateix a la secció de destinació. Trieu Propietat_diana des de la propietat desplegable. Quan s'executa la icona, es transferirà el valor de la propietat Property_Zipcode a Propietat_diana .
(Feu clic a la imatge per ampliar-la)
Vegeu el valor transferit tal com es mostra a la captura de pantalla següent.
Nota: La propietat font ha de contenir el valor per defecte.
A més, hi ha moltes opcions disponibles a la pantalla de transferència de propietats.
- Error en la transferència
- Transfereix contingut de text
- Transferència a tots
- Autoritza els valors transferits
- Estableix Null a la font que falta
- Ignora els valors buits / que falten
- Utilitzeu XQuery
- Transferència de nodes secundaris
Carrega les propietats des de la font externa:
Per carregar propietats des d'una font externa, seguiu aquests passos.
- Afegiu el pas de prova Propietats al cas de prova
- Introduïu el nom del pas de la propietat i feu clic a D'acord
- Al tauler de propietats del tauler de navegació, feu clic a la pestanya Propietats personalitzades
- Feu clic a icona per carregar les propietats des del fitxer de propietats extern
Nota: El fitxer de propietats s'hauria de desar o presentar al vostre ordinador. Per desar les propietats, feu clic a la icona.
A continuació, aneu a la unitat respectiva i trieu la propietat com es mostra a continuació:
Si està bé, podem veure les propietats carregades i els seus valors a la pestanya Propietats personalitzades.
Conclusió
Bé, això és propietat per a nosaltres!
Les propietats de cada nivell tenen les seves pròpies característiques. Durant la pràctica de SoapUI, intenteu incloure propietats sempre que sigui possible amb el pas de prova de seqüència d'ordres fantàstic per afegir, eliminar, assignar i recuperar dades de propietats. Això no només és útil quan practiqueu amb els serveis, sinó que també és fonamental per provar aplicacions reals, ja que és molt útil per a aquesta tècnica afirmar els casos de prova .
Transferir propietats entre els passos de prova és més fàcil que escriure scripts repetits per crear-ne de nous. SoapUI també ofereix la meravellosa funció per importar i exportar propietats. Aquesta característica serà útil quan utilitzem propietats habituals com ara detalls d’inici de sessió, detalls de sessió, etc., per a diversos projectes. D’aquesta manera, no hem de crear les mateixes propietats una i altra vegada per a diversos projectes. Simplement podem canviar el valor de la propietat en comparació amb les propietats en funció dels projectes.
Pròxim tutorial núm. 9 : Al proper tutorial de SoapUI aprendrem Enunciats condicionals a Groovy com:
- Instruccions booleanes
- Declaracions d’iteració
- Matrius a Groovy
Això és tot per avui. Seguiu llegint i us veurem al proper tutorial. Comparteix les teves preguntes, comentaris i experiències a continuació.
Lectura recomanada
- Com s'utilitzen les propietats a SoapUI Groovy Script: tutorial SoapUI # 7
- Com realitzar proves basades en dades a SoapUI Pro - Tutorial SoapUI núm. 14
- 15+ Tutorials SoapUI: la millor eina de prova de l'API de serveis web
- Com escriure script Groovy bàsic a SoapUI - Tutorial SoapUi # 6
- Tutorials Eclipse en profunditat per a principiants
- 7 Funcions importants de SoapUI i SoapUI Pro - Tutorial 2
- Comprensió de les afirmacions de SoapUI: tutorial de SoapUI # 5
- 4 Funcions importants de SoapUI Pro for Pro Audience: tutorial SoapUI núm. 12