Changes between Version 9 and Version 10 of RegressionTest


Ignore:
Timestamp:
08/26/08 18:15:06 (16 years ago)
Author:
skbhate
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • RegressionTest

    v9 v10  
    77Regression test package provides a '''''test framework for Community sediment transport model'''''. User can automate model runs as well as various tests on[[BR]]
    88model output. The package is written in '''''Perl''''' and '''''XML'''''. XML serves as a tool to automate the ROMS run as well as NCO tools tests on output.[[BR]]
    9 It has been tested to run on Linux (2.6.15) and Windows under 'Cygwin'. Supported version of '''''ROMS: 3.2.'''''.[[BR]]
    10 (Successfully tested with Revision: 1553 of URL: https://www.myroms.org/svn/cstm/trunk).
     9It has been tested to run on Linux, Unix and Cygwin. Supported version of '''''ROMS: 3.2.'''''.[[BR]]
     10(Successfully tested with Revision: 1647 of URL: https://www.myroms.org/svn/cstm/trunk).
    1111
     12== Getting the Package ==
     13The beta version of the test package can be checked out from the svn repository shown below. This is a development version and[[BR]]
     14being updated and tested frequently.
    1215
     16     [https://www.myroms.org/svn/cstm/branches/skbhate_branch/regression]
    1317== Configure ==
    14 Go to the directory where you have checked out the beta version of the regression package. Type
     18Configuration is ''required'' and the following steps will guide you to properly configure the test environment.
     19
     201. '''Perl''' is the base development language for the test interface. Make sure version 5.8(current stable version) has been installed [[BR]]
     21on your system. In order to install the required stable version 5.8, please go to [http://www.cpan.org/src/README.html Perl CPAN page.][[BR]]
    1522{{{
    16 $ ./configure <ROMS root path>
     23$ perl --version
     24
     25This is perl, v5.8.8 built for cygwin-thread-multi-64int
     26Copyright 1987-2006, Larry Wall
     27
     28}}}
     29
     302. Compile and install the required XML libraries.[Required][[BR]]
     31   The XML interface for the test framework requires Libxml2 (XML C parser and toolkit) as well as Perl bindings for libxml2.[[BR]]
     32   The complete step-by-step installation instructions for libxml2 and Perl modules, please go to [wiki:Libxml2-install Libxml2-installation].[[BR]]
     33   [Make sure you install xml libraries before proceeding further].
     34 
     353. Checks for availability of various compilers/utilities, creates workspace etc.
     36 * '''Perl'''[Required]: Version 5.8.8.
     37 * '''PBS utilities'''[Recommended]: Utilities such as qsub, qdel etc. are required to perform job scheduling.
     38 * '''mpirun'''[Recommended]: ROMS-CSTM parallel runs.
     39 * '''NCO tools'''[Optional]: The netCDF Operators, or NCO tools, such as ncdiff, ncks etc.
     40 * '''Workspace'''[Required]: Workspace to store test results. 
     41
     42Go to the directory where you have checked out the beta version of the regression package. In subsequent documentation, we will refer the[[BR]]
     43regression package home directory as '$REGRESSION_HOME. Type
     44{{{
     45$ ./install_it -romspath <ROMS root path>
    1746
    1847ROMS root path: Complete directory path where ROMS source code has been installed.
    1948}}}
    2049
    21 Configuration script checks for availability of various utilities (perl, ncotools, libxml, qsub etc) and updates path and relevant information in various files.[[BR]]
    22 Provide a new/existing workspace name, when prompted to create a workspace for test results.[[BR]]
    23 '''You must run 'Configure before proceeding further.'''
     50It is possible that your system may not have some optional/recommended softwares (as mentioned above), and the[[BR]]
     51script may report that as warnings. It is highly recommended to install the optional softwares in order[[BR]]
     52to take advantage of all the functionalities of regression test package.
    2453
    25 == How to Run? ==
    26 Go to the directory where you have checked out the beta version of the regression package. Type
     54== Test Installation ==
     55Go to $REGRESSION_HOME. Type
    2756{{{
    2857$ ./bin/runRegression
    2958}}}
    30 If you see the output as shown below means there is future ahead.
     59If everything has been installed correctly, you should see the output as shown below. If you don't[[BR]]
     60then consult the [wiki:RegressionFAQ FAQ] page to correct the problem.
    3161{{{
    3262------------------- Regression Test Environment for ROMS ----------------------                                                       
     
    5383
    5484XML provides an easy way to  configure model runs and tests. User can configure various ROMS applications (e.g. UPWELLING, CBLAST etc) using XML.[[BR]]
    55 Check XML document ''''regressionCSTM.xml'''' in '/data/metadata' on how to configure model-run. Examples are also provided in '/data/metadata/example' to try.[[BR]]
    56 Examples 'example_simple.xml' which runs application 'UPWELLING' can be tried as it is without any further editing. Other examples may need some editing for
    57 directory path, etc.[[BR]]
     85See a [wiki:sampleXML sample XML configuration] file. For further documentation, Check XML document in '$REGRESSION_HOME/data/metadata/regressionCSTM.xml'[[BR]] on how to configure model-run. Examples are also provided in '$REGRESSION_HOME/data/metadata/example' to try. The XML schema can be found in '$REGRESSION_HOME/data/metadata/schema/regressionCSTMSchema.xsd'.
     86For a detailed schematic view of the schema, see [http://www2.msstate.edu/~skb12/nopp/regression/regressionCSTMSchema.html regressionCSTMSchema.xsd]
    5887
    59 Few good XML editors/validators are 'oXygen' and 'Architag's Xray'.
    60  
    61 [Detailed configuration help coming soon]
    62  
     88== Try a Simple Test Example ==
     89 1. Open file '$REGRESSION_HOME/data/metadata/example/example_simple.xml' in any XML editor (oXygen or Xray). It defines a compilation and model[[BR]]
     90    run for application 'UPWELLING'.
     91 2. Locate the tag '<environment>'. Edit the path information for various environmental variables and executables with reference to each compiler.
     92 3. Locate the tag '<type>' nested within a '<compiler>' tag. There will be two '<type>' tags, one is set to 'ifort' and other is set to 'pgi'. [[BR]]This will compile and run test case 'UPWELLING' for 'ifort' and 'pgi' respectively.
     93 4. Locate the tag '<modelRun>'. This ensures whether to carry out the model run or not. It will run the model (i.e. oceanS) from command line. [[BR]]
     94    If you would like to submit it via queuing system (i.e. pbs), then remove or comment the tag '<noPbs/>'. This will create a pbs script with [[BR]]specified processors and nodes and will submit a job to the pbs queue. The tags '<ppn>','<ncpus>' and '<nodes>' are all set to 1, for serial
     95 application 'oceanS'.
     96 5. Save the file in the same directory. All xml documents has schema definition/document associated with them and needs to be placed in[[BR]] '$REGRESSION_HOME/data/metadata/example' directory for successful validation. Changing the schema reference path will be discussed later.
     97 6. Go to '$REGRESSION_HOME'. We will now validate the conformity of edited XML document with the schema. Type
     98{{{
     99$ ./bin/validate  $REGRESSION_HOME/data/metadata/example/example_simple.xml
     100}}}
     101 If there are no syntax errors and xml document conforms to the schema, then it will result in no errors. In case of any errors, check the error[[BR]]
     102 messages, edit the document, and repeat steps 5-6 till no errors.
     103 7. Now, we will run the regression executable. Type (assuming you are in $REGRESSION_HOME)
     104{{{
     105$ ./bin/runRegression  -xml $REGRESSION_HOME/data/metadata/example/example_simple.xml
     106}}}
     107 Based on the configuration defined in the 'example_simple.xml', the model will compile and run.
     108 8. Once the test is finished, the test results will be placed in respective timestamped directory within the workspace [[BR]]
     109 which was created during the installation. See 'Understanding Test Results' below for more information.
    63110
     111     
    64112== Understanding the Directory Structure ==
    65113It is important to understand the directory structure before you proceed. It provides a quick overview of where, what and how the data and test results are located.
     
    129177 * Make sure you run 'validation tool' on your xml document frequently while editing the xml document. For example:
    130178{{{
    131   ./bin/validate   /data/metadata/example/example_simple.xml
     179  ./bin/validate   $REGRESION_HOME/data/metadata/example/example_simple.xml
    132180}}}
    133181
    134  * You can always send an email to [mailto:skbhate@ngi.msstate.edu skbhate@ngi.msstate.edu]in case of any problems/issues with testing package.
     182 * You can always send an email to [mailto:skbhate@ngi.msstate.edu skbhate@ngi.msstate.edu]  in case of any problems/issues with testing package.
    135183
    136184