Test Driven Development: By Example
Test Driven Development: By Example
Sourcerer: a search engine for open source code supporting structure-based search
Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications
Applying test-driven code search to the reuse of auxiliary functionality
Proceedings of the 2009 ACM symposium on Applied Computing
A reflective middleware architecture for simulation integration
Proceedings of the 8th International Workshop on Adaptive and Reflective MIddleware
IDE 2.0: collective intelligence in software development
Proceedings of the FSE/SDP workshop on Future of software engineering research
A test-driven approach to code search and its application to the reuse of auxiliary functionality
Information and Software Technology
How Well Do Search Engines Support Code Retrieval on the Web?
ACM Transactions on Software Engineering and Methodology (TOSEM)
Finding suitable programs: semantic search with incomplete and lightweight specifications
Proceedings of the 34th International Conference on Software Engineering
Sourcerer: An infrastructure for large-scale collection and analysis of open-source code
Science of Computer Programming
Hi-index | 0.00 |
We present CodeGenie, a tool that implements a test-driven approach to search and reuse of code available on largescale code repositories. With CodeGenie, developers designtest cases for a desired feature first, similar to Test-driven Development (TDD). However, instead of implementing the feature from scratch, CodeGenie automatically searches foran existing implementation based on information available in the tests. To check the suitability of the candidate results in the local context, each result is automatically woven into the developer's project and tested using the original tests. The developer can then reuse the most suitable result. Later, reused code can also be unwoven from the project as wished. For the code searching and wrapping facilities, CodeGenie relies on Sourcerer, an Internet-scale source code infrastructure that we have developed.