Warning: Can't synchronize with repository "(default)" (/home/git/ome.git does not appear to be a Git repository.). Look in the Trac log for more information.
Notice: In order to edit this ticket you need to be either: a Product Owner, The owner or the reporter of the ticket, or, in case of a Task not yet assigned, a team_member"
This story outlines the scope of work required during the OMERO.server test maintenance phase (summer 2013). The work is to be targeted at the dev_4_4 branch.
Identified problems
integration tests are not always inline with how developers perceive the way code under test (server services) would work,
integration tests are split and, to some extent, duplicated between Java and Python,
the documentation on how integration tests are laid out and how exactly to run them is lacking,
unit tests rely on two different pieces of software: JUnit and TestNG, hence use different semantics,
test coverage isn’t measured,
PRs are often opened without corresponding changes to test classes,
OmeroJava is a test-only package and its name doesn’t convey its contents,
there is no clear naming pattern among test packages (e.g. unit vs. utest),
some of the tests are lacking comments where needed,
the testing frameworks (jMock, TestNG) are outdated,
other components (e.g. OmeroM) can’t reuse logic used for test scaffolding.
Goals
to make the test more useful for developers; simpler and easier to write,
to ease the way tests are run and updated,
to allow other components of the OMERO codebase to reuse helper classes,
to make the integration tests de facto examples of how the unit under test should work,