org.jvnet.hudson.test.recipes
Annotation Type LocalData


@Documented
@Recipe(value=LocalData.RunnerImpl.class)
@JenkinsRecipe(value=LocalData.RuleRunnerImpl.class)
@Target(value=METHOD)
@Retention(value=RUNTIME)
public @interface LocalData

Runs a test case with a data set local to test method or the test class.

This recipe allows your test case to start with the preset JENKINS_HOME data loaded either from your test method or from the test class.

For example, if the test method if org.acme.FooTest.testBar(), then you can have your test data in one of the following places in resources folder (typically src/test/resources):

  1. Under org/acme/FooTest/testBar directory (that is, you'll have org/acme/FooTest/testBar/config.xml), in the same layout as in the real JENKINS_HOME directory.
  2. In org/acme/FooTest/testBar.zip as a zip file.
  3. Under org/acme/FooTest directory (that is, you'll have org/acme/FooTest/config.xml), in the same layout as in the real JENKINS_HOME directory.
  4. In org/acme/FooTest.zip as a zip file.

Search is performed in this specific order. The fall back mechanism allows you to write one test class that interacts with different aspects of the same data set, by associating the dataset with a test class, or have a data set local to a specific test method.

The choice of zip and directory depends on the nature of the test data, as well as the size of it.

Author:
Kohsuke Kawaguchi



Copyright © 2004-2013. All Rights Reserved.