Kallenberg, Thomas and Schwab, Martin (2011) Test Driven Developement for Eclipse CDT. Bachelor thesis, HSR Hochschule für Technik Rapperswil.
project-documentation.pdf - Supplemental Material
Download (3MB) | Preview
-
PDF
BA-Bericht.pdf - Supplemental Material
Abstract
Introduction: In 2006, Prof. Peter Sommerlad introduced the CUTE unit testing
framework for C + + to promote unit testing in C + +. The objective of this
bachelor thesis is to ease practicing Test-Driven Development (TDD) by code
generation for Eclipse CDT when using CUTE. Referring to an undefined entity
when writing code results in a syntax error. Based on such an error, a
resolution should be provided that generates the missing code defining the
entity. Code generation features three central advantages:
- It speeds up the TDD work flow,
- allows focus on the actual program logic and,
- is useful for C++ programmers using CDT even when not practicing TDD.
Approach: To provide an easy to use interface for generating missing code,
Eclipse's Quick- Fixes were used. They offer context- sensitive tasks for the
active source code position. Quick- Fixes can only exist in symbiosis with a
problem marker generated by a code checker. Our Quick- Fixes were
implemented bottom- up, being able to solve simple syntactic problems first,
such as defining a missing local variable. Then, more special cases were
added and a generic solution was searched.
Result: The developed Quick-Fixes provide a solid base for TDD in C++. The
following functionality has been implemented:
- Create new types and namespaces from their use
- Add member variables and (member) functions, especially operator
functions
- Create local variables (improved version)
- Move functions and types to a new compilation unit
- Append and remove arguments to match specific overloads of functions
- Change visibility of members inside a class according to their use
Item Type: | Thesis (Bachelor) |
---|---|
Subjects: | Area of Application > Development Tools Technologies > Programming Languages > C++ Technologies > Frameworks and Libraries > Eclipse Metatags > IFS (Institute for Software) |
Divisions: | Bachelor of Science FHO in Informatik > Bachelor Thesis |
Depositing User: | OST Deposit User |
Contributors: | Contribution Name Email Thesis advisor Sommerlad, Peter UNSPECIFIED |
Date Deposited: | 24 Jul 2012 07:57 |
Last Modified: | 24 Jul 2012 09:35 |
URI: | https://eprints.ost.ch/id/eprint/153 |