TestCocoon Presentation Qt Summit 2011: Difference between revisions
No edit summary |
m (Categorize) |
||
(6 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
[[Category: | {{delete|reason=Outdated information}} | ||
{{Cleanup | reason=Auto-imported from ExpressionEngine.}} | |||
[[Category:QtCS2011]] | |||
= Project name and goals = | = Project name and goals = | ||
Line 7: | Line 8: | ||
= Description of TestCocoon = | = Description of TestCocoon = | ||
TestCocoon is a complete code coverage tool chain for C/C++ and C# programs available under AppleMac OS X, Linux™ or Microsoft® Windows. It analyzes the performance of a software validation and permits to measure the performance and optimizes the testing process of a C/C++ or C# applications: | TestCocoon is a complete code coverage tool chain for C/C++ and C# programs available under AppleMac OS X, Linux™ or Microsoft® Windows. It analyzes the performance of a software validation and permits to measure the performance and optimizes the testing process of a C/C++ or C# applications: | ||
* Finding untested code sections. | |||
* Reducing the amount of tests by finding redundant tests. | |||
With TestCocoon it is possible to find which portion of the source code is covered only by one execution of a test, and to detect if a new test does not cover more source code line than existing tests. | With TestCocoon it is possible to find which portion of the source code is covered only by one execution of a test, and to detect if a new test does not cover more source code line than existing tests. | ||
* Finding dead code trough displaying the code parts which are never executed. | |||
* Specially useful for manual testing: TestCocoon is able to calculate the optimal execution order of tests which maximize the overall coverage after each run. | |||
* Also, TestCocoon is able to perform its analysis on a difference of two applications. | |||
This permits to find which tests are impacted by a source code modification and permits to measure the test quality of a patch or a hot fix. | This permits to find which tests are impacted by a source code modification and permits to measure the test quality of a patch or a hot fix. | ||
TestCocoon can be uses for every testing steps and methodologies (unit tests, automatic tests, manual | TestCocoon can be uses for every testing steps and methodologies (unit tests, automatic tests, manual | ||
white box tests, black box tests, etc. . . ), and permits to collect and merge the execution reports together. | |||
It is composed of 3 tools: | It is composed of 3 tools: | ||
# CoverageScanner, which analyzes, instruments and generates the C/C++ or C# application. | |||
# CoverageBrowser, which displays and manages the results of the coverage analysis. black box interactive tests. | |||
# An optional Microsoft® Visual Studio® 2005 & 2008 Add-In which permits to generate code coverage configurations from every C/C++ projects created by Microsoft® Visual Studio®. | |||
= Relationship with Qt = | = Relationship with Qt = | ||
Line 25: | Line 35: | ||
# instrument the emission of a signal, but not the engine code generated my the moc compiler. | # instrument the emission of a signal, but not the engine code generated my the moc compiler. | ||
Contact person by Nokia: Bill King. | Contact person by Nokia: Bill King. | ||
Sandbox repository: [https://gitorious.org/~billking/qt-creator/qt-creator-testcocoon-wip Qt-Creator instrumented using TestCocoon on Gitorious] | |||
= Planed deliverables = | = Planed deliverables = | ||
Presentation of TestCocoon: | Presentation of TestCocoon: | ||
* General presentation of code coverage technique. | |||
* Features and design of TestCocoon. | |||
* How to instrument Qt applications. | |||
* Live demonstration of Qt-Creator instrumented with TestCocoon. | |||
Open discussion with Qt-stakeholders: | Open discussion with Qt-stakeholders: | ||
* Integration in build systems (qmake, cmake, . . . ). | |||
* Integration in Qt-Creator. | |||
* Integration in continuous build server (Hudson, Pulse, . . . ). | |||
* New idea, or features. | |||
* … | |||
= Amount of support required = | = Amount of support required = | ||
Line 43: | Line 63: | ||
= Contact person = | = Contact person = | ||
Sébastien Fricker | Sébastien Fricker | ||
sebastien.fricker@gmail.com | |||
http://www.testcocoon.org |
Latest revision as of 17:55, 6 January 2017
This article is nominated for deletion. Reason: Outdated information Please raise your support/opposition to this nomination in the article's discussion page. |
This article may require cleanup to meet the Qt Wiki's quality standards. Reason: Auto-imported from ExpressionEngine. Please improve this article if you can. Remove the {{cleanup}} tag and add this page to Updated pages list after it's clean. |
Project name and goals
Presentation of TestCocoon at the "Qt Contributor’s Summit" in June 2011.
Description of TestCocoon
TestCocoon is a complete code coverage tool chain for C/C++ and C# programs available under AppleMac OS X, Linux™ or Microsoft® Windows. It analyzes the performance of a software validation and permits to measure the performance and optimizes the testing process of a C/C++ or C# applications:
- Finding untested code sections.
- Reducing the amount of tests by finding redundant tests.
With TestCocoon it is possible to find which portion of the source code is covered only by one execution of a test, and to detect if a new test does not cover more source code line than existing tests.
- Finding dead code trough displaying the code parts which are never executed.
- Specially useful for manual testing: TestCocoon is able to calculate the optimal execution order of tests which maximize the overall coverage after each run.
- Also, TestCocoon is able to perform its analysis on a difference of two applications.
This permits to find which tests are impacted by a source code modification and permits to measure the test quality of a patch or a hot fix.
TestCocoon can be uses for every testing steps and methodologies (unit tests, automatic tests, manual white box tests, black box tests, etc. . . ), and permits to collect and merge the execution reports together.
It is composed of 3 tools:
- CoverageScanner, which analyzes, instruments and generates the C/C++ or C# application.
- CoverageBrowser, which displays and manages the results of the coverage analysis. black box interactive tests.
- An optional Microsoft® Visual Studio® 2005 & 2008 Add-In which permits to generate code coverage configurations from every C/C++ projects created by Microsoft® Visual Studio®.
Relationship with Qt
- All tools except CoverageScanner are generated using the Qt framework.
- TestCocoon provides a specific code coverage analysis for Qt applications which permits:
- not instrument the contain of Q_OBJECT, Q_EXPORT_PLUGIN, Q_DECLARE_METATYPE, . . . macros.
- instrument the emission of a signal, but not the engine code generated my the moc compiler.
Contact person by Nokia: Bill King. Sandbox repository: Qt-Creator instrumented using TestCocoon on Gitorious
Planed deliverables
Presentation of TestCocoon:
- General presentation of code coverage technique.
- Features and design of TestCocoon.
- How to instrument Qt applications.
- Live demonstration of Qt-Creator instrumented with TestCocoon.
Open discussion with Qt-stakeholders:
- Integration in build systems (qmake, cmake, . . . ).
- Integration in Qt-Creator.
- Integration in continuous build server (Hudson, Pulse, . . . ).
- New idea, or features.
- …
Amount of support required
820 Euro for hotel and fly ticket.
Timeline
Answer required before the 1st June 2011.
Contact person
Sébastien Fricker sebastien.fricker@gmail.com http://www.testcocoon.org