ΔΗΜΙΟΥΡΓΙΑ ΕΝOΣ ΔΙΑΔΙΚΤΥΑΚΟΥ ΕΓΓΡΑΦΕΑ (WEB
RECORDER) ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ ΕΛΕΓΧΩΝ ΣΕ
ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
Διπλωματικός Φοιτητής:
Νήρας Δημήτριος
ΑΕΜ: 8057
Επιβλέποντες:
Επίκουρος Καθηγητής, Ανδρέας Λ. Συμεωνίδης
Μεταδιδακτορικός Ερευνητής, Κυριάκος Χατζηδημητρίου
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ
ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ
Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών
Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών
Θεσσαλονίκη, Οκτώβριος 2017
Κίνητρο
• Μεγάλος αριθμός ιστοσελίδων και διαδικτυακών εφαρμογών
• Ανάπτυξη test ελέγχου (user acceptance/e2e tests)
• Εύρεση των στοιχείων που πρέπει να ελεγχθούν
• Ανάθεση τιμών σε αυτά
• Έλεγχος της εύρυθμης λειτουργίας τους
Αποτέλεσμα: Επίπονη και χρονοβόρα διαδικασία (~25% χρόνου)
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
2
Web Recorder
Σκοπός της Διπλωματικής Εργασίας
• Αυτοματοποίηση της διαδικασίας δημιουργίας και ελέγχου των test
• Δημιουργία Chrome extension για την καταγραφή των κινήσεων (Clicks,
Inputs, HTML, CSS, JS, API calls, περιεχόμενο κτλ.)
• Δημιουργία διαδικτυακής εφαρμογής (προγραμματισμός και
επεξεργασία των test, εμφάνιση αποτελεσμάτων κ.ά.)
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
3
Web Recorder
Web Recorder
Automated Website Testing and Monitoring
Υπάρχοντα Εργαλεία
• Ghost Inspector
• Sauce Labs
• Selenium
• Sahi
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
4
Web Recorder
Web Recorder
• Επέκταση στον Chrome (Chrome
Extension)
• Διαδικτυακή εφαρμογή
▫ Παρασκήνιο (Back-end)
▫ Προσκήνιο (Front-end)
▫ Βάση Δεδομένων (Database)
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
5
Web Recorder
• Καταγραφή Test (Tests Recording)
• Έλεγχος Ιστοσελίδων (Website Testing)
• Έλεγχος Διεπαφών (UI Testing)
• Συνεχής Παρακολούθηση (Continuous
Monitoring)
• Δημιουργία και Διαχείριση test (Build
and Manage tests)
Web Recorder – Συνολική Δομή
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
6
Web Recorder
Δυνατότητες Επέκτασης
• Διαχείριση χρηστών (σύνδεση – log in, αποσύνδεση – log out)
• Καταγραφή κινήσεων χρήστη (Recording Operations)
• Καταγραφή βημάτων ελέγχου ορθής λειτουργίας (Recording Assertions)
• Αποθήκευση και αποστολή των test
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
7
Web Recorder
Δυνατότητες Διαδικτυακής Εφαρμογής - 1
• Διαχείριση χρηστών (εγγραφή, σύνδεση, αποσύνδεση, αλλαγή στοιχείων,
διαγραφή λογαριασμού)
• Εμφάνιση των διαθέσιμων σουιτών και των καταγεγραμμένων test
• Εκτέλεση ενός test (1 ή και περισσότερες φορές) και ολόκληρης σουίτας
• Επεξεργασία των βημάτων (steps) ενός test (λειτουργία, προσδιοριστικό,
περιγραφή, προσθήκη, διαγραφή, αναδιάταξη)
• Αναζήτηση βημάτων κατά την επεξεργασία τους
• Προσθήκη ενός test προς εκτέλεση πριν ή μετά την εκτέλεση ενός
συγκεκριμένου test
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
8
Web Recorder
Δυνατότητες Διαδικτυακής Εφαρμογής - 2
• Προβολή ιστορικού εκτελέσεων σε επίπεδο σουίτας και σε επίπεδο test
• Αυτόματη εκτέλεση σουίτας σε καθημερινή βάση
• Επεξεργασία στοιχείων σουίτας (όνομα, συχνότητα αυτόματης εκτέλεσης,
διαγραφή)
• Επεξεργασία στοιχείων test (όνομα, σουίτα, αριθμός εκτελέσεων,
διαγραφή)
• Εμφάνιση στατιστικών εκτελέσεων
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
9
Web Recorder
Τεχνολογίες
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
12
Web Recorder
Live DEMO
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
13
Web Recorder
Αποτελέσματα & Συμπεράσματα
• Εφαρμογή στις ενεργές ιστοσελίδες ‘‘https://cassandra.iti.gr’’,
‘‘https://issel.ee.auth.gr’’, ‘‘https://e-shop.gr’’, ‘‘http://ee.auth.gr’’ κ.ά.
• Δημιουργία 25 test διαφορετικού μεγέθους (5 έως και 35 βήματα) και
λειτουργικότητας
• Παρακολούθηση για 2 εβδομάδες
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
15
Web Recorder
Μελλοντική Εργασία
• Λήψη (Download) ενός test
• Προσθήκη περισσότερων επιλογών προγραμματισμού των test
• Προσθήκη βίντεο εκτέλεσης ενός test
• Προσθήκη περιγραφής κατά τη δημιουργία καινούριας σουίτας
• Διαφοροποίηση προγραμματισμένης εκτέλεσης (schedule) test και
σουιτών
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
17
Web Recorder
Προβολή και αποθετήρια
• Προβολή της εφαρμογής στην ηλεκτρονική διεύθυνση
‘‘http://snf-766614.vm.okeanos.grnet.gr’’
• Αποθετήριο (repository) επέκτασης Chrome στο GitHub στη διεύθυνση
‘‘https://github.com/AuthEceSoftEng/web-recorder-chrome-plugin’’
• Αποθετήριο (repository) διαδικτυακής εφαρμογής (προσκήνιο -
frontend και παρασκήνιο - backend) στη διεύθυνση
‘‘https://github.com/AuthEceSoftEng/web-recorder-server’’
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
18
Web Recorder
Ευχαριστίες
Ευχαριστώ τους επιβλέποντες της Διπλωματικής μου Εργασίας κ. Ανδρέα
Συμεωνίδη και Κυριάκο Χατζηδημητρίου
… και φυσικά εσάς για την προσοχή σας!
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
19
Web Recorder
Ερωτήσεις
Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ
20
Web Recorder

More Related Content

PPTX
Μαρία Κουιρουκίδου
PDF
Software process improvement
PPTX
Konstantinos Papadopoulos Diploma Thesis presenation
PPTX
Ανάλυση και μοντελοποίηση προφίλ προγραμματιστών μέσω τεχνικών εξόρυξης γνώση...
PPTX
Analysis and profiling of developer profiles using data mining techniques fro...
PPTX
Βασίλειος Λώλης 5638
PPTX
Development of an automatic procedure for Continuous Integration
PPTX
Ανάπτυξη αυτοματοποιημένης διαδικασίας Continuous Integration σε έργα λογισμικού
Μαρία Κουιρουκίδου
Software process improvement
Konstantinos Papadopoulos Diploma Thesis presenation
Ανάλυση και μοντελοποίηση προφίλ προγραμματιστών μέσω τεχνικών εξόρυξης γνώση...
Analysis and profiling of developer profiles using data mining techniques fro...
Βασίλειος Λώλης 5638
Development of an automatic procedure for Continuous Integration
Ανάπτυξη αυτοματοποιημένης διαδικασίας Continuous Integration σε έργα λογισμικού

Similar to Dimitris Niras (20)

PPTX
Andreas Hadjithomas
PDF
DEEP WEB DYNAMICS: ΕΝΤΟΠΙΣΜΟΣ, ΠΡΟΣΒΑΣΗ ΚΑΙ ΚΑΤΑΓΡΑΦΗ ΕΞΕΛΙΚΤΙΚΗΣ ΠΛΗΡΟΦΟΡΙΑΣ...
PPTX
Giannopoulos Nikolaos: Ανάπτυξη Τεχνικών Εξατομίκευσης Διαφημιστικών Προβολών...
PPTX
Σχεδιασμός και υλοποίηση πλήρους και αυτοματοποιημένου εργαλείου ελέγχων ασφά...
PDF
Thesis.Net Framework Training
PPTX
Ανάπτυξη Εφαρµογής Προφίλ Μηχανικών Λογισµικού από ∆εδοµένα Αποθετηρίων Λογισ...
PPTX
Ιωάννης Τσαφαράς
PPTX
Ιoannis Αgrotis
PPTX
εξ αποστάσεως εκπαίδευση Archicad
PPTX
Μιχαήλ Παπαμιχαήλ
PPTX
PPTX
Kagiafas Nikolaos Thesis Presentation
PPTX
Εφαρμογή Τεχνικών Εξόρυξης Δεδομένων σε Αποθήκες Λογισμικού με σκοπό την Εξα...
PPTX
Applying Data Mining Techniques on Software Repositories to Extract Design an...
PDF
KanoutasThomasThesis
PPTX
Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για τη δημιουργία ψ...
PPTX
Project Management: Ανάπτυξη εφαρμογής για iPhone.
PPTX
SoDaNet in Action: Παρουσίαση / Εκπαίδευση στη χρήση των Εφαρμογών της Υποδομ...
PPT
Citrix presentation
PPT
Continous integration with jenkins
Andreas Hadjithomas
DEEP WEB DYNAMICS: ΕΝΤΟΠΙΣΜΟΣ, ΠΡΟΣΒΑΣΗ ΚΑΙ ΚΑΤΑΓΡΑΦΗ ΕΞΕΛΙΚΤΙΚΗΣ ΠΛΗΡΟΦΟΡΙΑΣ...
Giannopoulos Nikolaos: Ανάπτυξη Τεχνικών Εξατομίκευσης Διαφημιστικών Προβολών...
Σχεδιασμός και υλοποίηση πλήρους και αυτοματοποιημένου εργαλείου ελέγχων ασφά...
Thesis.Net Framework Training
Ανάπτυξη Εφαρµογής Προφίλ Μηχανικών Λογισµικού από ∆εδοµένα Αποθετηρίων Λογισ...
Ιωάννης Τσαφαράς
Ιoannis Αgrotis
εξ αποστάσεως εκπαίδευση Archicad
Μιχαήλ Παπαμιχαήλ
Kagiafas Nikolaos Thesis Presentation
Εφαρμογή Τεχνικών Εξόρυξης Δεδομένων σε Αποθήκες Λογισμικού με σκοπό την Εξα...
Applying Data Mining Techniques on Software Repositories to Extract Design an...
KanoutasThomasThesis
Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για τη δημιουργία ψ...
Project Management: Ανάπτυξη εφαρμογής για iPhone.
SoDaNet in Action: Παρουσίαση / Εκπαίδευση στη χρήση των Εφαρμογών της Υποδομ...
Citrix presentation
Continous integration with jenkins
Ad

More from ISSEL (20)

PPTX
A hybrid Edge-to-Cloud Architecture towards low-code development of global fo...
PPTX
Upon evaluating source code generated by LLMs and improving the prompt engine...
PPTX
Implementation of a recording and playback tool for data served by IoT brokers
PPTX
Source Code Bug Detection and Repair using Deep Learning Techniques
PPTX
Implementation of a Mechanism for Automatic Transformation and Synchronizatio...
PPTX
Bias detection and evaluation in personalized ubiquitous computing
PPTX
Development of a Data Stream Prediction Methodology using AutoML models
PPTX
Methodology and prototype design for the identification of recyclable materia...
PPTX
DynaCraft: a super-strongly typed programming language
PPTX
Applying Machine Learning Techniques on Software Data Streams for Automated I...
PPTX
Application of Drift Detection and Management Techniques in Data Streams Usin...
PPTX
Υλοποίηση συστήματος προς καταχώρηση και αυτόματη αναγνώριση κατηγοριών κινήσ...
PDF
Σχεδιασμός και υλοποίηση No-Code μηχανισμού για τη δημιουργία και εφαρμογή π...
PPTX
Μελέτη Τεχνικών Ημι-επιβλεπόμενης Μάθησης για Κατηγοριοποίηση Κειμένου
PPTX
Υλοποίηση συστήµατος εντοπισµού ϑέσης σε εσωτερικό χώρο µε χρήση αισθητήρων κ...
PPTX
Σχεδίαση και Ανάπτυξη Μηχανισμού Εκτίμησης προσωποποιημένου Χρόνου Εκτέλεσης ...
PPTX
Ανάπτυξη Μοντέλου Διόρθωσης Γραμματικών Λαθών για την Ελληνική Γλώσσα.pptx
PPTX
Εντοπισμός και χαρτογράφηση ατελειών οδοστρώματος κατά την οδήγηση μέσω αισθη...
PDF
Ταχεία ανάπτυξη λογισμικού για πράκτορες συναλλαγών υψηλής συχνότητας σε αγορ...
PPTX
Σχεδιασµός και υλοποίηση αρθρωτού συστήµατος υπολογισµού τρισδιάστατης θέσης ...
A hybrid Edge-to-Cloud Architecture towards low-code development of global fo...
Upon evaluating source code generated by LLMs and improving the prompt engine...
Implementation of a recording and playback tool for data served by IoT brokers
Source Code Bug Detection and Repair using Deep Learning Techniques
Implementation of a Mechanism for Automatic Transformation and Synchronizatio...
Bias detection and evaluation in personalized ubiquitous computing
Development of a Data Stream Prediction Methodology using AutoML models
Methodology and prototype design for the identification of recyclable materia...
DynaCraft: a super-strongly typed programming language
Applying Machine Learning Techniques on Software Data Streams for Automated I...
Application of Drift Detection and Management Techniques in Data Streams Usin...
Υλοποίηση συστήματος προς καταχώρηση και αυτόματη αναγνώριση κατηγοριών κινήσ...
Σχεδιασμός και υλοποίηση No-Code μηχανισμού για τη δημιουργία και εφαρμογή π...
Μελέτη Τεχνικών Ημι-επιβλεπόμενης Μάθησης για Κατηγοριοποίηση Κειμένου
Υλοποίηση συστήµατος εντοπισµού ϑέσης σε εσωτερικό χώρο µε χρήση αισθητήρων κ...
Σχεδίαση και Ανάπτυξη Μηχανισμού Εκτίμησης προσωποποιημένου Χρόνου Εκτέλεσης ...
Ανάπτυξη Μοντέλου Διόρθωσης Γραμματικών Λαθών για την Ελληνική Γλώσσα.pptx
Εντοπισμός και χαρτογράφηση ατελειών οδοστρώματος κατά την οδήγηση μέσω αισθη...
Ταχεία ανάπτυξη λογισμικού για πράκτορες συναλλαγών υψηλής συχνότητας σε αγορ...
Σχεδιασµός και υλοποίηση αρθρωτού συστήµατος υπολογισµού τρισδιάστατης θέσης ...
Ad

Recently uploaded (10)

PPTX
Οι Κανόνες Μας Στο Εργαστήριο Υπολογιστών
PPTX
ΤΣΑΡΤΣΑΡΗ ΕΛΙΣΑΒΕΤ, Ο Βίος και η Πολιτεία του Αλέξη Ζορμπά.pptx
PPTX
Μπαμπάνης Κ., Εκεί που τραγουδ. οι καραβίδες.pptx
PPTX
Τιμαμόπουλος Ευγ., Ο άρχοντας των δαχτυλιδιών 2.pptx
PPTX
Κωνσταντού Γλυκερία, Ο ΜΥΣΤΙΚΟΣ ΚΗΠΟΣ.pptx
PDF
Παιδικές Δασουπολίτικες Πατριδοφωνές 24-25.pdf
PPTX
Φολτόπουλος Αλέξανδρος, Με μόνο Φίλο τον υπολογιστή (της Ράνιας Μπουμπουρή).pptx
PPTX
ΣΤΑΜΟΥ_ΙΩΑΝΝΑ__Το_σπίτι_των_πνευμάτων_της_Ιζαμπέλ_Αλιέντε.pptx
PPTX
Μπαμπάνη_Αρχ._Χωρίς_οικογένεια_(Έκτ._Μαλό).pptx
PDF
Τριανταφύλλου Μπαμπάνης Αλέξανδρος, Λόγια της πλώρης.pdf
Οι Κανόνες Μας Στο Εργαστήριο Υπολογιστών
ΤΣΑΡΤΣΑΡΗ ΕΛΙΣΑΒΕΤ, Ο Βίος και η Πολιτεία του Αλέξη Ζορμπά.pptx
Μπαμπάνης Κ., Εκεί που τραγουδ. οι καραβίδες.pptx
Τιμαμόπουλος Ευγ., Ο άρχοντας των δαχτυλιδιών 2.pptx
Κωνσταντού Γλυκερία, Ο ΜΥΣΤΙΚΟΣ ΚΗΠΟΣ.pptx
Παιδικές Δασουπολίτικες Πατριδοφωνές 24-25.pdf
Φολτόπουλος Αλέξανδρος, Με μόνο Φίλο τον υπολογιστή (της Ράνιας Μπουμπουρή).pptx
ΣΤΑΜΟΥ_ΙΩΑΝΝΑ__Το_σπίτι_των_πνευμάτων_της_Ιζαμπέλ_Αλιέντε.pptx
Μπαμπάνη_Αρχ._Χωρίς_οικογένεια_(Έκτ._Μαλό).pptx
Τριανταφύλλου Μπαμπάνης Αλέξανδρος, Λόγια της πλώρης.pdf

Dimitris Niras

  • 1. ΔΗΜΙΟΥΡΓΙΑ ΕΝOΣ ΔΙΑΔΙΚΤΥΑΚΟΥ ΕΓΓΡΑΦΕΑ (WEB RECORDER) ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ ΕΛΕΓΧΩΝ ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ Διπλωματικός Φοιτητής: Νήρας Δημήτριος ΑΕΜ: 8057 Επιβλέποντες: Επίκουρος Καθηγητής, Ανδρέας Λ. Συμεωνίδης Μεταδιδακτορικός Ερευνητής, Κυριάκος Χατζηδημητρίου ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογισμών Θεσσαλονίκη, Οκτώβριος 2017
  • 2. Κίνητρο • Μεγάλος αριθμός ιστοσελίδων και διαδικτυακών εφαρμογών • Ανάπτυξη test ελέγχου (user acceptance/e2e tests) • Εύρεση των στοιχείων που πρέπει να ελεγχθούν • Ανάθεση τιμών σε αυτά • Έλεγχος της εύρυθμης λειτουργίας τους Αποτέλεσμα: Επίπονη και χρονοβόρα διαδικασία (~25% χρόνου) Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 2 Web Recorder
  • 3. Σκοπός της Διπλωματικής Εργασίας • Αυτοματοποίηση της διαδικασίας δημιουργίας και ελέγχου των test • Δημιουργία Chrome extension για την καταγραφή των κινήσεων (Clicks, Inputs, HTML, CSS, JS, API calls, περιεχόμενο κτλ.) • Δημιουργία διαδικτυακής εφαρμογής (προγραμματισμός και επεξεργασία των test, εμφάνιση αποτελεσμάτων κ.ά.) Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 3 Web Recorder Web Recorder Automated Website Testing and Monitoring
  • 4. Υπάρχοντα Εργαλεία • Ghost Inspector • Sauce Labs • Selenium • Sahi Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 4 Web Recorder
  • 5. Web Recorder • Επέκταση στον Chrome (Chrome Extension) • Διαδικτυακή εφαρμογή ▫ Παρασκήνιο (Back-end) ▫ Προσκήνιο (Front-end) ▫ Βάση Δεδομένων (Database) Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 5 Web Recorder • Καταγραφή Test (Tests Recording) • Έλεγχος Ιστοσελίδων (Website Testing) • Έλεγχος Διεπαφών (UI Testing) • Συνεχής Παρακολούθηση (Continuous Monitoring) • Δημιουργία και Διαχείριση test (Build and Manage tests)
  • 6. Web Recorder – Συνολική Δομή Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 6 Web Recorder
  • 7. Δυνατότητες Επέκτασης • Διαχείριση χρηστών (σύνδεση – log in, αποσύνδεση – log out) • Καταγραφή κινήσεων χρήστη (Recording Operations) • Καταγραφή βημάτων ελέγχου ορθής λειτουργίας (Recording Assertions) • Αποθήκευση και αποστολή των test Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 7 Web Recorder
  • 8. Δυνατότητες Διαδικτυακής Εφαρμογής - 1 • Διαχείριση χρηστών (εγγραφή, σύνδεση, αποσύνδεση, αλλαγή στοιχείων, διαγραφή λογαριασμού) • Εμφάνιση των διαθέσιμων σουιτών και των καταγεγραμμένων test • Εκτέλεση ενός test (1 ή και περισσότερες φορές) και ολόκληρης σουίτας • Επεξεργασία των βημάτων (steps) ενός test (λειτουργία, προσδιοριστικό, περιγραφή, προσθήκη, διαγραφή, αναδιάταξη) • Αναζήτηση βημάτων κατά την επεξεργασία τους • Προσθήκη ενός test προς εκτέλεση πριν ή μετά την εκτέλεση ενός συγκεκριμένου test Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 8 Web Recorder
  • 9. Δυνατότητες Διαδικτυακής Εφαρμογής - 2 • Προβολή ιστορικού εκτελέσεων σε επίπεδο σουίτας και σε επίπεδο test • Αυτόματη εκτέλεση σουίτας σε καθημερινή βάση • Επεξεργασία στοιχείων σουίτας (όνομα, συχνότητα αυτόματης εκτέλεσης, διαγραφή) • Επεξεργασία στοιχείων test (όνομα, σουίτα, αριθμός εκτελέσεων, διαγραφή) • Εμφάνιση στατιστικών εκτελέσεων Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 9 Web Recorder
  • 10. Τεχνολογίες Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 12 Web Recorder
  • 11. Live DEMO Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 13 Web Recorder
  • 12. Αποτελέσματα & Συμπεράσματα • Εφαρμογή στις ενεργές ιστοσελίδες ‘‘https://cassandra.iti.gr’’, ‘‘https://issel.ee.auth.gr’’, ‘‘https://e-shop.gr’’, ‘‘http://ee.auth.gr’’ κ.ά. • Δημιουργία 25 test διαφορετικού μεγέθους (5 έως και 35 βήματα) και λειτουργικότητας • Παρακολούθηση για 2 εβδομάδες Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 15 Web Recorder
  • 13. Μελλοντική Εργασία • Λήψη (Download) ενός test • Προσθήκη περισσότερων επιλογών προγραμματισμού των test • Προσθήκη βίντεο εκτέλεσης ενός test • Προσθήκη περιγραφής κατά τη δημιουργία καινούριας σουίτας • Διαφοροποίηση προγραμματισμένης εκτέλεσης (schedule) test και σουιτών Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 17 Web Recorder
  • 14. Προβολή και αποθετήρια • Προβολή της εφαρμογής στην ηλεκτρονική διεύθυνση ‘‘http://snf-766614.vm.okeanos.grnet.gr’’ • Αποθετήριο (repository) επέκτασης Chrome στο GitHub στη διεύθυνση ‘‘https://github.com/AuthEceSoftEng/web-recorder-chrome-plugin’’ • Αποθετήριο (repository) διαδικτυακής εφαρμογής (προσκήνιο - frontend και παρασκήνιο - backend) στη διεύθυνση ‘‘https://github.com/AuthEceSoftEng/web-recorder-server’’ Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 18 Web Recorder
  • 15. Ευχαριστίες Ευχαριστώ τους επιβλέποντες της Διπλωματικής μου Εργασίας κ. Ανδρέα Συμεωνίδη και Κυριάκο Χατζηδημητρίου … και φυσικά εσάς για την προσοχή σας! Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 19 Web Recorder
  • 16. Ερωτήσεις Οκτώβριος 2017 ΔΗΜΙΟΥΡΓΙΑ ΕΝΟΣ WEB RECORDER ΓΙΑ ΤΗΝ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΤΩΝ TEST ΣΕ ΔΙΑΔΙΚΤΥΑΚΕΣ ΕΦΑΡΜΟΓΕΣ 20 Web Recorder