Challenges to support automated random testing for dynamically typed languages

Automated random testing is a proven way to identify bugs and precondition violations, and this even in well tested libraries. In the context of statically typed languages, current automated random testing tools heavily take advantage of static method declaration (argument types, thrown exceptions) to constrain input domains while testing and to identify errors. For such reason, automated random testing has not been investigated in the context of dynamically typed languages. In this paper we present the key challenges that have to be addressed to support automated testing in dynamic languages.

[1]  Ralph E. Johnson,et al.  Wrappers to the Rescue , 1998, ECOOP.

[2]  Stéphane Ducasse,et al.  Evaluating Message Passing Control Techniques in Smalltalk , 1999 .

[3]  Sixth IEEE International Conference On Engineering Of Complex Computer Systems , 2000, Proceedings Sixth IEEE International Conference on Engineering of Complex Computer Systems. ICECCS 2000.

[4]  Olin Shivers,et al.  Demand-Driven Type Inference with Subgoal Pruning: Trading Precision for Scalability , 2004, ECOOP.

[5]  Bertrand Meyer,et al.  Finding Faults: Manual Testing vs. Random+ Testing vs. User Reports , 2008, 2008 19th International Symposium on Software Reliability Engineering (ISSRE).

[6]  Bertrand Meyer,et al.  On the Predictability of Random Tests for Object-Oriented Software , 2008, 2008 1st International Conference on Software Testing, Verification, and Validation.

[7]  Roel Wuyts,et al.  Fast type reconstruction for dynamically typed programming languages , 2009, DLS '09.

[8]  Oscar Nierstrasz,et al.  Pharo by Example , 2010 .

[9]  Manuel Oriol,et al.  Testing .NET Code with YETI , 2010, 2010 15th IEEE International Conference on Engineering of Complex Computer Systems.

[10]  Jing Li,et al.  The Qualitas Corpus: A Curated Collection of Java Code for Empirical Studies , 2010, 2010 Asia Pacific Software Engineering Conference.

[11]  Bertrand Meyer,et al.  On the number and nature of faults found by random testing , 2011, Softw. Test. Verification Reliab..