Table of Contents
Daniel Verkamp: Automated regression testing
Notes
Detailed test cases
Unfinished
Potential test cases
NOTE: brainstorming; not final
- Protocol tests: download image, verify integrity
- HTTP
- HTTPS
- TFTP
- iSCSI
- …
- Image formats: boot image, run some kind of “proof of boot”?
- bzImage
- multiple versions of Linux
- gpxe .lkrn
- other OSes using bzImage format?
- NBI
- COMBOOT
- Multiboot
- …
- API/interface testing
- COMBOOT
- PXE
- GDB stub
- …
- gPXE scripting language
- SAN booting
- Windows installation (various versions)
- Windows booting (WinAoE, iSCSI)
- …
- gPXE output formats
- Floppy disk
- CD
- PXE NBP (test on other PXE stacks?)
- …
- Net drivers
Sample test cases
Windows PE boot
Test
Boot into a Windows PE operating system generated according to these instructions via TFTP.
DUT configuration
No physical disks present. System configured to boot from NIC equipped with gPXE ROM.
Environment configuration
TFTP server hosting WinPE files. DHCP server providing network configuration and path to WinPE's \Boot\pxeboot.n12
file.
Result
Success is defined as reaching WinPE's X:\Windows\system32
command prompt.
iSCSI forward authentication
Test
Boot into a Windows Server 2003 operating system stored on an iSCSI target that requires forward CHAP authentication.
DUT configuration
No physical disks present. System configured to boot from NIC equipped with gPXE ROM. NIC non-volatile storage configured with iSCSI username and password.
Environment configuration
iSCSI target running IETD set up to require forward CHAP authentication. DHCP server providing network configuration and iSCSI root-path, but not providing iSCSI username and password (which are held in the DUT's non-volatile storage).
Result
Success is defined as reaching the Windows graphical login screen.
Linux bzImage boot
Test
Boot into a minimal Linux/busybox system created using mkbootfs via HTTP.
DUT configuration
No physical disks present. System configured to boot from NIC equipped with gPXE ROM.
Environment configuration
Apache HTTP server providing gPXE script, kernel, initrd, and modules as separate files. gPXE script set to instruct client to download kernel, initrd and relevant modules. DHCP server providing network configuration and path to gPXE script on HTTP server.
Result
Success is defined as reaching the busybox shell prompt.