Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Project Plan

A work plan has to established that will outline:

  • Work to be done by mid-term evaluation
  • Work to be done by end of GSOC
  • Documentation to be generated

Draft

The following draft outlines a proposal for the project plan. It has to be approved in a meeting with the community:

been decided in an IRC meeting on May 26th, 2010. The work has been divided in 3 parts:

  1. Unit Testing (package org.dspace.content.*)
  2. Integration Testing
  3. Functional Testing

It's been decided they will be done in the same order. The aim is not to do tests for all the existing classes, but to create an infraestructure the community can benefit from and can expand with its own tests.

The first task, ongoing until 13th/20th of June will be to add Unit Tests (#1) to package org.dspace.content.* . This part doesn't require any database integration and will use JUnit and JMock/Mockito as tools.

Relevant Dates

The following list outlines relevant dates for the project:

  • 26th May: 1st meeting in IRC, decide the tasks for the following weeks
  • 26th May - 9th June: Unit testing for package org.dspace.content.* . Weekly status reports sent to Stuart Lewis
  • 9th June: 2nd meeting in IRC, to assert status of unit testing integrations
  • 24th May - 30th May: decide project plan.
  • 31th May - 20th June: test scaffolding for Maven that runs JUnit, JMock, HyperSQL, and Jetty for the tests. Create the 3 base classes: an Abstract Functional Test, an Abstract Integration Test, and an Abstract Unit Tests. Optionally there might be integration with Hudson/SONAR.
  • 14th June - 11th July: Add Contiperf to the set for performance testing. Start generating unit tests for DSpace API.
  • 12th July (Mid Term Evaluation): By this day a number of selected packages from DSpace API should have tests
  • 12th July - 8th August: Integrate Selenium into the scaffolding. Prepare tests for selected XMLUI functionalities.
  • 9th August (End of Term)9th August: By this day we should have functional tests on the UI on selected functionalities
  • 9th August - 16th August (Final Evaluation): code fixes and documentation related to the project

...

  • The Continuous Integration server will be Hudson.
    • Wiki Markup
      SONAR \[[http://www.sonarsource.org/|http://www.sonarsource.org/] \] will be the code quality management 		tool
  • All tests will be run automatically by Maven
    • Embedded webserver will be Jetty
    • Wiki Markup
      Embedded database will be HyperSQL \[[http://hsqldb.org/|http://hsqldb.org/] \]
  • Functional Tests will use Selenium
  • Unit Tests and Integration Tests will use Junit
    • JMock/Mockito will be used as mocking framework
    • HTMLUnit may be used if required
  • Performance Tests will use ContiPerf

...