Uploaded image for project: 'Isis'
  1. Isis
  2. ISIS-767

Enable integration and BDD tests to do a lightweight teardown (eg zap contents of tables) rather than tear down entire system.

    XMLWordPrintableJSON

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Not A Problem
    • Affects Version/s: core-1.4.0
    • Fix Version/s: tidy-up
    • Component/s: Core
    • Labels:
      None

      Description

      Background to this is email from Oscar to dev list:

      We have implemented some BDD tests as Scenario Outlines [1].

      But just for one execution, is spending aprox. 15 min in completing a Scenario Outline with aprox. 20 scenarios.

      The problem is that they become really slow, as the whole Isis system is recreated for each example.

      Following best practices, Scenarios should be independent, but I think there should be ways to guarantee it without sacrificing speed.

      • Isis System does not need to be recreated (introspected) for each Scenario, as the source code has not changed.
      • Database can be recreated, or perhaps there's an "abstraction" on DataNucleus or JDBC to empty a DataStore without re-creating the table structure from the JDO annotations.

      Perhaps are other alternatives to improve their speed that does not require refactoring the Isis BDD integrations tests implementation?

      Regards,

      Oscar

      [1] http://jnye.co/Posts/11/repeating-bdd-tests-using-scenario-outlines-and-an-examples-table-with-specflow

        Attachments

          Activity

            People

            • Assignee:
              danhaywood Daniel Keir Haywood
              Reporter:
              danhaywood Daniel Keir Haywood
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: