I had a partially commented disassembly that anomie made - I'll see if I can dig it up. First it tests things like VRAM and OAM uploads and downloads, then it tries to verify basic raster operations (VIRQ and HIRQ vs. latched counter values vs. the vblank and hblank status flags) and then it tests things like sprite time over/line over.