HEAL DSpace

Περιορισμός του χώρου αναζήτησης του concolic testing μέσω στατικής ανάλυσης

DSpace/Manakin Repository

Show simple item record

dc.contributor.author Διονύσιος, Σπηλιόπουλος el
dc.contributor.author Dionisios, Spiliopoulos en
dc.date.accessioned 2022-09-15T08:14:46Z
dc.date.available 2022-09-15T08:14:46Z
dc.identifier.uri https://dspace.lib.ntua.gr/xmlui/handle/123456789/55668
dc.identifier.uri http://dx.doi.org/10.26240/heal.ntua.23366
dc.rights Αναφορά Δημιουργού - Παρόμοια Διανομή 3.0 Ελλάδα *
dc.rights.uri http://creativecommons.org/licenses/by-sa/3.0/gr/ *
dc.subject Concolic Testing en
dc.subject CutEr en
dc.subject Erlang en
dc.subject 'Eλεγχος προγραμμάτων el
dc.subject White-Box Testing en
dc.subject Μείωση χώρου αναζήτησης el
dc.subject Search Space Reduction en
dc.title Περιορισμός του χώρου αναζήτησης του concolic testing μέσω στατικής ανάλυσης el
dc.title Reducing the search space of concolic testing via static analysis en
heal.type bachelorThesis
heal.classification Πληροφορική el
heal.classification Computer science en
heal.language el
heal.language en
heal.access free
heal.recordProvider ntua el
heal.publicationDate 2022-03-16
heal.abstract Ο έλεγχος προγραμμάτων είναι κρίσιμος για την ανάπτυξη αξιόπιστων εφαρμογών. Το concolic testing είναι μία τεχνική White-Box testing, η οποία επιδιώκει την αυτόματη δημιουργία πολλαπλών εισόδων για ένα πρόγραμμα, προκειμένου να εντοπίσει σφάλματα κατά την εκτέλεση. Αυτή η τεχνική αντιμετωπίζει το πρόβλημα ενός πολύ μεγάλου χώρου αναζήτησης από μονοπάτια εκτέλεσης, του οποίου η εξερεύνηση είναι χρονικά απαιτητική. Σε αυτή την διπλωματική εργασία αναπτύχθηκε μια μέθοδος για τη μείωση του χώρου αναζήτησης κάνοντας χρήση της στατικής πληροφορίας ενός προγράμματος για την αφαίρεση των κλαδιών που δεν παράγουν σφάλματα. Ως στατική πληροφορία χρησιμοποιούμε το αφηρημένο συντακτικό δέντρο του προγράμματος, καθώς και τους τύπους που παρέχονται σε αυτό. Η μέθοδος αυτή αναπτύχθηκε στο CutEr, ένα εργαλείο για concolic testing της γλώσσας προγραμματισμού Erlang. Ακόμα, η μέθοδος ελέγχθηκε με ήδη υπάρχοντα προγράμματα, καθώς και νέα ειδικά σχεδιασμένα για τον σκοπό αυτόν, προκειμένου να αναδειχθεί η χρησιμότητά της. Τέλος, παρατίθενται τα αποτελέσματα του ελέγχου αυτού, όπου φαίνεται ότι οι χρονικές απαιτήσεις του concolic testing μπορούν να μειωθούν ραγδαία με τη χρήση αυτής της μεθόδου αφαίρεσης κλάδων. el
heal.abstract Software testing is crucial for developing any reliable application. Concolic testing is a White-Box testing technique, which tries to create various inputs for a program automatically, in order to locate runtime errors. This technique though suffers from a vast search space of execution paths that is inefficient and time-consuming to fully traverse. In our work, we propose a method to reduce this search space by exploiting the static information in a program and pruning branches which will certainly not produce errors. As static information, we use the program's abstract syntax tree, as well as the type annotations provided. This method was implemented in CutEr, a concolic testing tool for the Erlang programming language. We have also tested our method with custom programs and real world code. Finally, we report the results of our testing and show that the time performance of concolic testing can be immensely increased by using our method for safe branch pruning. en
heal.advisorName Σαγώνας, Κωστής el
heal.committeeMemberName Σαγώνας, Κωστής el
heal.committeeMemberName Παγουρτζής, Άρης el
heal.committeeMemberName Φωτάκης, Δημήτριος el
heal.academicPublisher Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών. Εργαστήριο Τεχνολογίας Λογισμικού el
heal.academicPublisherID ntua
heal.numberOfPages 77 σ. el
heal.fullTextAvailability false
heal.fullTextAvailability false


Files in this item

The following license files are associated with this item:

This item appears in the following Collection(s)

Show simple item record

Αναφορά Δημιουργού - Παρόμοια Διανομή 3.0 Ελλάδα Except where otherwise noted, this item's license is described as Αναφορά Δημιουργού - Παρόμοια Διανομή 3.0 Ελλάδα