Testing software without requirements: using development artifacts to develop test cases

SourceForge, the world’s largest development and download repository of open-source code and applications, hosts more than 114,500 projects with 1.3 million registered users at this writing. These applications are downloaded and used by millions across the globe. However, there is little evidence that any of these applications have been tested against a set of rigorous requirements and indeed, for most of these applications, it is likely that no requirements specification exists. How then, can one test this software? In this work an approach is presented to create a set of behavioral requirements to be used to develop test cases. These behavioral requirements were developed for a small number of projects derived from SourceForge using artifacts such as help files and software trails such as open and closed bug reports. These artifacts highlight implemented product features as well as expected behavior, which form the basis for what we term behavioral requirements. The behavioral requirements were then used to create test cases, which were exercised against the software. The contribution of this work is to demonstrate a viable technique for testing software when traditional requirements are unavailable or incomplete.

[1]  Kevin Crowston,et al.  Exploring Strengths and Limits on Open Source Software Engineering Processes: A Research Agenda , 2002 .

[2]  Robyn R. Lutz,et al.  Resolving requirements discovery in testing and operations , 2003, Proceedings. 11th IEEE International Requirements Engineering Conference, 2003..

[3]  Daniel M. Germán,et al.  Using software trails to reconstruct the evolution of software , 2004, J. Softw. Maintenance Res. Pract..

[4]  Dorothy R. Graham,et al.  Requirements and Testing: Seven Missing-Link Myths , 2002, IEEE Softw..