SCM Test Plan
From Genunix
PSARC 200X/XXX
1 Introduction
1.1 Authors
1.2 Test Sponsor
<firstname><lastname>
1.3 Test Plan Approval
| Title | Name | Version | Date |
|---|---|---|---|
| Development Lead | |||
| Development Manager | |||
| Test Sponsor |
1.4 Open Source Project
- Is this an open source development project? Yes
- Does this project use any open source test software? Yes
1.5 Revision History
| Date | Revision | Comments | Approval/Status |
|---|---|---|---|
| 2007-12-06 | 0.1 | Initial draft. | I-Team Review |
| 2007-12-06 | 0.2 | Incorporate comments and sync with development. | I-Team Review |
1.6 References
1.7 Staffing
| Name | Role | % Commitment | Duration |
|---|---|---|---|
| Jim Walker | Test Lead | 25% | 6 months |
| SCM Development Team | Development Engineers | 10% | 3 months |
1.8 Glossary
| Term | Definition |
|---|---|
| Mercurial(hg) | Mercurial is a fast, lightweight Source Control Management system designed for efficient handling of very large distributed projects. Mercurial uses Hg, the chemical symbol for mercury, in the command line interface. |
| SCCS | Source Code Control System. |
| SCM | Source Control Management. |
| Teamware | Sun developed source control management system product. |
2 Test Program Summary
This test program verifies the ON workspace tool changes implemented to move from a Teamware centric to a Mercurial centric source control management system.
The test program focuses on the following areas:
1. Verify workspace developer tools updated to support Teamware, Mercurial and Subversion
2. Verify new workspace developer tools
3. Verify the Cadmium extensions to Mercurial
A scm test suite using the CTI for TET framework will be developed as part of the project and integrated into ON-PIT.
3 Operational Factors
3.1 Assumptions
- Assumption #1: Workspace developer tools will be the main focus. Gatekeeper tools will be done as a separate project.
3.2 Dependencies
N/A
3.3 Risks
N/A
4 Test Development
| Test Name | Automated or Manual | Test Type | Project Component | Description |
|---|---|---|---|---|
| cddlchk_test | Automated | Functional | Command | re-implemented. verify positive and negative command options. Includes testing Cddl.py. |
| checkpaths_test | Automated | Functional | Command | updated. verify positive and negative command options. Includes testing findunref.py. |
| cstyle_test | Automated | Functional | Command | updated. verify positive and negative command options. |
| hdrchk_test | Automated | Functional | Command | re-implemented. verify positive and negative command options. Includes testing HdrChk.py. |
| hg-active_test | Automated | Functional | Command | new. verify positive and negative command options. |
| hgsetup_test | Automated | Functional | Command | new. verify positive and negative command options. |
| jstyle_test | Automated | Functional | Command | updated. verify positive and negative command options. |
| nightly_test | Automated | Functional | Command | updated. verify positive and negative command options. Includes testing checkpaths.sh and sdrop.sh. |
| which_scm_test | Automated | Functional | Command | new. verify positive and negative command options. |
| webrev_test | Automated | Functional | Command | updated. verify positive and negative command options. Includes testing hg-active.py, WorkSpace.py. |
| ws_test | Automated | Functional | Command | updated. verify positive and negative command options. |
| wx_test | Automated | Functional | Command | updated. verify positive and negative command options. Includes testing cddlchk.py, copyrightchk.py, cstyle.pl, jstyle.pl, hdrchk.py, webrev.sh, rtichk.py. |
| wx2hg_test | Automated | Functional | Command | new. verify positive and negative command options. |
| xref_test | Automated | Functional | Command | updated. verify positive and negative command options. Includes testing flg.flp.sh. |
| findunref_test | Automated | Functional | Command | re-implemented. verify positive and negative command options. |
| cad_test | Automated | Functional | hg extensions | new. verify positive and negative Cadmium hg commands and options. Includes testing Cddl.py, Copyright.py, HdrChk.py, Rti.py, Keywords.py, Dblookups.py, Comments.py, CStyle.py, JStyle.py, Backup.py, WorkSpace.py. |
5 Areas of Testing
5.1 Functional Testing
- Test the new and updated commands listed in the SCM Test Spec.
- Use the following test suites to verify functionality:
- scm test suite
- tooltest test suite
- cadtest test suite
- Mercurial test suite
- Test with Teamware, Mercurial and Subversion
- Test with filemerge and meld merge tools
5.2 Regression Testing
- Verify tools continue to work with teamware workspaces
5.3 Conformance Testing
N/A
5.4 Stress/Robustness Testing
- multi-user testing
- large code repositories
- complex merges
5.5 Performance Testing
Where possible, baseline performance data of the following activities will be performed on ON and SFW repositories.
- hg clone
- hg pull
- hg stat -mard (on built workspace)
5.6 Memory Leak Testing
Use mdb(1) ::findleaks to detect memory leaks after running stress tests.
5.7 Required Feature Testing
- Zones Testing
New feature functionality will be verified in a named zone.
- ZFS Testing
New feature functionality will be verified using zfs file systems.
- Trusted Extensions Testing
New feature functionality will be verified in a trusted zone.
- xVM and LDOM Testing
New feature functionality will be verified within a xVM and LDOM guest OS.
5.8 Interoperability Testing
N/A
5.9 Testing Not Covered
- Gatekeeping Tools
- Code impacted by removal of SCCS ident keyword
5.10 Documentation Testing
Man pages will be reviewed.
5.11 Internationalization Testing
6 Test Execution
6.1 Hardware Test Configurations
- X64, X86, sun4u, sun4v
6.2 Software Test Configurations
- X86 32-bit kernel (debug, non-debug)
- X64 64-bit kernel (debug, non-debug)
- Sparc 64-bit kernel (debug, non-debug)
6.3 Extrapolation Strategy (if applicable)
N/A
6.4 Pre-Integration PIT Run
- Is a pre-integration PIT run is required? (REQUIRED, RECOMMENDED, NONE)?
6.5 Test Execution Matrix
| # | Test Name | X86 | X64 | SPARC | Comments |
|---|---|---|---|---|---|
| 1 | <test name> | ||||
| 2 | <test name> | ||||
| 3 | <test name> |
7 Schedules and Milestones
| Milestone | Target Date | Actual Date |
|---|---|---|
| Test Plan Approved | 2008-04-25 | |
| Test Development Complete | 2008-05-19 | |
| Development Complete | 2008-05-19 | |
| Final Test Cycle Complete | 2008-05-26 | |
| Code Integration | 2008-06-02 | |
| Test Suite Integration in ON-PIT | 2008-06-20 |
8 Post-Integration Testing Information
8.1 Test Suite Integration Requirements
| Test Suite Name | Source Integration Location | Target Integration Date | Comments |
|---|---|---|---|
| scm | STC2 Test Gate |
8.2 Test Suite Execution Integration Requirements
| Test Suite Name | Test Execution Group | Comments |
|---|---|---|
| scm | ON-PIT |
