Τα καλύτερα εργαλεία αναθεώρησης των εργαλείων δοκιμών αυτοματισμού σεληνίου: Ρομποτικό πλαίσιο εναντίον του Katalon Studio

Πρόσφατα είχα την ευκαιρία να συνεργαστώ με αρκετές ομάδες δοκιμών λογισμικού για να τους βοηθήσω να ξεκινήσουν τις προσπάθειές τους για αυτοματοποίηση δοκιμών. Οι ομάδες αποτελούνται κυρίως από χειρογράφους και μερικούς που είχαν εμπειρία πριν από την αυτοματοποίηση δοκιμών, αλλά κανένας από αυτούς δεν ήταν εξοικειωμένος με προγραμματισμό όπως οι προγραμματιστές. Οι εφαρμογές είναι ως επί το πλείστον βασισμένες στο διαδίκτυο, με συνοδευτικές εφαρμογές για κινητά. Δημιούργησα μια σύντομη λίστα με διάφορα εργαλεία ελέγχου, συμπεριλαμβανομένων των δωρεάν και των μη-δωρεάν, και στη συνέχεια ήρθε με τους δύο καλύτερους - το Robot Framework και το Katalon Studio. Είναι πολύ καλές επιλογές σε γενικές γραμμές, οπότε πιστεύω ότι θα ήταν ενδιαφέρον να κάνουμε μια παράλληλη σύγκριση και να δούμε πώς θα εκτελούν στο μέλλον.

Τεχνολογία

Καιţie τους, το οποίο στηρίζεται πάνω από τοЛημόνતτ, το οποίο είναι jsme υποστηριζόμενες από τους κορυ prostείς προγραμματισládς του web browser. Είναι ασφαλές να πούμε ότι το σελήνιο είναι ο καλύτερος τρόπος για να αυτοματοποιήσετε το πρόγραμμα περιήγησης ιστού σας για τώρα.

Το σελήνιο μπορεί επίσης να χρησιμοποιηθεί για την αυτοματοποίηση εφαρμογών για κινητά μέσω Appium. Χορηγηθεί ότι τόσο η Google όσο και η Apple καταλήγουν στο δικό τους τρόπο να κάνουν αυτοματοποίηση, χρησιμοποιώντας το Selenium και το Appium σημαίνει ότι μπορούμε να επαναχρησιμοποιούμε τον πηγαίο κώδικα και τις γνώσεις σε πολλαπλές πλατφόρμες - να μαθαίνετε μία φορά, να γράφετε παντού.

Έτσι για την τεχνολογία, είναι μια ισοπαλία. Ρομποτικό πλαίσιο - Στούντιο Katalon: 1-1.

Τιμή

Και οι δύο είναι ελεύθεροι χωρίς καμία υποχρέωση. Η εκτέλεση ξεπερασμένου λογισμικού "enterprise" όπως το UFT είναι απλώς δαπανηρό για εμάς.

Ρομποτικό πλαίσιο - Στούντιο Katalon: 1-1.

Εγκατάσταση & Εξαρτήματα

Το Robot Framework συνοδεύεται από δύο ξεχωριστά στοιχεία: τον δοκιμαστή και τον IDE. Είναι λίγο περίπλοκο να εγκαταστήσετε αυτά τα εξαρτήματα, αλλά μόλις γίνουν τα πράγματα, καλό είναι να πάτε. Πρώτον, πρέπει να εγκαταστήσετε Python στον υπολογιστή σας. Στη συνέχεια, εκτελέστε ορισμένες γραμμές εντολών. Εάν χρησιμοποιείτε Windows, μπορεί να αντιμετωπίσετε προβλήματα, επειδή αυτό το λειτουργικό σύστημα δεν είναι πολίτης πρώτης κατηγορίας της Python, αλλά σπάνια συμβαίνουν και οι λύσεις μπορούν να γίνουν εύκολα.

Υπάρχει πράγματι ένα τρίτο "ανεπίσημο" στοιχείο, το οποίο θα αναφερθώ αργότερα.

Για το Katalon Studio, από τη γνώμη μου, αυτή είναι μια από τις καλύτερες εμπειρίες εγκατάστασης. Εάν έχετε εγκαταστήσει το Eclipse, τότε θα το γνωρίζετε. Για τα Windows, θα πρέπει να κατεβάσετε ένα αρχείο ZIP και να το εξαγάγετε. Για το macOS, υπάρχει ένα αρχείο DMG έτοιμο για εσάς. Αρκετά τακτοποιημένο.

Δομή ρομπότ - Studio Katalon: 0.5-1.

Δοκιμή σχεδιασμού

Καταγραφή (αυτοματοποίηση δοκιμών χωρίς κώδικα)

Ειλικρινά, ως προγραμματιστής, δεν είμαι μεγάλος οπαδός της εγγραφής και της αναπαραγωγής. Είναι πιο εύκολο και πιο γρήγορο για μένα να πληκτρολογήσω τον κωδικό. Ωστόσο, για όσους έχουν μικρή εμπειρία με την κωδικοποίηση, η ικανότητα καταγραφής των ενεργειών τους και η δημιουργία δοκιμαστικών περιπτώσεων είναι μια τεράστια κερδοφορία παραγωγικότητας.

Δυστυχώς, το Robot Framework δεν παρέχει έναν καταγραφέα - και εδώ εμφανίζεται το τρίτο στοιχείο. Το έργο Selenium περιλαμβάνει ένα περίφημο add-on Firefox που ονομάζεται Selenium IDE, το οποίο είναι ουσιαστικά ένα εργαλείο δοκιμής εγγραφής και αναπαραγωγής. Το Selenium IDE μπορεί να έχει πρόσθετα (είναι add-on στο add-on!) Και κάποιος έχει γράψει ευγενικά ένα add-on που βοηθά το Selenium IDE να δημιουργήσει κώδικα του Robot Framework. Ορισμένες άλλες εργασίες εγκατάστασης πρέπει να γίνουν, αλλά λειτουργεί.

Το μειονέκτημα αυτού του γεγονότος είναι ότι η ανάπτυξη του IDE του Selenium ήταν ανενεργή για κάποιο χρονικό διάστημα και βασίζεται στο παλιό πρόσθετο πλαίσιο του Firefox, το οποίο αποφάσισε να αποσυνδέσει στο τέλος του 2017. Ναι, το Selenium IDE θα σταματήσει να εργάζεται εκείνη την εποχή για πιο πρόσφατες εκδόσεις του Firefox.

Το Katalon Studio διαθέτει τα δικά του πρόσθετα για το Chrome, τον Firefox ή ακόμα και τον Internet Explorer. Η εγκατάσταση είναι τόσο εύκολη όσο η μετάβαση στα αντίστοιχα καταστήματα πρόσθετων προγραμμάτων περιήγησης στο Web και κάντε κλικ στην εγκατάσταση.

Το Katalon Studio επεκτείνει το προβάδισμά του εδώ. Δομή ρομπότ - Studio Katalon: 0.5-1.

Κωδικοποίηση (δέσμη ενεργειών)

Το Robot Framework έχει τη δική του συγκεκριμένη γλώσσα (DSL). Οι προσαρμοσμένες λέξεις-κλειδιά μπορούν να γραφτούν σε Python και Java, αλλά όταν πρόκειται για περιεχόμενο δοκιμαστικών περιπτώσεων, πρέπει να μιλήσετε ότι το DSL. Γιατί μιμείται τις ανθρώπινες γλώσσες για απλές δοκιμαστικές περιπτώσεις, πολύπλοκες είναι αρκετά ρομποτικές. Προσωπικά το βρίσκω λιγότερο περιγραφικό από τις κοινές γλώσσες προγραμματισμού:

*** Ρυθμίσεις ***
Βιβλιοθήκη String
*** Δοκιμαστικές περιπτώσεις ***
For-Loop-In-Range
 : ΓΙΑ $ {ΔΕΙΚΤΗΣ} ΣΤΗΝ ΠΕΡΙΟΧΗ 1 3
 \ Καταγραφή $ {INDEX}
 \ $ {RANDOM_STRING} = Δημιουργία τυχαίας συμβολοσειράς $ {INDEX}
 \ Καταχωρίστε $ {RANDOM_STRING}
For-Loop-Στοιχεία
 @ {ΣΤΟΙΧΕΙΑ} Δημιουργία λίστας Star Trek Star Wars Star Perry Rhodan
 : ΓΙΑ $ {ELEMENT} IN @ {ITEMS}
 \ Καταγραφή $ {ELEMENT}
 \ $ {ELEMENT} Αντικαταστήστε τον κώδικα $ {ELEMENT} $ {SPACE} $ {EMPTY}
 \ Καταγραφή $ {ELEMENT}
For-Loop-Exiting
 @ {ITEMS} Δημιουργία λίστας Καλό στοιχείο 1 Break On Me Good Element 2
 : ΓΙΑ $ {ELEMENT} IN @ {ITEMS}
 \ Καταγραφή $ {ELEMENT}
 \ Run Keyword Αν το '$ {ELEMENT}' == 'Break On Me' Exit For Loop
 \ Log Κάντε περισσότερες ενέργειες εδώ ...
Επανάληψη-Δράση
 Επαναλάβετε την καταγραφή λέξεων-κλειδιών 2 Επαναλαμβάνοντας αυτό το ...

Αλλά το IDE του Robot Framework με την επισήμανση σύνταξης είναι καλό, οπότε υποθέτω ότι μπορώ να το συνηθίσω γρήγορα ούτως ή άλλως.

Το Katalon Studio, από την άλλη πλευρά, υποστηρίζει τον Groovy και φυσικά την Java (Groovy βασίζεται στην Java). Γιατί δεν είναι τόσο δημοφιλής όσο οι γλωσσικές γλώσσες προγραμματισμού όπως Java, C # ή JavaScript - φέρει παρόμοιες παραγωγικές δομές όπως στο Ruby, Python ή JavaScript. Ένα άλλο καλό είναι ότι υπάρχουν τόνοι ελεύθερων βιβλιοθηκών Java για να κάνουμε μόνο τα πάντα, οπότε δεν χρειάζεται να ξαναγράψουμε "τα πάντα".

Αλλά το πιο cool πράγμα στο Katalon Studio είναι ότι μπορούμε να αλλάξουμε οποιαδήποτε στιγμή τη λειτουργία Manual (με το Recorder και το point-and-click GUI) και τη λειτουργία Script (με Groovy editor). Επωφελήσαμε από αυτό για να εκπαιδεύσουμε τους χειρογράφους να γράφουν κώδικα. Καταρχήν σχεδιάζουν τις δοκιμαστικές τους περιπτώσεις με ενέργειες και στοιχεία κλικ και κλικ και στη συνέχεια μεταβαίνουν στη λειτουργία Script για να δουν τον αντίστοιχο κωδικό Groovy. Πολύ ωραίο χαρακτηριστικό.

Δομή ρομπότ - Studio Katalon: 0.5-1.

Στοιχεία δοκιμής

Και τα δυο είναι καλά. Τα δεδομένα για τις δοκιμαστικές περιπτώσεις μπορούν να τροφοδοτηθούν από αρχεία Excel, βάσεις δεδομένων κλπ. Πήραμε αυτό που χρειαζόμαστε, έτσι ώστε να μην διαμαρτυρηθείτε μέχρι τώρα.

Ρομποτικό πλαίσιο - Στούντιο Katalon: 1-1.

Επεκτασιμότητα λέξεων-κλειδιών

Μπορείτε να γράψετε προσαρμοσμένες λέξεις-κλειδιά τόσο στο Robot Framework όσο και στο Katalon Studio. Απαιτούσαν κάποια επαναλαμβανόμενη τελετουργική σύνταξη, αλλά οι δοκιμαστές μπορούν να γράψουν τις δικές τους λέξεις-κλειδιά χωρίς τη βοήθεια προγραμματιστών. Η τεκμηρίωση και τα σεμινάρια είναι αρκετά καλά, γι 'αυτό θα το αφήσω ως ισοπαλία. Ρομποτικό πλαίσιο - Στούντιο Katalon: 1-1.

Εκτέλεση, αναφορά και ολοκλήρωση

Αναμένουμε ότι τα σύγχρονα εργαλεία αυτοματισμού δοκιμών θα είναι σε θέση να εκτελέσουν δοκιμαστικές περιπτώσεις μέσω γραμμής εντολών και σε CI όπως Jenkins. Πρέπει επίσης να έχουμε αναφορές σε εφαρμογή για να διευκολύνουμε τη διερεύνηση αποτυχιών. Οι εκθέσεις πρέπει επίσης να προετοιμάζονται σε αρχειοθετημένη μορφή (HTML, CSV, PDF) ώστε να μπορούν να εξεταστούν αργότερα.

Φαίνεται ότι το Katalon Studio πειραματίζεται με μια πιο έμφυτη ενσωμάτωση JIRA, που μου ακούγεται καλό, καθώς χρησιμοποιούμε και JIRA, αλλά επιτρέψτε μου να δω πόσο καλά θα λειτουργήσει.

Ένα πράγμα που λείπει και στις δύο είναι μια εικόνα για να μειώσει το χρόνο για την ανάπτυξη CI και τη διαμόρφωση, αλλά ίσως είναι μόνο τεμπελιά μου.

Μια άλλη ισοπαλία για μένα. Ρομποτικό πλαίσιο - Στούντιο Katalon: 1-1.

Κοινότητα και υποστήριξη

Και τα δύο προϊόντα βρίσκονται σε ενεργό ανάπτυξη και υποστηρίζονται καλά από τους ιδιοκτήτες τους καθώς και από την κοινότητα. Οι ερωτήσεις απαντώνται σε πολύ σύντομο χρονικό διάστημα. Επιπλέον, δεδομένου ότι το Robot Framework και το Katalon Studio είναι βασισμένα σε σελήνιο, μπορούμε να προσφύγουμε λίγο σε βανίλια σελήνιο και WebDriver για σύνθετα σενάρια.

Φαίνεται ότι το Katalon Studio χτίζεται από μια εταιρεία που κάνει υπηρεσίες δοκιμών λογισμικού, πράγμα που σημαίνει ότι γνωρίζουν ποια χαρακτηριστικά είναι πρακτικά και απαραίτητα. Το Robot Framework είναι ένα δημοφιλές έργο ανοιχτού κώδικα στο GitHub, οπότε περιμένω το ίδιο πράγμα.

Ο τελευταίος δεσμός εδώ. Ρομποτικό πλαίσιο - Στούντιο Katalon: 1-1.

συμπέρασμα

Στήριγμα ρομπότ: 7,5 / 9 - Studio Katalon: 9/9.

Και τα δύο εργαλεία είναι εξαιρετικές επιλογές για τις ομάδες αυτοματισμού δοκιμών, με το Katalon Studio να έχει ένα πλεονέκτημα στην εμπειρία των χρηστών και ως εκ τούτου είναι καλύτερο από το Robot Framework για ομάδα αυτοματισμών δοκιμών που βασίζονται σε δοκιμαστές. Ο ανταγωνισμός είναι πάντα καλός για τους καταναλωτές και ανυπομονώ να δω περισσότερες προόδους από τους παίκτες στο μέλλον.

Δημοσίευση blog μου: Robot Framework vs Katalon Studio