working with soapui properties soapui tutorial 8
Αυτό το σεμινάριο αφορά όλες τις ιδιότητες του SoapUI. Στο τελευταίο σεμινάριο SoapUI που είδαμε πώς να προσθέσετε ιδιότητες στο σενάριο Groovy .
Ένα ακίνητο σε ΣΑΠΟΥΝΙ είναι παρόμοιο με μια μεταβλητή / παράμετρο και σε αυτό το σεμινάριο θα μιλήσουμε για το πώς να το χρησιμοποιήσετε σε ένα αίτημα υπηρεσίας και να του εκχωρήσετε μια τιμή απόκρισης μέσω scripting Αργότερα, θα προχωρήσουμε στο βήμα δοκιμής μεταφοράς ιδιοκτησίας και μετά εισαγάγοντας ιδιότητες.
Αυτό είναι το 8ο σεμινάριο στο δικό μας Διαδικτυακή εκπαίδευση στο SoapUI σειρά.
Τι θα μάθετε από αυτό το SoapUI Tutorial;
- Διαφορετικά πρόσωπα ιδιοτήτων
- Ενσωμάτωση ιδιοτήτων στο αίτημα υπηρεσίας
- Κατανόηση του βήματος μεταφοράς ιδιοκτησίας
- Φόρτωση ιδιοτήτων εξωτερικά
Υπάρχουν δύοτύποι ιδιοτήτων στο SoapUI:
- Προεπιλεγμένες ιδιότητες : περιλαμβάνεται στην εγκατάσταση του SoapUI. Μπορούμε να επεξεργαστούμε ορισμένες από τις προεπιλεγμένες ιδιότητες αλλά όχι όλες.
- Προσαρμοσμένες / καθορισμένες από το χρήστη ιδιότητες : Αυτά ορίζονται από εμάς σε οποιοδήποτε επίπεδο απαιτείται, όπως παγκόσμιο, έργο, σουίτα δοκιμών, δοκιμαστική θήκη ή βήμα δοκιμής.
Τις περισσότερες φορές, οι ιδιότητες έχουν συνηθίσει αποθηκεύστε και ανακτήστε τα δεδομένα κατά την εκτέλεση των δοκιμαστικών περιπτώσεων. Εσωτερικά η ιδιότητα θα αποθηκεύσει την τιμή σε μορφή ζεύγους κλειδιών.
Για παράδειγμα , στην παρακάτω δήλωση, το 'Local_Property_FromCurrency' είναι ένα βασικό όνομα και το 'USD' αναφέρεται στην τιμή. Για να αποκτήσουμε πρόσβαση στην τιμή ιδιοκτησίας, πρέπει να χρησιμοποιήσουμε το όνομα ιδιοκτησίας.
testRunner.testCase.testSteps ('Properties'). setPropertyValue
(' Local_Property_FromCurrency ', «USD» )
Τι θα μάθετε:
- Διάφορα επίπεδα ιδιοκτησίας στο SoapUI Pro
- Περισσότερες λεπτομέρειες σχετικά με τις ιδιότητες με παραδείγματα
- Χρήση ακινήτων σε υπηρεσίες
- Μεταφορά ακινήτου
- συμπέρασμα
- Συνιστώμενη ανάγνωση
Διάφορα επίπεδα ιδιοκτησίας στο SoapUI Pro
Ας συζητήσουμε τα διάφορα επίπεδα ιδιοκτησίας στο SoapUI Pro. Στο SoapUI υπάρχουν τρία επίπεδα ιδιοτήτων διαθέσιμα.
Επίπεδο 1. Έργο και προσαρμοσμένες ιδιότητες
Σε αυτό το επίπεδο, οι ιδιότητες χωρίζονται σε δύο ενότητες. Πρόκειται για ιδιότητες έργου και προσαρμοσμένες ιδιότητες. Αυτά θα εμφανιστούν στο κάτω μέρος του πίνακα πλοήγησης όταν κάνουμε κλικ στο όνομα του έργου. Η ενότητα ιδιοτήτων έργου έχει προεπιλεγμένες ιδιότητες που δημιουργούνται κατά τη δημιουργία του έργου, για παράδειγμα, Όνομα, Περιγραφή, Αρχείο κ.λπ.
Για να δημιουργήσουμε τις δικές μας ιδιότητες, μπορούμε να χρησιμοποιήσουμε την καρτέλα προσαρμοσμένων ιδιοτήτων. Κάντε κλικ στο εικονίδιο συν για να δημιουργήσετε ιδιότητες:
Υπάρχουν πολλές άλλες διαθέσιμες επιλογές όπως κατάργηση, μετακίνηση προς τα πάνω, μετακίνηση προς τα κάτω και ταξινόμηση δίπλα στην προσθήκη. Οποιοσδήποτε αριθμός προσαρμοσμένων ιδιοτήτων μπορεί να προστεθεί και να χρησιμοποιηθεί από οποιεσδήποτε ενότητες (δοκιμαστική σουίτα, δοκιμαστικές περιπτώσεις) εντός του έργου.
Επίπεδο 2. Δοκιμή σουίτας και προσαρμοσμένες ιδιότητες
Αυτές οι ιδιότητες είναι ορατές μόνο στη δοκιμαστική σουίτα. Μια δοκιμαστική σουίτα μπορεί να περιέχει οποιονδήποτε αριθμό ιδιοτήτων και μπορεί να προσεγγιστεί από οποιαδήποτε βήματα δοκιμής που ανήκουν στην εν λόγω δοκιμαστική σουίτα.
Οι ιδιότητες της δοκιμαστικής σουίτας εμφανίζονται όταν κάνετε κλικ στο αντίστοιχο όνομα της δοκιμαστικής σουίτας στο έργο. Για να προσθέσετε προσαρμοσμένες ιδιότητες όπως απαιτείται, κάντε κλικ στην καρτέλα προσαρμοσμένων ιδιοτήτων και κάντε κλικ στο σύμβολο «+» κάτω από αυτήν.
Ακίνητο # 3. Δοκιμαστική θήκη και προσαρμοσμένες ιδιότητες
Οι ιδιότητες δοκιμαστικής θήκης είναι προσβάσιμες εντός της δοκιμαστικής θήκης. Δεν είναι προσβάσιμα από άλλα βήματα δοκιμαστικής υπόθεσης ή ακόμη και δοκιμαστική σουίτα στο πλαίσιο του έργου.
κυκλική σειρά ουράς c ++
Περισσότερες λεπτομέρειες σχετικά με τις ιδιότητες με παραδείγματα
Οι ιδιότητες μπορούν να αποθηκεύσουν τελικά σημεία, λεπτομέρειες σύνδεσης, πληροφορίες κεφαλίδας και τομέα κ.λπ. παρόλο που έχουμε συζητήσει σχετικά με τη συγγραφή και ανάγνωση δεδομένων από / προς τις ιδιότητες, δεν πρόκειται να συζητήσουμε λεπτομερώς αυτό το θέμα με παράδειγμα.
Τα παραπάνω αναφερόμενα επίπεδα ιδιοτήτων χρησιμοποιούνται στη δέσμη ενεργειών για την ανάγνωση των δεδομένων.
# 1. Ιδιότητες ανάγνωσης:
Θα δούμε πώς μπορούμε να διαβάσουμε ιδιότητες σε σενάριο groovy. Για να αποκτήσετε πρόσβαση σε ιδιότητες διαφορετικού επιπέδου, η ακόλουθη είναι η σύνταξη:
Έργο: Σύνταξη: $ {# Όνομα έργου # Τιμή}
Παράδειγμα:
ορισμός πρ ojectPro = testRunner.testC προς την se.testSuite.project.getPropertyValue
('Project_Level_Property')
'Project_Level_Property')
log.info (projectPro)
Δοκιμαστική σουίτα: Σύνταξη: $ {# TestSuite # Τιμή}
Παράδειγμα:
ορισμός testP ro = testRunner.testCase.testSuite.getPropertyValue («Testsuite_Property»)
log.info (testPro)
Υπόθεση δοκιμής: Σύνταξη: $ {# TestCase # Value}
Παράδειγμα:
ορισμός δοκιμή casePro = testRunner.testCase.getPropertyValue («Testcase_Property»)
log.info (testcasePro)
Ανατρέξτε στο παρακάτω στιγμιότυπο οθόνης:
# 2. Γράφοντας σε ιδιότητες:
Για να το κάνουμε αυτό, πρέπει να το χρησιμοποιήσουμε setPropertyValue μέθοδος.
Σύνταξη: setPropertyValue ('όνομα ιδιοκτησίας', 'τιμή')
Εάν εκχωρήσουμε τιμές σε άγνωστες ιδιότητες, τότε το SoapUI θα δημιουργήσει αυτές τις ιδιότητες πρόσφατα. Για υπάρχουσες ιδιότητες θα λάβετε τις τιμές κατά τη διάρκεια της ανάθεσης.
# 3. Αφαίρεση ιδιοτήτων μέσω σεναρίου:
Αυτό μπορεί να γίνει κάνοντας δεξί κλικ στο όνομα της ιδιότητας από τον πίνακα ιδιοτήτων. Στη συνέχεια, κάντε κλικ στην επιλογή Κατάργηση από το μενού περιβάλλοντος.
Για να το κάνετε αυτό χρησιμοποιώντας σενάριο για την κατάργηση των προσαρμοσμένων ιδιοτήτων, χρησιμοποιήστε τις ακόλουθες δηλώσεις για επίπεδο έργου, δοκιμαστικής σειράς ή δοκιμαστικών περιπτώσεων αντίστοιχα:
testRunner.testCase.testSuite.project.removeProperty ('Testcase_Property');
testRunner.testCase.testSuite.removeProperty ('Testcase_Property');
testRunner.testCase.removeProperty ('Testcase_Property');
Τα παραπάνω σενάρια δεν είναι βέλτιστα όταν έχουμε πολλές ιδιότητες σε κάθε επίπεδο, καθώς αυτά τα βήματα πρέπει να επαναλαμβάνονται αρκετές φορές για κάθε ιδιότητα. Μια εναλλακτική λύση είναι να επαναλάβετε τις ιδιότητες μέσω του σεναρίου όπως παρακάτω:
testRunner.testCase.properties.each
{
κλειδί, τιμή ->
testRunner.testCase.removeProperty (κλειδί)
}
Το παραπάνω σενάριο θα επαναληφθεί έως την τελευταία ιδιότητα που είναι διαθέσιμη στη δοκιμαστική υπόθεση. « Κλειδί 'Αναφέρεται το όνομα του ακινήτου όπου ως' αξία Δηλώνει την πραγματική αξία του ακινήτου. Μπορούμε να τροποποιήσουμε το παραπάνω σενάριο για να αφαιρέσουμε τη μαζική λίστα ιδιοτήτων που υπάρχει σε διάφορα επίπεδα.
# 4. Προσθήκη ιδιοκτησίας:
Προσθήκη ιδιοκτησίας χρησιμοποιείται μέθοδος για την οποία η σύνταξη είναι:
addProperty (όνομα ιδιοκτησίας);
Αυτό μπορεί να προσαρμοστεί για κάθε επίπεδο όπως παρακάτω:
testRunner.testCase.testSuite.project.addProperty («ProjectProperty1»)
testRunner.testCase.testSuite.addProperty («TestsuiteProperty1»)
testRunner.testCase.addProperty («TestcaseProperty1»)
Μετά την εκτέλεση των παραπάνω σεναρίων, κάντε κλικ στο όνομα έργου / δοκιμαστικής σειράς / δοκιμαστικής υπόθεσης. Ελέγξτε την καρτέλα προσαρμοσμένων ιδιοτήτων στον πίνακα ιδιοτήτων και η ιδιότητα που δημιουργήθηκε εμφανίζεται εδώ. Δείτε παρακάτω για αναφορά:
Χρήση ακινήτων σε υπηρεσίες
Σε αυτήν την ενότητα, θα μάθουμε πώς μπορούμε να χρησιμοποιήσουμε τις ιδιότητες σε υπηρεσίες και θα χρησιμοποιήσουμε τα παραπάνω σενάρια για την προσθήκη, εκχώρηση, ανάκτηση δεδομένων ιδιοκτησίας με την υπηρεσία ιστού μετατροπέα νομισμάτων.
Ενσωμάτωση ιδιοτήτων στην υπηρεσία:
Ας αρχίσουμε να προσθέτουμε βήματα δοκιμής όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης.
Στο παραπάνω στιγμιότυπο οθόνης, το βήμα δοκιμής AddProperties_Script περιέχει το ακόλουθο σενάριο που προσθέτει δύο ιδιότητες όπως Property_FromCurrency και Property_ToCurrency .
// Προσθήκη ιδιοτήτων
testRunner.testCase.addProperty (‘Property_FromCurrency’)
testRunner.testCase.addProperty (‘Property_ToCurrency’)
// Εκχωρήστε τιμές στις Ιδιότητες
testRunner.testCase.setPropertyValue («Property_FromCurrency», «USD»)
testRunner.testCase.setPropertyValue (‘Property_ToCurrency’, ‘INR’)
Στο ServiceRequest_CurrencyConverter_1 περιέχει το αίτημα με παραμέτρους εισαγωγής όπως φαίνεται παρακάτω:
Οι εκχωρημένες τιμές στις ιδιότητες θα μεταφερθούν σε αυτές τις παραμέτρους κατά την εκτέλεση. Μετά από αυτό το βήμα δοκιμής, GetResponseData_Script Το βήμα δοκιμής έχει το σενάριο που θα λάβει την τιμή απόκρισης και θα δείξει το αποτέλεσμα στο αρχείο καταγραφής. Εδώ είναι το σενάριο.
// Λάβετε δεδομένα απόκρισης από την υπηρεσία
def απόκριση = context.expand (‘$ {ServiceRequest_Currency
Μετατροπέας_1 # Απόκριση} »)
def parsedResponse = νέο XmlSlurper (). parseText (απόκριση)
String convertValue = parsedResponse.Body.ConversionRateResponse.
ConversionRateResult.text ()
log.info (convertValue)
Όταν όλα τα βήματα είναι έτοιμα, κάντε διπλό κλικ στο όνομα της δοκιμαστικής σουίτας και εκτελέστε τη δοκιμαστική σουίτα. Στη συνέχεια, κάντε διπλό κλικ στο ServiceRequest_CurrencyConverter_1 και δείτε την ενότητα απόκρισης.
Αυτό θα βρούμε:
- Θα ληφθεί απάντηση
- Ανοίξτε το αρχείο καταγραφής σεναρίων για να δείτε τα προκύπτοντα δεδομένα που μετατρέπονται με βάση τις παραμέτρους εισόδου
Έτσι μπορούμε να περάσουμε τις παραμέτρους στο αίτημα εισαγωγής και να λάβουμε την απάντηση μέσω του σεναρίου χρησιμοποιώντας ιδιότητες. Προχωρώντας περαιτέρω, μπορούμε επίσης να μεταβιβάσουμε την τιμή απόκρισης σε άλλη υπηρεσία ως είσοδο.
Μεταφορά ακινήτου
Το βήμα δοκιμής μεταφοράς ιδιοτήτων μεταφέρει τα δεδομένα ιδιοκτησίας από μια ιδιότητα σε άλλη κατά την εκτέλεση. Ας δούμε εν συντομία πώς μπορούμε να δημιουργήσουμε το βήμα δοκιμής μεταφοράς ιδιοκτησίας και πώς η τιμή ιδιοκτησίας μεταφέρεται μεταξύ δύο ιδιοτήτων.
- Κάντε δεξί κλικ στο όνομα της υπόθεσης υπό δοκιμή
- Κάντε κλικ Προσθέστε το βήμα και στη συνέχεια κάντε κλικ Ιδιότητες επιλογή από το μενού περιβάλλοντος
- Επαναλάβετε τα παραπάνω βήματα για να δημιουργήσετε τη δεύτερη ιδιότητα. Δείτε το παρακάτω στιγμιότυπο οθόνης:
- Τώρα πρέπει να προσθέσουμε το βήμα δοκιμής μεταφοράς ιδιοκτησίας.
- Κάντε δεξί κλικ στο όνομα της υπόθεσης και κάντε κλικ στην επιλογή μεταφοράς ιδιοκτησίας από το μενού περιβάλλοντος
- Εισαγάγετε το επιθυμητό όνομα μεταφοράς ιδιοκτησίας και, στη συνέχεια, κάντε κλικ στο OK
- Κάντε κλικ στην επιλογή Προσθήκη, δηλ. Συν στη γραμμή εργαλείων μεταφοράς ιδιοκτησίας
- Καθορίστε το όνομα μεταφοράς και, στη συνέχεια, κάντε κλικ στο κουμπί OK
- Στο πλαίσιο της δεξιάς πλευράς, υπάρχουν δύο διαθέσιμες ενότητες: Πηγή και στόχος.
Επιλέξτε την πηγή ως Ιδιότητες και ιδιοκτησία ως Property_Zipcode . Κάντε το ίδιο στην ενότητα στόχου. Επιλέγω Target_Property από την αναπτυσσόμενη ιδιοκτησία. Όταν εκτελείται το εικονίδιο, η τιμή της ιδιότητας θα μεταφερθεί από Property_Zipcode προς την Target_Property .
(Κάντε κλικ στην εικόνα για μεγέθυνση)
Δείτε τη μεταφερόμενη τιμή όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης.
Σημείωση: Η ιδιότητα προέλευσης πρέπει να περιέχει την προεπιλεγμένη τιμή.
Επιπλέον, υπάρχουν πολλές διαθέσιμες επιλογές στην οθόνη μεταφοράς ιδιοκτησίας.
- Αποτυχία μεταφοράς σε σφάλμα
- Μεταφορά περιεχομένου κειμένου
- Μεταφορά σε όλα
- Δικαίωμα μεταβίβασης αξίας
- Ορίστε το Null στην ελλείπουσα πηγή
- Παράβλεψη κενού / λείπουν τιμών
- Χρησιμοποιήστε το XQuery
- Μεταφορά παιδικών κόμβων
Φόρτωση ιδιοτήτων από εξωτερική πηγή:
Για να φορτώσετε ιδιότητες από εξωτερική πηγή, ακολουθήστε αυτά τα βήματα.
- Προσθέστε το βήμα δοκιμής ιδιοτήτων στην υπόθεση δοκιμής
- Εισαγάγετε το όνομα του βήματος της ιδιότητας και, στη συνέχεια, κάντε κλικ στο OK
- Στον πίνακα ιδιοτήτων κάτω από το πλαίσιο πλοήγησης, κάντε κλικ στην καρτέλα Προσαρμοσμένες ιδιότητες
- Κάντε κλικ εικονίδιο για τη φόρτωση των ιδιοτήτων από το εξωτερικό αρχείο ιδιοτήτων
Σημείωση: Το αρχείο ιδιοτήτων θα πρέπει να αποθηκευτεί ή να υπάρχει στον υπολογιστή σας. Για να αποθηκεύσετε τις ιδιότητες κάντε κλικ στο εικονίδιο.
Στη συνέχεια, μεταβείτε στην αντίστοιχη μονάδα δίσκου και επιλέξτε την ιδιότητα όπως φαίνεται παρακάτω:
Στο OK, μπορούμε να δούμε τις φορτωμένες ιδιότητες και τις τιμές τους στην καρτέλα Custom Properties.
συμπέρασμα
Λοιπόν, αυτές είναι ιδιότητες για εμάς!
Οι ιδιότητες κάθε επιπέδου έχουν τα δικά τους χαρακτηριστικά. Κατά τη διάρκεια της πρακτικής σας στο SoapUI, προσπαθήστε να συμπεριλάβετε ιδιότητες όποτε είναι δυνατόν με το βήμα δοκιμής σεναρίου groovy για προσθήκη, αφαίρεση, εκχώρηση και ανάκτηση δεδομένων ιδιοτήτων. Αυτό δεν είναι μόνο χρήσιμο όταν ασκείστε με τις υπηρεσίες, αλλά και κρίσιμο για πραγματικές δοκιμές εφαρμογών, καθώς αυτή η τεχνική είναι πολύ χρήσιμη επιβεβαιώστε τις δοκιμαστικές σας περιπτώσεις .
Η μεταφορά ιδιοτήτων μεταξύ των βημάτων δοκιμής είναι ευκολότερη από τη σύνταξη επαναλαμβανόμενων σεναρίων για τη δημιουργία νέων. Το SoapUI δίνει επίσης την υπέροχη δυνατότητα εισαγωγής και εξαγωγής ιδιοτήτων. Αυτή η δυνατότητα θα είναι χρήσιμη όταν χρησιμοποιούμε κοινές ιδιότητες, όπως στοιχεία σύνδεσης, λεπτομέρειες συνεδρίας κ.λπ., για πολλά έργα. Με αυτόν τον τρόπο, δεν χρειάζεται να δημιουργήσουμε τις ίδιες ιδιότητες ξανά και ξανά για πολλά έργα. Μπορούμε απλά να αλλάξουμε την τιμή του ακινήτου έναντι των ακινήτων που βασίζονται στα έργα.
Επόμενο σεμινάριο # 9 : Στο επόμενο σεμινάριο SoapUI θα μάθουμε Δηλώσεις υπό όρους στο Groovy όπως:
- Δευτερεύουσες δηλώσεις
- Δηλώσεις επανάληψης
- Πίνακες στο Γκρόβι
Αυτό είναι για σήμερα. Συνεχίστε να διαβάζετε και θα σας δούμε στο επόμενο σεμινάριο. Μοιραστείτε τις ερωτήσεις, τα σχόλια και τις εμπειρίες σας παρακάτω.
Συνιστώμενη ανάγνωση
- Τρόπος χρήσης ιδιοτήτων στο σενάριο SoapUI Groovy - SoapUI Tutorial # 7
- Πώς να εκτελέσετε δοκιμές βάσει δεδομένων στο SoapUI Pro - SoapUI Tutorial # 14
- 15+ Tutorial SoapUI: Το καλύτερο εργαλείο δοκιμών API υπηρεσιών Ιστού
- Πώς να γράψετε το βασικό σενάριο Groovy στο SoapUI - SoapUi Tutorial # 6
- Εκμάθηση έκλειψης σε βάθος για αρχάριους
- 7 Σημαντικά χαρακτηριστικά του SoapUI και του SoapUI Pro - Tutorial 2
- Κατανόηση των ισχυρισμών στο SoapUI - SoapUI Tutorial # 5
- 4 Σημαντικά χαρακτηριστικά του SoapUI Pro για Pro Audience - SoapUI Tutorial # 12