Test Driven Developement for Eclipse CDT

Kallenberg, Thomas and Schwab, Martin (2011) Test Driven Developement for Eclipse CDT. Bachelor thesis, HSR Hochschule für Technik Rapperswil.

[img]
Preview
PDF
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
Creators:
CreatorsEmail
Kallenberg, ThomasUNSPECIFIED
Schwab, MartinUNSPECIFIED
Contributors:
ContributionNameEmail
Thesis advisorSommerlad, PeterUNSPECIFIED
Depositing User: HSR Deposit User
Date Deposited: 24 Jul 2012 07:57
Last Modified: 24 Jul 2012 09:35
URI: http://eprints.hsr.ch/id/eprint/153

Actions (login required)

View Item View Item