source: trunk/third/openssh/regress/README.regress @ 22570

Revision 22570, 3.6 KB checked in by ghudson, 18 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r22569, which included commits to RCS files with non-trunk default branches.
Line 
1Overview.
2
3$ ./configure && make tests
4
5You'll see some progress info. A failure will cause either the make to
6abort or the driver script to report a "FATAL" failure.
7
8The test consists of 2 parts. The first is the file-based tests which is
9driven by the Makefile, and the second is a set of network or proxycommand
10based tests, which are driven by a driver script (test-exec.sh) which is
11called multiple times by the Makefile.
12
13Failures in the first part will cause the Makefile to return an error.
14Failures in the second part will print a "FATAL" message for the failed
15test and continue.
16
17OpenBSD has a system-wide regression test suite. OpenSSH Portable's test
18suite is based on OpenBSD's with modifications.
19
20
21Environment variables.
22
23SUDO: path to sudo command, if desired. Note that some systems (notably
24        systems using PAM) require sudo to execute some tests.
25TEST_SSH_TRACE: set to "yes" for verbose output from tests
26TEST_SSH_QUIET: set to "yes" to suppress non-fatal output.
27TEST_SSH_x: path to "ssh" command under test, where x=SSH,SSHD,SSHAGENT,SSHADD
28        SSHKEYGEN,SSHKEYSCAN,SFTP,SFTPSERVER
29OBJ: used by test scripts to access build dir.
30TEST_SHELL: shell used for running the test scripts.
31TEST_SSH_PORT: TCP port to be used for the listening tests.
32TEST_SSH_SSH_CONFOTPS: Configuration directives to be added to ssh_config
33        before running each test.
34TEST_SSH_SSHD_CONFOTPS: Configuration directives to be added to sshd_config
35        before running each test.
36
37
38Individual tests.
39
40You can run an individual test from the top-level Makefile, eg:
41$ make tests LTESTS=agent-timeout
42
43If you need to manipulate the environment more you can invoke test-exec.sh
44directly if you set up the path to find the binaries under test and the
45test scripts themselves, for example:
46
47$ cd regress
48$ PATH=`pwd`/..:$PATH:. TEST_SHELL=/bin/sh sh test-exec.sh `pwd` \
49    agent-timeout.sh
50ok agent timeout test
51
52
53Files.
54
55test-exec.sh: the main test driver. Sets environment, creates config files
56and keys and runs the specified test.
57
58At the time of writing, the individual tests are:
59agent-timeout.sh:       agent timeout test
60agent.sh:               simple agent test
61broken-pipe.sh:         broken pipe test
62connect-privsep.sh:     proxy connect with privsep
63connect.sh:             simple connect
64exit-status.sh:         remote exit status
65forwarding.sh:          local and remote forwarding
66keygen-change.sh:       change passphrase for key
67keyscan.sh:             keyscan
68proto-mismatch.sh:      protocol version mismatch
69proto-version.sh:       sshd version with different protocol combinations
70proxy-connect.sh:       proxy connect
71sftp.sh:                basic sftp put/get
72ssh-com-client.sh:      connect with ssh.com client
73ssh-com-keygen.sh:      ssh.com key import
74ssh-com-sftp.sh:        basic sftp put/get with ssh.com server
75ssh-com.sh:             connect to ssh.com server
76stderr-after-eof.sh:    stderr data after eof
77stderr-data.sh:         stderr data transfer
78transfer.sh:            transfer data
79try-ciphers.sh:         try ciphers
80yes-head.sh:            yes pipe head
81
82
83Problems?
84
85Run the failing test with shell tracing (-x) turned on:
86$ PATH=`pwd`/..:$PATH:. sh -x test-exec.sh `pwd` agent-timeout.sh
87
88Failed tests can be difficult to diagnose. Suggestions:
89- run the individual test via ./test-exec.sh `pwd` [testname]
90- set LogLevel to VERBOSE in test-exec.sh and enable syslogging of
91  auth.debug (eg to /var/log/authlog).
92
93
94Known Issues.
95
96- If your build requires ssh-rand-helper regress tests will fail
97  unless ssh-rand-helper is in pre-installed (the path to
98  ssh-rand-helper is hard coded).
99
100- Recent GNU coreutils deprecate "head -[n]": this will cause the yes-head
101  test to fail.  The old behaviour can be restored by setting (and
102  exporting) _POSIX2_VERSION=199209 before running the tests.
103
104$Id: README.regress,v 1.1.1.1 2006-11-30 21:19:31 ghudson Exp $
Note: See TracBrowser for help on using the repository browser.