Difference between revisions of "CddBranch"

(Common Problems)
(Common Problems)
Line 78: Line 78:
 
Problem: ''''How do I start test execution?''''
 
Problem: ''''How do I start test execution?''''
 
* With the CDD extension tests are always executed right after compiling. You can choose to enable or disable background testing via the ''''Enable/Disable automatic background execution of tests''''.
 
* With the CDD extension tests are always executed right after compiling. You can choose to enable or disable background testing via the ''''Enable/Disable automatic background execution of tests''''.
 +
 +
[[Image:enable_testing.png|center]]
  
 
== Old Documentation ==  
 
== Old Documentation ==  

Revision as of 10:52, 27 January 2008


Summary

The Contract Driven Development (CDD) Extension to EiffelStudio. CDD provides full unit test integration into EiffelStudio. Here are some of its features:

  • 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 completely undisruptive for the developer


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


Video still.png

Play Video!

Documentation

Instaltation

Using CDD

Common Problems

Problem: 'I cannot see the testing window.'

  • Make it visible via 'View -> Tools -> CDD Output'

Problem: 'Is there some kind of CDD output window?'

  • Yes there is, it is at the bottom part of your screen in the same pane as the normal output window and the feature context window. If you don't see this window, you can make it visible via '"View -> Tools -> CDD Output"'

Problem: 'I am trying to use CDD on an existing project but it doesn't work'

  • If you have a look at the 'CDD output' window you will probably find the error message:
Error code: VSCN
Configuration error: cluster has two classes with the same name.
What to do: if both classes are needed, change name of one of them.

Cluster name: erl_g_tests
First class: CDD_INTERPRETER
First file: "/home/aleitner/src/erl_g/src/erl_g/cdd_tests/erl_g/cdd_interpreter.e"
Second class: CDD_INTERPRETER
Second file: "/home/aleitner/src/erl_g/library/cdd_tests/erl_g_library/cdd_interpreter.e"

To fix this go to the project settings, to your active target, Groups -> Clusters and then select your root cluster. Open the Advanced tree-item and click on the value part of the Exclude Rules. Now add rule '/cdd_tests$' and click 'OK'.

Alternatively you can open your ecf file with a text editor. You will find a stance that looks like this:

<file_rule>
   <exclude>/.svn$</exclude>
   <exclude>/EIFGENs$</exclude>
</file_rule>

Edit edit to make it looks like the following:

<file_rule>
   <exclude>/.svn$</exclude>
   <exclude>/EIFGENs$</exclude>
   <exclude>/cdd_tests$</exclude>
</file_rule>

Problem: 'How do I start test execution?'

  • With the CDD extension tests are always executed right after compiling. You can choose to enable or disable background testing via the 'Enable/Disable automatic background execution of tests'.
Enable testing.png

Old Documentation

Documentation for the CDD for EiffelStudio 5.7 is available from CddOldDocumentation

Testing

Development (Todo's):

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
  • 18.02.2008: Final CDD release for experiment online
  • 19.02.2008: Initial Questionnaire
  • 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)?
        • ...


Specifications

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