Documentation/Nightly/Developers/Tutorials/UploadTestData

From Slicer Wiki
Revision as of 14:49, 7 November 2012 by JChris.FillionR (talk | contribs)
Jump to: navigation, search
Home < Documentation < Nightly < Developers < Tutorials < UploadTestData

Introduction

Slicer has adopted MIDAS to store testing and algorithm validation dataset. For this purpose, we have created a dedicated NA-MIC MIDAS community

In the NA-MIC community Slicer/Data folder, you will find:

To organize the test data based on Slicer major release, you will find sub folders like:

  • Nightly
  • 4.2
  • 4.3

Test data are expected to be stored in folders like:

  • Data/Application/Nightly/Testing/Baseline
  • Data/Application/Nightly/Testing/Input
  • Data/Modules/<NameOfYourModule>/Nightly/Testing/Baseline
  • Data/Modules/<NameOfYourModule>/Nightly/Testing/Input
  • Data/Application/X.Y/Testing/Baseline
  • Data/Application/X.Y/Testing/Input
  • Data/Modules/<NameOfYourModule>/X.Y/Testing/Baseline
  • Data/Modules/<NameOfYourModule>/X.Y/Testing/Input

where

  • <NameOfYourModule>: name of the folder in the source repository, it should also match the module pages created on the slicer wiki.
  • Input: Used to store testing input data.
  • Baseline: Used to store the baseline images for regression tests.

Upload test data

  1. Send an email on the developer list asking to be added to the DataManager group on NA-MIC community. That will grant you read/write permissions to the Data folder and sub-folders.
  2. Create a sub folder for your Module.
  3. Create a Nightly sub-folder.
  4. Upload data in folders Nightly/Testing/Baseline and Nightly/Testing/Input

FAQ

What happen when Slicer is released ?

Each time a release of Slicer is done, for both the Application and Modules/<NameOfYourModule> folders, the current Nightly is copied into an X.Y folders where X and Y corresponds to the major and minor release number of Slicer.

Should data for extension be organized differently ?

For now, let's keep all of them at the same level. We will have to coordinate with the development of the release script allowing to version the Data tree. See here

It means if you develop an extension named Salad bundling two modules respectively named Tomato and Mozzarella, the following folders would have to be created:

  • Data/Modules/Tomato/Nightly/Testing/Baseline
  • Data/Modules/Tomato/Nightly/Testing/Input
  • Data/Modules/Mozzarella/Nightly/Testing/Baseline
  • Data/Modules/Mozzarella/Nightly/Testing/Input

Consider also monitoring issue #2722: Think about organization of Data/Modules directory on midas to accomodate extension relationship