WUSB Test Plan
From Genunix
TBD for PSARC ID
1 Introduction
1.1 Authors
| Name |
|---|
| Yuan.fan |
| Herry.jiang |
1.2 Test Sponsor
TBD
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 (yyyy-mm-dd) | Revision | Comments | Approval/Status |
|---|---|---|---|
| 2007-10-25 | 0.1 | Initial draft for I-team review | |
| 2007-11-28 | 0.2 | Initial draft for I-team review | Reviewd by Robs, Michelle and I-team |
1.6 References
- WUSB OpenSolaris Project Page
- WUSB Design Document
- WUSB Security Design Document
- WUSB and WHCI Specification
1.7 Staffing
| Name | Role | % Commitment | Duration |
|---|---|---|---|
| Yuan Fan | QE Engineer | 80% | 5 months |
| Henry Jiang | QE Engineer | 30% | 5 months |
1.8 Glossary
| Term | Definition |
|---|---|
| WUSB | Wireless USB is based on the WiMedia Alliance's Ultra-WideBand (UWB) common radio platform, which is capable of sending 480 Mbit/s at distances up to 3 meters and 110 Mbit/s at up to 10 meters. It was designed to operate in the 3.1 to 10.6 GHz frequency range. |
| UWB | Ultra-wideband (UWB, ultra-wide band, ultraband, etc.) is a radio technology. It can be used at very low energy levels for short-range high-bandwidth communications by using a larger portion of the radio spectrum. |
| WHCI | The Wireless Host Controller Interface (WHCI) specification describes the register-level interface for a Host Controller for Wireless Universal Serial Bus. |
| HAL | hardware abstraction layer,HAL is an abstraction layer, implemented in software, between the physical hardware of a computer and the software that runs on that computer. Its function is to hide differences in hardware from most of the operating system kernel, |
| HWA | Host Wire Adapter,The HWA is a USB device that attaches externally to a desktop or laptop's USB port or internally to a laptop's MiniCard interface. |
| DWA | Device Wire Adapter,sometimes referred to as a "WUSB hub", a DWA allows existing USB devices to be used wirelessly with a WUSB host. |
| MSD | Mass storage device |
2 Test Program Summary
This project will deliver a whole solution to support UWB & Wireless USB on Solaris, including a framework, security components, some device drivers and config tools.
Our test programs will qualify:
- UWB driver
- WUSB driver
- Security Components
- Config tool
- WHCI driver
Since WUSB protocol is an extension to the USB2.0 protocol,we can use USBPIT do most functional tests. Much of the test development effort will be focused on security related parts,driver ioctls stability,multi-thread safety and WUSB config tool.
3 Operational Factors
3.1 Assumptions
- Assumption #1: The WUSB driver does not have platform dependencies. Therefore, test execution will be run on randomly selected machines, but will run on each Intel/AMD64/SPARC platform .
3.2 Dependence
- Dependence #1: We depend on the availability of WUSB devices to qualify the WUSB driver.
3.3 Risks
Risk #1:
- Description: We can not get a stand-alone device which has integrated WUSB protocol.
- Likelihood of Occurrence:High
- Mitigation and Contingency Plan:Using a device which connect to the DWA instead of using a stand-alone device
Risk #2:
- Description: We could not cover all WUSB devices in the market.
- Likelihood of Occurrence:High
- Mitigation and Contingency Plan:Test more devices as possible
4 Test Development Information
4.1 Test Development
| Test Name | Automated or Manual | Test Type | Project Component | Description |
|---|---|---|---|---|
| wusb_ioctl_test | Automated | Functional | WUSB driver | verify all ioctls of WUSB driver with legal/illegal(valid/invalid) inputs and use mutlti-threads call the ioctls,ensure not panic and hang the system. |
| wusb_adm_test | Automated | Functional | WUSB driver & config tool | verify each subcommands of "wusbadm".Which include list,associate,renew,startscan,stopscan,disconncet and invalid inputs. |
| uwb_ioctl_test | Automated | Functional | UWB driver | verify all ioctls of UWB driver with legal/illegal(valid/invalid) inputs and use mutlti-threads call the ioctls.ensure not panic and hang the system. |
| uwb_adm_test | Automated | Functional | UWB driver & config tool | verify each subcommands of "uwbadm".Which include device,reset,scan,start_beacon,stop_beacon,get_notify and invalid inputs. |
| wusb_cfg_test | Automated | Functional | config tool & WUSB driver | verify each subcommands of "cfgadm" can configure,disconfigure,connect,disconnect wusb device. |
| wusb_auth_test | Automated | Functional | security components & WUSB driver | verify the process of authentication in the normal and abnormal situation. |
| wusb_pm_test | Automated | Functional | security Components & WUSB driver | verify HWA can support power management. |
5 Areas of Testing
5.1 Functional Testing
Features to be tested:
Authentication and security supporting:
- wusb_auth_test
WUSB protocol and utilities:
- usbpit(Verify both HWA and DWA on uhci,ehci,ohci host controller)
- hotplug
- verify the HWA and device which connect to the DWA can support hotplug well
- moving the DWA around the HWA
- wusb_cfg_test
- wusb_adm_test
- uwb_adm_test
- wusb_ioctl_test
- uwb_ioctl_test
- association test
verify the wusb host driver can support cable association.
- interference test
add or remove a DWA not interrupt the remain operation
Installation/Update,Driver insmod and boot:
- Driver can successfully insmod when the system boot
- Solaris fresh install and upgrade install
- bfu
- Connect HWA and DWA to the system Perform reboot (warm reboot). The system should shut down and boot without errors
Power management
- wusb_pm_test
5.2 Regression Testing
use usbpit test original usb 2.0/1.1 device on uhci,ehci,ohci interface.
5.3 Conformance Testing
None
5.4 Stress/Robustness Testing
Perform continous/repeated data transfer between MSD connected to DWA #1 and MSD connected to DWA #2 while playing an mpeg from a Wireless USB connected MSD for one hour without interruption or intervention by user.
5.5 Performance Testing
Run the Vdbench test suite on the USB mass storage device which connect to the DWA.
5.6 Memory Leak Testing
Use mdb(1) ::findleaks to detect memory leaks at the end of each round of Test Suites.
5.7 Required Solaris Feature Testing
- Zones Testing
Verify WUSB driver in local zone also can be used.
- ZFS Testing
None
- Trusted Extensions Testing
Testing the above feature can be run when trusted extension enabled.
- xVM Testing
WUSB should work as the same in dom0 as in Solaris.
5.8 Interoperability Testing
This project includes two kinds of interoperability test:
Test will be executed using two device transfer files both directions which connect to two different DWA.
Test will be executed using two device transfer files both directions which one connect to DWA and one directly connect to the computer.
5.9 Testing Not Covered
isoc transfer (not supported by current WUSB drivers)
numeric association (not supported by current WUSB drivers)
5.10 Documentation Testing
We will be reviewing man pages when they become available.
5.11 Internationalization Testing
TBD
6 Test Execution
6.1 Hardware Test Configurations
The following HW platforms will be tested in various combinations:
- We need 2 pair HWA/DWA for test.
IOGEAR(GUWH104KIT)
DLink(DUB-9240)
- Dell 260/Ultra45/ w1100z will be used as test machine.
- Other wired usb devices also will be used.
6.2 Software Test Configurations
- 64-bit kernel and 32bit (only x86) kernel
- debug kernel and non-debug kernel
6.3 Extrapolation Strategy (if applicable)
None
6.4 Pre-Integration PIT Run
- Is a pre-integration PIT run is required? (REQUIRED, RECOMMENDED, NONE)? None.
6.5 Test Execution Matrix
| # | Test Name | DELL 270 | W110Z | U45 | Comments |
|---|---|---|---|---|---|
| 1 | wusb_ioctl_test | ||||
| 2 | uwb_ioctl_test | ||||
| 3 | wusb_cfg_test | ||||
| 4 | wusb_auth_test | ||||
| 5 | wusb_pm_test | ||||
| 6 | wusb_adm_test | ||||
| 7 | association test | ||||
| 8 | uwb_adm_test | ||||
| 9 | interference test | ||||
| 10 | usbpit | ||||
| 11 | memleak | ||||
| 12 | stress testing | ||||
| 13 | Interoperability Testing | ||||
| 14 | hotplug | ||||
| 15 | TX test | ||||
| 16 | ON-PIT |
7 Schedules and Milestones
| Milestone | Original Date (yyyy-mm-dd) | Actual Date (yyyy-mm-dd) | Completed Date (yyyy-mm-dd) |
|---|---|---|---|
| Test Plan First Draft | 2007-11-20 | 2007-11-20 | 2007-11-20 |
| Test Plan Review by I-team | 2007-12-13 | 2007-12-13 | |
| Test Plan Approval | |||
| Prepare code for test cycle 1 | |||
| File a fast-track case | |||
| Prepare Hardware | |||
| Test cycle 1 | |||
| Post test results of cycle 1 | |||
| Fast-track case approved | |||
| Prepare code for test cycle 2 | |||
| Test cycle 2 | |||
| Post test results of cycle 2 | |||
| Prepare code for test cycle 3 | |||
| Test cycle 3 | |||
| Post test results of cycle 3 | |||
| Test report | |||
| C-team review | |||
| WebRTI | |||
| Integrate into ON PIT |
8 Post-Integration Testing Information
8.1 Test Suite Integration Requirements
| Test Suite Name | Source Integration Location | Target Integration Date | Comments |
|---|---|---|---|
| STC2 Gate |
8.2 Test Suite Execution Integration Requirements
| Test Suite Name | Test Execution Group | Comments |
|---|---|---|
