CPL - Chalmers Publication Library
| Utbildning | Forskning | Styrkeområden | Om Chalmers | In English In English Ej inloggad.

Model based testing of data constraints: testing the business logic of a Mnesia application with Quviq QuickCheck

Thomas Arts (Institutionen för tillämpad informationsteknologi (Chalmers)) ; Nicolae Paladi
8th ACM SIGPLAN Erlang Workshop, Erlang'09, Co-located with the Annual International Conference on Functional Programming, ICFP'09; Edinburgh; United Kingdom; 5 September 2009 through 5 September 2009 p. 71-82. (2009)
[Konferensbidrag, refereegranskat]

Correct implementation of data constraints, such as referential integrity constraints and business rules is an essential precondition for data consistency. Though most modern commercial DBMSs support data constraints, the latter are often implemented in the business logic of the applications. This is especially true for non relational DBMS like Mnesia, which do not provide constraints enforcement mechanisms. This case study examines a database application which uses Mnesia as data storage in order to determine, express and test data constraints with Quviq QuickCheck, adopting a model-based testing approach. Some of the important stages of the study described in the article are: reverse engineering of the database, analysis of the obtained database structure diagrams and extraction of data constraint, validation of constraints, formulating the test specifications and finally running the generated test suits. As a result of running the test suits randomly generated by QuickCheck, we have detected several violations of the identified and validated business rules. We have found that the applied methodology is suitable for applications using non relational, unnormalized databases. It is important to note the methodology applied within the case study is not bound to a specific application or DBMS, and can be applied to other database applications.



Denna post skapades 2009-12-15. Senast ändrad 2013-10-08.
CPL Pubid: 103742

 

Läs direkt!


Länk till annan sajt (kan kräva inloggning)


Institutioner (Chalmers)

Institutionen för tillämpad informationsteknologi (Chalmers)
Institutionen för data- och informationsteknik, datavetenskap (GU) (GU)

Ämnesområden

Programvaruteknik

Chalmers infrastruktur