Αυτόματος τυχαίος έλεγχος συστημάτων με εσωτερική κατάσταση βάσει μοντέλου

δείτε την πρωτότυπη σελίδα τεκμηρίου
στον ιστότοπο του αποθετηρίου του φορέα για περισσότερες πληροφορίες και για να δείτε όλα τα ψηφιακά αρχεία του τεκμηρίου*



Αυτόματος τυχαίος έλεγχος συστημάτων με εσωτερική κατάσταση βάσει μοντέλου (EL)
Automated random model-based testing of stateful systems (EN)

Αρβανίτη, Ειρήνη Π. (EL)
Arvaniti, Eirini P. (EN)

Σαγώνας, Κωστής (EL)
Κοντογιάννης, Κώστας (EL)
Παπασπύρου, Νίκος (EL)

bachelorThesis

2011-07-20
2011-07-20T07:51:08Z
2011-07-18
2011-07-19


To PropEr είναι ένα εργαλείο ανοιχτού λογισμικού για τον αυτόματο τυχαίο έλεγχο ιδιοτήτων συναρτήσεων, γραμμένων στη γλώσσα Erlang, από τις προδιαγραφές τους. Αρχικά ήταν επικεντρωμένο στον έλεγχο αγνών συναρτήσεων. Ωστόσο, οι εφαρμογές που υλοποιούνται σε Erlang συνήθως αποτελούνται από κώδικα με εσωτερική κατάσταση. Στην παρούσα διπλωματική εργασία, έχουμε επεκτείνει το PropEr με δύο βιβλιοθήκες που υποστηρίζουν τον τυχαίο ελέγχο συστημάτων με εσωτερική κατάσταση βάσει μοντέλου. Ο χρήστης καλείται να προσδιορίσει ένα μοντέλο της συμπεριφοράς του συστήματος υπό έλεγχο. Δεδομένου αυτού του μοντέλου, ελέγχουμε ένα σύστημα παράγοντας και εκτελώντας ακολουθίες κλήσεων προς αυτό, ενώ καταγράφουμε τις αποκρίσεις του ώστε να επιβεβαιώσουμε ότι το σύστημα παρουσιάζει την αναμενόμενη συμπεριφορά. Η πρώτη βιβλιοθήκη, που ονομάζεται proper\_statem, έχει σχεδιαστεί για τον έλεγχο γενικευ- μένων εξυπηρετητών και άλλων συστημάτων των οποίων η διεπαφή παρουσιάζει εσωτερική κατάσταση. Οι παρενέργειες των συστημάτων προσδιορίζονται μέσω μίας αφηρημένης μηχανής κατάστασης. Η ίδια μηχανή κατάστασης μπορεί επίσης να χρησιμοποιηθεί για την παραγωγή ακολουθιών κλήσεων, οι οποίες θα εκτελεστούν παράλληλα για τον εντοπισμό συνθηκών ανταγωνισμού. Η δεύτερη βιβλιοθήκη, που ονομάζεται proper\_fsm, προσφέρεται για τον έλεγχο συστημάτων που παρουσιάζουν συμπεριφορά μηχανής πεπερασμένης κατάστασης, αφού είναι σχεδιασμένη ώστε να φέρνει την περιγραφή του μοντέλου του συστήματος πολύ κοντά σε ένα διάγραμμα κατάστασης. Ο προσδιορισμός ενός μοντέλου για το σύστημα υπό έλεγχο δεν είναι σε καμία περίπτωση τετριμμένη διαδικασία. Γι'αυτό το λόγο, παρουσιάζουμε λεπτομερή επεξηγηματικά παραδείγματα σχετικά με την αποτελεσματική χρήση των νέων βιβλιοθηκών για τον έλεγχο συστημάτων με εσωτερική κατάσταση. (EL)
Ειρήνη Π. Αρβανίτη (EL)
72 σ. (EL)
PropEr is an open-source tool for automated random testing of Erlang function properties from specifications. Its original focus was on testing pure functions. Nevertheless, projects implemented in Erlang typically consist of stateful code. In this thesis, we have extended PropEr with two library modules that support random model-based testing of stateful reactive systems. The model behaviour of the system under test should be defined in a callback module. Given this model, we test a stateful system by generating and performing sequences of calls to that system, while monitoring its actual responses to ensure the system behaves as expected. The first module, proper\_statem, is designed to test generic servers and other systems with stateful interfaces, whose side-effects are specified via an abstract state machine. The same state machine specification can also be used for generating sequences of calls that will be executed in parallel to test for race conditions. The second module, proper\_fsm, offers a convenient way to test systems exhibiting a finite state machine behaviour, as it is designed to bring the callback module specification very close to a state diagram. Defining a model of the system under test is by no means a trivial task. To compensate for that, we present detailed tutorials on effectively using the new library modules to test stateful systems. (EN)


Αυτόματος έλεγχος (EL)
Έλεγχος λογισμικού βάσει ιδιοτήτων (EL)
Παράλληλος έλεγχος (EL)
Έλεγχος λογισμικού βάσει μοντέλου (EL)
Τυχαίος έλεγχος (EL)
Random testing (EN)
Parallel testing (EN)
Model-based testing (EN)
Property-based testing (EN)
Automated testing (EN)

Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών. Εργαστήριο Τεχνολογίας Λογισμικού (EL)

ETDFree-policy.xml (EN)




*Η εύρυθμη και αδιάλειπτη λειτουργία των διαδικτυακών διευθύνσεων των συλλογών (ψηφιακό αρχείο, καρτέλα τεκμηρίου στο αποθετήριο) είναι αποκλειστική ευθύνη των αντίστοιχων Φορέων περιεχομένου.