introduction appium
Αυτό το σεμινάριο εξηγεί τι είναι το Appium, η αρχιτεκτονική του, η ροή εργασίας και πώς να χρησιμοποιήσετε αυτό το εργαλείο ανοιχτού κώδικα για αυτοματισμούς για κινητά σε Android και iOS:
Το Appium είναι ένα εργαλείο αυτοματισμού για κινητά ανοιχτού κώδικα που παρέχει αυτοματοποίηση σε πλατφόρμες όπως Android, iOS κ.λπ.
Υποστηρίζει επίσης τον αυτοματισμό χρησιμοποιώντας πολλές γλώσσες προγραμματισμού όπως Java, PHP, Perl, Python κ.λπ.Έτσι, οι χρήστες μπορούν να χρησιμοποιούν οποιαδήποτε γλώσσα προγραμματισμού με την οποία είναι άνετα και να γράφουν αυτοματοποιημένα σενάρια.
=> Παρακολουθήστε τη σειρά απλών εκπαιδευτικών εφαρμογών εδώ.
Τι θα μάθετε:
Τι είναι το Appium;
Εδώ είναι ένα εκπαιδευτικό βίντεο:
Επισκόπηση των εφαρμογών
Όλες οι εφαρμογές μπορούν να αυτοματοποιηθούν, συμπεριλαμβανομένων εγγενών, υβριδικών και εφαρμογών Ιστού.Δίνεται παρακάτω μια απλή επισκόπηση διαφόρων τύπων εφαρμογών.
- Εγγενείς εφαρμογές: Αυτές οι εφαρμογέςγράφονται χρησιμοποιώντας SDK iOS, Android ή Windows.Αυτά είναι προσβάσιμα μόνο μετά την εγκατάσταση στη συσκευή. Για παράδειγμα, Skype, το οποίο μπορεί να χρησιμοποιηθεί μόνο μετά την εγκατάσταση στη συσκευή. Δεν μπορούμε να ανοίξουμε την εφαρμογή μέσω του προγράμματος περιήγησης.
- Ιστός Εφαρμογές: Εφαρμογές Ιστού για κινητάμπορείτε να αποκτήσετε πρόσβαση χρησιμοποιώντας ένα πρόγραμμα περιήγησης για κινητά.Η πρόσβαση σε εφαρμογές Ιστού είναι δυνατή μόνο μέσω προγράμματος περιήγησης. Για παράδειγμα, Η πρόσβαση στο softwaretestinghelp.com είναι δυνατή μόνο μέσω του προγράμματος περιήγησης. Δεν διαθέτουμε ξεχωριστή εφαρμογή για τον ιστότοπο.
- Υβρίδιο Εφαρμογές: Αυτά ταεφαρμογέςέχετε μια περιτύλιξη γύρω από μια «προβολή ιστού» - έναν εγγενή έλεγχο που επιτρέπει την αλληλεπίδραση με περιεχόμενο ιστού.Αυτά μπορούν να εγκατασταθούν στη συσκευή και να έχουν πρόσβαση μέσω της διεύθυνσης URL του προγράμματος περιήγησης. Για παράδειγμα, Το Amazon μπορεί να εγκατασταθεί ως ξεχωριστή εφαρμογή στη συσκευή και μπορεί επίσης να έχει πρόσβαση μέσω προγράμματος περιήγησης ως Αμαζόνα.
Το πιο σημαντικό, αυτό το εργαλείο είναι 'cross-platform' - το οποίο σας επιτρέπει να γράφετε δοκιμές σε πολλές πλατφόρμες (iOS, Android, Windows), χρησιμοποιώντας το ίδιο API. Αυτό επιτρέπει την επαναχρησιμοποίηση κώδικα μεταξύ συσκευών iOS, Android και Windows.
Αρχιτεκτονική των εποχών
Αυτός είναι ένας διακομιστής HTTP γραμμένος σε γλώσσα προγραμματισμού Node.js που χειρίζεται τις συνεδρίες WebDriver. Ο διακομιστής Appium λαμβάνει αιτήματα HTTP από τις βιβλιοθήκες πελατών σε μορφή JSON. Στη συνέχεια, τα αιτήματα αντιμετωπίζονται με διαφορετικούς τρόπους, ανάλογα με την πλατφόρμα στην οποία εκτελείται.
Ακολουθεί την αρχιτεκτονική πελάτη-διακομιστή. Υπάρχουν 3 συστατικά που περιλαμβάνονται σε αυτό:
- πελάτης appium
- διακομιστής appium
- Τερματική συσκευή
# 1) Πελάτης Marcus
Ο κωδικοποιημένος κώδικας αυτοματοποίησης είναι αυτό που ονομάζουμε Appium Client.
είναι το κλειδί ασφαλείας δικτύου ίδιο με τον κωδικό πρόσβασης wifi
Ο κώδικας είναι γραμμένος σε οποιαδήποτε γλώσσα προγραμματισμού όπως PHP, Java, Phyton, κ.λπ. Αυτό το σενάριο αυτοματοποίησης περιέχει τις λεπτομέρειες διαμόρφωσης της φορητής συσκευής και της εφαρμογής. Μαζί με αυτό, η λογική / κώδικας για την εκτέλεση των δοκιμαστικών περιπτώσεων της εφαρμογής είναι σενάρια.
# 2) διακομιστής εποχών
Ο διακομιστής Appium γράφεται χρησιμοποιώντας τη γλώσσα προγραμματισμού Node.js.Λαμβάνει αιτήματα σύνδεσης και εντολών από τον πελάτη Appium σε μορφή JSON και εκτελεί αυτήν την εντολή σε κινητές συσκευές. Ο διακομιστής είναι απαραίτητος για εγκατάσταση στο μηχάνημα και ξεκινά πριν από την επίκληση του κωδικού αυτοματοποίησης.
Ο διακομιστής αλληλεπιδρά με διάφορες πλατφόρμες όπως iOS και Android. Δημιουργεί μια συνεδρία για αλληλεπίδραση με τελικές συσκευές εφαρμογών για κινητά. Είναι ένας διακομιστής HTTP γραμμένος σε γλώσσα προγραμματισμού Node.js που διαβάζει τα αιτήματα HTTP από τις βιβλιοθήκες πελατών και στέλνει αυτά τα αιτήματα στην κατάλληλη πλατφόρμα.
Για να ξεκινήσει ο διακομιστής, οι χρήστες πρέπει να κατεβάσουν την πηγή ή να την εγκαταστήσουν απευθείας από το Npm. Παρέχει επίσης την έκδοση GUI του διακομιστή. Μπορείτε να το κατεβάσετε από το επίσημο Appium ιστοσελίδα .
Στο επόμενο κεφάλαιο, θα συζητήσουμε λεπτομερέστερα την έκδοση GUI. Ένα από τα μεγαλύτερα πλεονεκτήματα αυτού του εργαλείου είναι ότι ο κώδικας που χρησιμοποιείτε για να αλληλεπιδράσετε με αυτό είναι γραμμένος σε πολλές γλώσσες όπως Java, C #, Ruby, Python κ.λπ. καθώς το Appium είναι το REST API στον πυρήνα του.
κορυφαίοι 10 διαχειριζόμενοι πάροχοι υπηρεσιών ασφαλείας
# 3) Τερματική συσκευή
Πρόκειται κυρίως για φορητή συσκευή σε πραγματικό χρόνο ή εξομοιωτή. Τα σενάρια αυτοματισμού εκτελούνται στην τελική συσκευή από τον διακομιστή Appium με τις εντολές του πελάτη.
Η ροή εργασίας της αρχιτεκτονικής Appium
Ο πελάτης Appium που κρατά τις λεπτομέρειες διαμόρφωσης και το σενάριο αυτοματισμού για τις δοκιμαστικές περιπτώσεις στέλνει τις εντολές στον διακομιστή σε μορφή JSON. Το σενάριο αυτοματισμού μετατρέπεται σε μορφή JSON από ενσωματωμένα αρχεία βάζων στον πελάτη.
Στη συνέχεια, ο διακομιστής Appium αναγνωρίζει την εντολή και δημιουργεί μια σύνδεση με την αντίστοιχη τελική συσκευή. Μόλις πραγματοποιηθεί η σύνδεση, ενεργοποιεί την εκτέλεση δοκιμαστικών περιπτώσεων στην τελική συσκευή. Η τελική συσκευή ανταποκρίνεται στο αίτημα με τη μορφή HTTP στο Appium.
Καθώς και όταν οι δοκιμαστικές περιπτώσεις εκτελούνται στη φορητή συσκευή / εξομοιωτή, συμπληρώνει το αρχείο καταγραφής όλων των ενεργειών που εκτελούνται στη συσκευή / εξομοιωτή.
Εργασία του Appium σε iOS
Αυτό το εργαλείο χρησιμοποιεί το API UIAutomation της Apple για να αλληλεπιδράσει με τα στοιχεία διεπαφής χρήστη της εφαρμογής σε μια συσκευή iOS. Το UIAutomation είναι μια βιβλιοθήκη JavaScript που παρέχεται από την Apple Company. Χρησιμοποιεί αυτές τις βιβλιοθήκες για να αυτοματοποιήσει τις εφαρμογές στο iOS.
Όταν εκτελούμε τα δοκιμαστικά σενάρια, οι εντολές στα σενάρια δοκιμής λαμβάνονται με τη μορφή JSON μέσω αιτήματος HTTP στον διακομιστή Appium. Ο διακομιστής στέλνει την εντολή σε αυτά τα όργανα και τα όργανα αναζητούν το αρχείο bootstrap.js.
Στη συνέχεια, αυτές οι εντολές εκτελούνται στο αρχείο bootstrap.js στο περιβάλλον των οργάνων iOS. Μετά την εκτέλεση της εντολής, ο πελάτης στέλνει πίσω το μήνυμα (επιτυχία / αποτυχία) στον διακομιστή Appium με τις λεπτομέρειες καταγραφής της εκτελεσθείσας εντολής.
Εργασία του Appium σε Android
Το Appium χρησιμοποιεί το πλαίσιο UIAutomator για να αλληλεπιδράσει με τα στοιχεία διεπαφής χρήστη της εφαρμογής σε μια συσκευή Android. Το UIAutomator είναι ένα πλαίσιο που αναπτύχθηκε από τους προγραμματιστές Android για να δοκιμάσει τη διεπαφή χρήστη του.
Εδώ, αντί για το UIAutomation API όπως είδαμε στην Apple, έχουμε ένα UIAutomator / Selendroid και bootstrap.jar στη θέση του αρχείου bootstrap.js. Υποστηρίζει όλες τις εκδόσεις Android που είναι μεγαλύτερες ή ίσες με 17. Για παλαιότερες εκδόσεις Android, το Appium χρησιμοποιεί το πλαίσιο Selendroid.
Όταν εκτελούμε τα δοκιμαστικά σενάρια, το Appium στέλνει την εντολή σε μορφή JSON στο UIAutomator ή στο Selendroid με βάση την έκδοση Android. Εδώ, το bootstrap.jar λειτουργεί ως διακομιστής TCP, τον οποίο μπορούμε να χρησιμοποιήσουμε για την αποστολή της δοκιμαστικής εντολής για την εκτέλεση της ενέργειας στη συσκευή Android χρησιμοποιώντας το UIAutomator / Selendroid.
συμπέρασμα
Σε αυτό το κεφάλαιο, έχουμε μια βασική κατανόηση του Appium, είναι η Αρχιτεκτονική, η Ροή Εργασίας και η Εργασία του Appium σε iOS / Android.
Στο επόμενο κεφάλαιο, θα δούμε πώς να ρυθμίσουμε το Appium και άλλο βασικό λογισμικό που θα εγκατασταθεί για φορητούς αυτοματισμούς σε πραγματικές συσκευές.
Εκπαιδευτικό πρόγραμμα PREV | ΕΠΟΜΕΝΟ Φροντιστήριο
Συνιστώμενη ανάγνωση
- Δημιουργήστε δοκιμές Appium για μια εφαρμογή Android
- Εισαγωγή στο Appium Studio: Βασικά οφέλη και δυνατότητες
- Εκτέλεση των δοκιμών Appium σας παράλληλα χρησιμοποιώντας το Appium Studio για το Eclipse
- Δημιουργία δοκιμών εποχής χρησιμοποιώντας το epochs Studio for Eclipse
- Appium Studio για Eclipse: End-to-end Appium / Selenium Automation From Eclipse
- Εκπαιδευτικό πρόγραμμα για δοκιμές εφαρμογών Android και iOS για κινητά
- Σύνδεση πραγματικών συσκευών iOS και Android από το Cloud στο Appium Studio
- Δημιουργία δοκιμής Appium για μια εφαρμογή iOS