NIC driver test suite
Introduction
This project is for the NIC test suites development. You can download the NIC driver test suite and learn about nic driver testing from this link. Everyone's contribution and feedback is important to this project.
NICDRV Introduction
NICDRV is a testsuite developed by us for NIC drivers testing. It is used to qualify the NIC's functionalities working on Solaris and supports both SPARC and X86 platforms. We analyzed the functionalities of all kinds of NICs and refined the testing criteria.
NICDRV contains necessary network applications to verify the working of NIC drivers, including network data transmission at IPv4/IPv6, transmission at promiscuous mode, transmission based on all kinds of packet length, data corruption verifying, multicast transmission, ndd-parameters setting, working-mode testing, Statistics, vlan, link aggregation, loading/unloading drivers and etc.NICDRV also include stress testing
NICDRV is implemented based on our existing Solaris Test Framework (STF), so it can be configured and executed automatically instead of running every test case manually. Test report will also be produced automatically after the test ends.
NICDRV uses code coverage analysis to evaluate test effectiveness. While the test is running, all functions of the under test NIC driver are called can be recorded by a Dtrace script. At the end of the test, the code coverage rate will be shown. Testers can know which functions of the NIC driver routine are passed and which functions aren't called. This feature of the NICDRV framework is also used in developing new test cases for NIC.
We designed NICDRV as an open test platform. The test criteria can be adjusted based on the different models of NIC. If it is a high-end NIC, like 10Gb/s NIC, used on transmitting huge network data, testers can select a set of parameters with high level to test. If the NIC is just for low-end usage, a little data being transmitted (like 10Mb/s NIC), testers can adjust the parameters to a lower level. A new set of parameters can be added into NICDRV platform for the new model of NIC as the new test criteria. And also, new test cases can be added into NICDRV easily.
Test case introduction
| Case Name |
Type |
Default Runtime |
Description |
|
Test00
|
functional
|
2(hours)
|
Data transmitting/receiving
Ftp ipv4/ipv6
|
|
Test01
|
functional
|
3(hours)
|
Receiving/transmitting under promiscuous mode
Netperf+snoop on/off
|
|
Test02
|
functional
|
1(hours)
|
Packets lost and zero length data pending
ping all packet size
|
|
Test03
|
functional
|
2(hours)
|
Data corruption
nfs corrupt
|
|
Test04
|
functional
|
1(hours)
|
Multicast
IPmulticast
|
|
Test05
|
functional
|
5(mins)
|
ndd interface
ndd read/write command
|
|
Test06
|
functional
|
3(hours)
|
Receiving/transmitting on different duplex/speed mode
netperf on 10/100/1000Mbps duplex/speed mode
|
|
Test07
|
functional
|
20(mins)
|
Statistic
kstat and netstat counter check
|
|
Test08
|
functional
|
2(hours)
|
Vlan
Vlan plumb/FTP/nfs corrupt/MAXQ
|
|
Test09
|
functional
|
1(hours)
|
Trunking
nfs corrupt on trunking interface
|
|
Test10
|
functional
|
|
load,unload driver
Test driver load unload functionality
|
|
Test11
|
functional
|
|
DR(dynamic reconfiguration) test
Test NIC driver dynamic reconfiguration support
|
|
netstress
|
stress
|
15(hours)
|
netperf (TCP/UDP)
|
|
loadunload
|
stress
|
6(hours)
|
load/unload with netperf
|
Quick start
AUTO_NICDRV README
Install wrapper for nicdrv
http://www.opensolaris.org/os/community/device_drivers/auto_nicdrv_0910.tar.bz2
How to build and use
NICDRV README
Source code, binary and package
The NICDRV i386 binary can be downloaded at:
http://www.opensolaris.org/os/community/device_drivers/SUNWstc-nicdrv-20080513.i386.tar.bz2
The NICDRV sparc binary can be downloaded at:
http://www.opensolaris.org/os/community/device_drivers/SUNWstc-nicdrv-20080513.sparc.tar.bz2
The test suite source can be browsed at:
http://cvs.opensolaris.org/source/xref/test/ontest-stc2/src/suites/net/nicdrv
The test suite source can be downloaded at:
http://dlc.sun.com/osol/test/downloads/current/ontest-nicdrv-src-20080424.tar.bz2
bugs
|