Difference between revisions of "CddBranch"

(Linux)
(Linux)
Line 32: Line 32:
 
=== Linux ===
 
=== Linux ===
 
* Full Linux Version: http://se.ethz.ch/people/leitner/cdd/Eiffel61_cdd_final_1.tar.bz2
 
* Full Linux Version: http://se.ethz.ch/people/leitner/cdd/Eiffel61_cdd_final_1.tar.bz2
 +
* Installation instructions: docs.eiffel.com/eiffelstudio/installation/studio/060_linux.html
  
 
Download the above file and install it just like you would install a EiffelStudio tar ball. Afterwards proceed to section "Using CDD". Make sure you set/update the environment variables PATH, ISE_EIFFEL, and ISE_PLATFORM according to the installation instructions.
 
Download the above file and install it just like you would install a EiffelStudio tar ball. Afterwards proceed to section "Using CDD". Make sure you set/update the environment variables PATH, ISE_EIFFEL, and ISE_PLATFORM according to the installation instructions.

Revision as of 01:33, 5 March 2008


What is the CDD extension for EiffelStudio?

CDD (short for Contract Driven Development) is a project developed at ETH Zurich. The extension adds full support for unit testing to EiffelStudio. It also introduces the new idea of extracting test cases automatically from failures observed via the debugger. The following lists the main features of CDD:

  • Automated extraction of test cases from failures (For every exception thrown a new test case is created)
  • Visualization of test cases and their outcomes
  • One button creation of manual test cases
  • Automated execution of test cases in the background
  • Limit visible test cases via predefined filters and custom tags
  • Testing occurs in the background and is undisruptive to the developer
  • Easy test case management through tags

If you have questions, feedback, or would like to report a bug please visit the [CDD forum]


Video still.png

Play Video!

(TODO: Update with more recent screenshot and video)

Download CDD Final 1

The following packages contain the full EiffelStudio 6.1 plus the CDD extension. You do not need to have EiffelStudio installed already in order to install below packages. On Windows you do have to have either the Platform SDK or Visual C++ installed. Do not use EiffelStudio with the gcc/mingw or the .Net backend.

Linux

Download the above file and install it just like you would install a EiffelStudio tar ball. Afterwards proceed to section "Using CDD". Make sure you set/update the environment variables PATH, ISE_EIFFEL, and ISE_PLATFORM according to the installation instructions.

Windows

Note: Installation is independent of installations of official EiffelStudio 6.1)

Replace existing ec.exe in <install_dir>\studio\spec\windows\bin with ec.exe found in archive. Delete EIFGENs in subdirectories of <install_dir>\precomp, since precompilations might not be compatible. Also build your projects from scratch by deleting their EIFGENs

Documentation

Old Documentation

Documentation for the release of CDD for EiffelStudio version 5.7 is available from CddOldDocumentation.

Project Internal Stuff

Schedule

  • 04.01.2008: Final experiment definition (questions to ask, how to conduct experiment)
  • 08.01.2008: Finalized list of features to go in release (including logging and log submission)
  • 27.01.2008: Beta 1 (feature complete version online)
  • 04.02.2008: Beta 2 (designated testers test release, # > 3)
  • 11.02.2008: Beta tester feedback in
  • 11.02.2008: Beta 3
  • 18.02.2008: Final 1 release
  • 19.02.2008: Initial Questionnaire
  • 20.02.2008: Final 1 handover to ISG
  • 22.02.2008: Final 1 installed on students machines
  • 29.02.2008: Final 2 release
  • 05.03.2008: Final 2 handover to ISG
  • 07.03.2008: Final 2 installed on students machines
  • 25.03.2008: Midterm Questionnaire
  • 19.05.2008: Final Questionnaire
  • 20.05.2008: Having all data
  • 06.06.2008: Finished analysis

Stefans Master Plan

  • MA Start ca 17.12.2007
  • MA End ca 17.6.2008
  • Testing the tester
    • System level test for CDD (incl. framework)
    • Recreating existing unit test suite with CDD
    • Large scale validation of CDD
      • Info 4 and/or Software Engineering
      • Questions
        • Does testing (manual/extracted) increase developer productivity?
        • How many tests do ppl end up with (manual/extracted)?
        • ...

Various

Things we need from estudio

  • Invariants should be checked during debugging equally to pre- and post conditions (they could also be visualised in the flat view the same way like pre- and post conditions are)
  • The information whether some call is a creation call or a normal routine call (Not sure if this is really necessary, what if we assume every call to some creation procedure is always a creation call?)
  • Support for multiple open targets