Testing Erlang-OTP with QuickCheck

dc.contributor.authorDin, Crystal Chang
dc.contributor.departmentChalmers tekniska högskola / Institutionen för data- och informationsteknik (Chalmers)sv
dc.contributor.departmentChalmers University of Technology / Department of Computer Science and Engineering (Chalmers)en
dc.description.abstractErlang/OTP is a concurrent functional language developed and maintained by Ericsson AB, and was released as open source in 1998. Though Erlang/OTP has been tested for many years, it is still possible to find more bugs since some test cases have not been written yet. The commercial version of QuickCheck for Erlang was recently developed by Quviq AB. It is a tool replacing conventional test cases by writing specification of properties under test that the tested function should fulfill. Moreover, QuickCheck also provides libraries for testing operations containing side-effects, which are specified via an abstract state machine. Based on that, QuickCheck is a testing tool mainly applied in this thesis that focuses on Erlang/OTP data-structures. In the first part, it starts with analyzing properties of pure functions in various data-structure modules. After that, we develop extensive test suites. As long as the functions having the same property, they can be tested through the same property. In the second part, we test imperative functions of the rest of data-structure modules by using QuickCheck state machine. The bugs which were found in Erlang/OTP as well as the method which was used to identify the bugs will also be described in the later part.
dc.subjectSoftware Engineering
dc.titleTesting Erlang-OTP with QuickCheck
dc.type.degreeExamensarbete för masterexamensv
dc.type.degreeMaster Thesisen
Ladda ner