usr/src/tools/tests/README
author Mary Ding <mary.ding@oracle.com>
Tue, 24 Jul 2012 22:25:25 -0700
changeset 1756 1146a5d31e76
parent 1640 851d069ece17
permissions -rw-r--r--
7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
842
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
     1
#
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
     2
# CDDL HEADER START
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
     3
#
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
     4
# The contents of this file are subject to the terms of the
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
     5
# Common Development and Distribution License (the "License").
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
     6
# You may not use this file except in compliance with the License.
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
     7
#
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
     8
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
     9
# or http://www.opensolaris.org/os/licensing.
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    10
# See the License for the specific language governing permissions
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    11
# and limitations under the License.
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    12
#
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    13
# When distributing Covered Code, include this CDDL HEADER in each
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    14
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    15
# If applicable, add the following below this CDDL HEADER, with the
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    16
# fields enclosed by brackets "[]" replaced with your own identifying
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    17
# information: Portions Copyright [yyyy] [name of copyright owner]
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    18
#
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    19
# CDDL HEADER END
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    20
#
1640
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    21
# Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
842
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    22
#
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    23
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    24
This directory contains configuration files for Nose, the PyUnit test runner
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    25
for the slim_source gate. In order to run the tests you should:
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    26
1756
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    27
1) Install the following additional packages:
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    28
		
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    29
        pkg install library/python-2/setuptools-26
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    30
	pkg install runtime/python-26/tests
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    31
	pkg install library/python-2/coverage
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    32
	pkg install library/python-2/nose
1640
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    33
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    34
	Note:	As of March 21, 2012, library/python-2/nose is available in 
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    35
		solaris repo in s11u1_b13 and onward.
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    36
1756
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    37
	  Check /usr/lib/python2.6/site-packages/easy-install.pth and
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    38
	  see whether other version of nose had been installed as follows:
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    39
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    40
          Need to comment out the following line that start with ./nose-x.xx.x:
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    41
	  
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    42
          e.g:
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    43
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    44
	  #./nose-0.11.3-py2.6.egg
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    45
  
1640
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    46
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    47
2) Install pylint 0.23.0 and the nosexunit module:
1756
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    48
  
1640
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    49
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    50
	* Make sure that http_proxy is setup in order to use easy_install-2.6
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    51
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    52
           i.e:  http_proxy=http://www-proxy.us.oracle.com/
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    53
842
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    54
	* Running the command:
1640
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    55
		easy_install-2.6 -f http://download.logilab.org/pub/pylint pylint-0.23.0
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    56
		easy_install-2.6 nosexunit
842
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    57
		(The warning messages during installation may be ignored)
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    58
1384
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
    59
	  Then edit /usr/lib/python2.6/site-packages/easy-install.pth
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
    60
          as follows:
1314
34fbdbe18d96 7055610 Need to remove workaround in ai.xml after fix for 7050450 is integrated.
Mary Ding <mary.ding@oracle.com>
parents: 1272
diff changeset
    61
34fbdbe18d96 7055610 Need to remove workaround in ai.xml after fix for 7050450 is integrated.
Mary Ding <mary.ding@oracle.com>
parents: 1272
diff changeset
    62
          Need to comment out the following line:
34fbdbe18d96 7055610 Need to remove workaround in ai.xml after fix for 7050450 is integrated.
Mary Ding <mary.ding@oracle.com>
parents: 1272
diff changeset
    63
	  
34fbdbe18d96 7055610 Need to remove workaround in ai.xml after fix for 7050450 is integrated.
Mary Ding <mary.ding@oracle.com>
parents: 1272
diff changeset
    64
          /usr/lib/python2.6/vendor-packages
34fbdbe18d96 7055610 Need to remove workaround in ai.xml after fix for 7050450 is integrated.
Mary Ding <mary.ding@oracle.com>
parents: 1272
diff changeset
    65
34fbdbe18d96 7055610 Need to remove workaround in ai.xml after fix for 7050450 is integrated.
Mary Ding <mary.ding@oracle.com>
parents: 1272
diff changeset
    66
          i.e:
34fbdbe18d96 7055610 Need to remove workaround in ai.xml after fix for 7050450 is integrated.
Mary Ding <mary.ding@oracle.com>
parents: 1272
diff changeset
    67
34fbdbe18d96 7055610 Need to remove workaround in ai.xml after fix for 7050450 is integrated.
Mary Ding <mary.ding@oracle.com>
parents: 1272
diff changeset
    68
	  #/usr/lib/python2.6/vendor-packages
34fbdbe18d96 7055610 Need to remove workaround in ai.xml after fix for 7050450 is integrated.
Mary Ding <mary.ding@oracle.com>
parents: 1272
diff changeset
    69
  
1756
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    70
	Note:	For S11, the pylint version is 0.18 and it had bugs.  Thus we
1146a5d31e76 7185852 Update tools/tests/README to mention removal of old easy-installed nose so updated nose runs.
Mary Ding <mary.ding@oracle.com>
parents: 1640
diff changeset
    71
                need to install the latest version of pylint via easy_install
1640
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    72
                to run slim_code_cleanliness test.  Unfortunately, the latest 
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    73
                pylint 0.25 does not work with nosexunit at all.  As a 
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    74
                result, only plint 0.23 will work and this is why the above
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    75
                needs to be done.
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    76
 
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    77
3)  You also need to install the following additional packages from solaris 
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    78
    publisher in order for the slim_unit test and slim_code cleaness tests
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    79
    to run:
1584
e3b952b9a46b 7132996 test_pre_pkg_img_mod.py will fail if SUNWcs does not exist on
Mary Ding <mary.ding@oracle.com>
parents: 1535
diff changeset
    80
e3b952b9a46b 7132996 test_pre_pkg_img_mod.py will fail if SUNWcs does not exist on
Mary Ding <mary.ding@oracle.com>
parents: 1535
diff changeset
    81
        group/system/solaris-desktop
e3b952b9a46b 7132996 test_pre_pkg_img_mod.py will fail if SUNWcs does not exist on
Mary Ding <mary.ding@oracle.com>
parents: 1535
diff changeset
    82
        install/installadm
e3b952b9a46b 7132996 test_pre_pkg_img_mod.py will fail if SUNWcs does not exist on
Mary Ding <mary.ding@oracle.com>
parents: 1535
diff changeset
    83
1640
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    84
4) Build the gate, per the instructions in usr/src/README.
842
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    85
	Note:	The slim_test program will test Python code from
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    86
		the proto area, so the associated files must be
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    87
		re-built to pick up any changes to tested code.
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    88
		The tests themselves are run from the source files,
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    89
		so changes to tests do not require a re-build.
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    90
1640
851d069ece17 7144255 Need to update usr/src/tools/tests/README and usr/src/README about http proxy/nosexunit/pylint
Mary Ding <mary.ding@oracle.com>
parents: 1584
diff changeset
    91
5) Use the "bldenv" command to set-up the build and test environment. 
1535
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
    92
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
    93
	sudo /opt/onbld/bin/bldenv -d ../../developer.sh
842
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
    94
1384
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
    95
There are two different scripts for execution of tests:
1535
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
    96
  - slim_test 
1384
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
    97
  - slim_regression_test.py (see below for an explanation of this script)
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
    98
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
    99
The slim_test script:
842
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   100
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   101
The "slim_test" command is a thin wrapper around the "nosetests" command,
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   102
and accepts the same arguments. To see a full list of available arguments, run:
1535
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
   103
	sudo ./slim_test -h
842
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   104
1384
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   105
Run the following command to execute all the currently known tests:
1535
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
   106
	sudo ./slim_test -c tests.nose
1384
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   107
842
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   108
To run an individual test:
1535
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
   109
        sudo ./slim_test -c tests.nose TEST_NUM [TEST_NUM]...
842
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   110
        
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   111
Where TEST_NUM is the number of the test you'd like to run, and may be
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   112
specified multiple times to run more than one test. Test numbers are
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   113
indicated during a full run. To query the test numbers without executing the
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   114
tests, run:
1535
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
   115
        sudo ./slim_test -c tests.nose --collect-only
842
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   116
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   117
Note: To reset the numbering, delete the "usr/src/.noseids" file
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   118
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   119
To run all tests within a specific file or package, omit the "-c tests.nose"
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   120
portion, and supply the path to the file or package, relative to the usr/src
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   121
directory of the workspace. For example, the following command runs only
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   122
the liberrsvc_pymod tests:
1535
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
   123
	sudo ./slim_test lib/liberrsvc_pymod/test 
862
e9f31f2f2f2d 16423 Updates to AI schema should be made
Sue Sohn <Susan.Sohn@Oracle.COM>
parents: 842
diff changeset
   124
e9f31f2f2f2d 16423 Updates to AI schema should be made
Sue Sohn <Susan.Sohn@Oracle.COM>
parents: 842
diff changeset
   125
To run all tests in a specific file:
1535
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
   126
	sudo ./slim_test lib/liberrsvc_pymod/test/test_liberrsvc.py
862
e9f31f2f2f2d 16423 Updates to AI schema should be made
Sue Sohn <Susan.Sohn@Oracle.COM>
parents: 842
diff changeset
   127
e9f31f2f2f2d 16423 Updates to AI schema should be made
Sue Sohn <Susan.Sohn@Oracle.COM>
parents: 842
diff changeset
   128
To run a specific class of tests in that file:
1535
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
   129
	sudo ./slim_test lib/liberrsvc_pymod/test/test_liberrsvc.py:error_service
862
e9f31f2f2f2d 16423 Updates to AI schema should be made
Sue Sohn <Susan.Sohn@Oracle.COM>
parents: 842
diff changeset
   130
e9f31f2f2f2d 16423 Updates to AI schema should be made
Sue Sohn <Susan.Sohn@Oracle.COM>
parents: 842
diff changeset
   131
To run a particular test in that class:
1535
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
   132
	sudo ./slim_test lib/liberrsvc_pymod/test/test_liberrsvc.py:error_service.test_create_error_info
842
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   133
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   134
To report code coverage metrics along with test results, add a "--with-cover"
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   135
flag:
1535
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
   136
	sudo ./slim_test -c tests.nose --with-cover
842
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   137
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   138
To add a set of tests to the suite, update the tests.nose file. See that
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   139
file for more details.
e8046b4f26e8 16105 slim_source gate could use infrastructure for running unit tests
Keith Mitchell <keith.mitchell@oracle.com>
parents:
diff changeset
   140
1535
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
   141
To run the nosexunit test, it should be run with sudo:
1314
34fbdbe18d96 7055610 Need to remove workaround in ai.xml after fix for 7050450 is integrated.
Mary Ding <mary.ding@oracle.com>
parents: 1272
diff changeset
   142
1535
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
   143
sudo source ${WORKSPACE}/developer.sh
c41d849a6d2e 7104155 tools/tests/README not consistent about unit tests running
Mary Ding <mary.ding@oracle.com>
parents: 1435
diff changeset
   144
sudo ${WORKSPACE}/usr/src/tools/tests/slim_test \
1384
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   145
    -c ${WORKSPACE}/usr/src/tools/tests/tests.nose --with-nosexunit \
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   146
    --source-folder=${ROOT}/usr/lib/python2.6/vendor-packages --enable-audit \
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   147
    --audit-config=${WORKSPACE}/usr/src/tools/env/install.pylintrc
1314
34fbdbe18d96 7055610 Need to remove workaround in ai.xml after fix for 7050450 is integrated.
Mary Ding <mary.ding@oracle.com>
parents: 1272
diff changeset
   148
1384
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   149
------------------
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   150
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   151
In addition to the slim_test wrapper, there is also a
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   152
slim_regression_test.py script useful for checking your workspace for
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   153
regressions.  The slim_regresstion_test.py script requires root permissions
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   154
to execute.  The easiest way to set up your system to run these tests as
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   155
root is to use sudo.  Before running the regression tests, edit your
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   156
/etc/sudoers file (via the visudo command) and set 
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   157
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   158
Defaults env_keep="PYTHONPATH SRC"
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   159
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   160
so $SRC and $PYTHONPATH are correctly forwarded to the command being run as
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   161
root.
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   162
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   163
To run all of the tests and check for regressions against the latest Hudson
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   164
build:
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   165
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   166
	sudo ./slim_regression_test.py
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   167
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   168
To run all of the tests but suppress the printing of the results (useful
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   169
for large tests):
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   170
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   171
	sudo ./slim_regression_test.py --suppress-results
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   172
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   173
To run a specific subset of tests:
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   174
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   175
	sudo ./slim_regression_test.py target ai transfer
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   176
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   177
The list of tests can be found via the --help flag:
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   178
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   179
	sudo ./slim_regression_test.py --help
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   180
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   181
              group tests
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   182
                      all:  libraries, commands
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   183
                libraries:  target, utils, doc, logging_pymod, netif, liberrsvc, libict_pymod, ict, terminalui, liberrsvc_pymod, boot, engine, manifest_input, logging, common, manifest, transfer, libaimdns
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   184
                 commands:  distro_const, js2ai, ai-webserver, system-config, system-config/profile, auto-install, auto-install/test, installadm, text-install
1314
34fbdbe18d96 7055610 Need to remove workaround in ai.xml after fix for 7050450 is integrated.
Mary Ding <mary.ding@oracle.com>
parents: 1272
diff changeset
   185
1384
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   186
         individual tests
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   187
             ai-webserver:  cmd/ai-webserver/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   188
             auto-install:  cmd/auto-install/checkpoints/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   189
        auto-install/test:  cmd/auto-install/test
1435
ffa7838e81ca 7050547 ai_sd/aimdns unit tests failing on machine not configured as AI server
Matt Keenan <matt.keenan@oracle.com>
parents: 1384
diff changeset
   190
 auto-install/test/manual:  cmd/auto-install/test/manual
1384
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   191
                     boot:  lib/install_boot/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   192
                   common:  lib/install_common/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   193
             distro_const:  cmd/distro_const/checkpoints/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   194
                      doc:  lib/install_doc/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   195
                   engine:  lib/install_engine/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   196
                      ict:  lib/install_ict/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   197
               installadm:  cmd/installadm/test
1435
ffa7838e81ca 7050547 ai_sd/aimdns unit tests failing on machine not configured as AI server
Matt Keenan <matt.keenan@oracle.com>
parents: 1384
diff changeset
   198
        installadm/manual:  cmd/installadm/test/manual
1384
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   199
                    js2ai:  cmd/js2ai/modules/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   200
                libaimdns:  lib/libaimdns/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   201
                liberrsvc:  lib/liberrsvc/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   202
          liberrsvc_pymod:  lib/liberrsvc_pymod/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   203
             libict_pymod:  lib/libict_pymod/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   204
                  logging:  lib/install_logging/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   205
            logging_pymod:  lib/install_logging_pymod/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   206
                 manifest:  lib/install_manifest/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   207
           manifest_input:  lib/install_manifest_input/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   208
                    netif:  lib/netif/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   209
            system-config:  cmd/system-config/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   210
    system-config/profile:  cmd/system-config/profile/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   211
                   target:  lib/install_target/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   212
               terminalui:  lib/terminalui/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   213
             text-install:  cmd/text-install/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   214
                 transfer:  lib/install_transfer/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   215
                    utils:  lib/install_utils/test
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   216
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   217
To run a regression test against a specific Hudson job number:
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   218
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   219
	sudo ./slim_regression_test.py --hudson ###
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   220
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   221
The job numbers can be found here:
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   222
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   223
        http://indiana-build.us.oracle.com/job/install_unit_tests/
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   224
bd0db82c0cc7 6987307 Update slim_test to allow better granularity of test selection
Drew Fisher <drew.fisher@oracle.com>
parents: 1314
diff changeset
   225
along the left-hand side.