Test Design of `goconserver` Regression Testing - xcat2/xcat-core GitHub Wiki
Introduction
A new console server facility, goconserver
was introduced in xCAT for quite a time. This goconserver
is intend to replace the existing console server, conserver
used as a part of xCAT for decade. This test design is intend to provide a plan for the regression testing against goconserver
in xCAT 2.14 release. Since xCAT version 2.14 will be an important release in the near future.
Test Strategy
Basic Function Verification
Scenario 1 - Installation
Test package installation on the following Linux distro, and architecture combinations.
- Fresh installation
- Upgrade
goconserver
package from previous version, say 2.1.0. Verify if the existing configuration can be preserved.
Linux Distro | Architecture |
---|---|
RHEL 7.5 | x86-64 |
RHEL 7.5 | ppc64le |
RHEL 7.5 ALT | ppc64le |
Ubuntu 16.04 | x86-64 |
Ubuntu 16.04 | ppc64le |
Scenario 2 - Normal Console Functionality
Test if the console can work normally with the console of the following machine type, console, and architecture combinations.
Machine Type | Console Type | Architecture |
---|---|---|
IBM OpenPOWER | OpenBMC | ppc64le |
IBM OpenPOWER | IPMI | ppc64le |
IBM OpenPOWER | KVM | ppc64le |
IBM System x | IPMI | x86-64 |
IBM PowerVM LPAR | HMC | ppc64 |
Scenario 3 - Recovery
Verify the console can continue work in the following conditions.
- Restart a compute node
- Restart the OpenBMC on a OpenPOWER machine with OpenBMC
- Restart the BMC on a OpenPOWER machine with IPMI
- Disconnect the network between the console server and the OpenBMC/BMC
Scenario 4 - Log Redirection
- Redirect console log of compute nodes to remote
rsyslogd
, which is listen on UDP 514 port. - Redirect console log of compute nodes to remote
rsyslogd
, which is listen on TCP 514 port.
Scenario 5 - Hierarchy Support
- Use
goconserver
with xCAT service node involved.
Scenario 99 - Documentation
- Verify the man page.
- Verify the documentations on Read the Docs.
In scenario 2 through 99, goconserver
will be tested and run on a RHEL 7.5 ppc64le environment.
Bug Verification
Verify if the following bugs were fixed in the Release Candidate build.
- Need RETRY in
congo
session, if something went wrong and disconnected the ssh session - Escape sequence is sent to the remote side, which should be avoid
- Send SIGSTOP and then SIGCONT to
congo
cause it crash - After /var file system filled up,
congo console
stop working - Consider log rotate
- When console is not created, the error message doesn't help user
- Output plugins
- File output timestamps are output before their content
- TCP output contains carriage returns at the end of message
- LineLogger NewLineBuf timestamp format
- RPM upgrade overwrites server.conf