Test against virtual hardware?
Posted Dec 9, 2004 16:52 UTC (Thu) by AJWM
Parent article: Toward better kernel releases
Hardware-specific code can only be tested in the presence of the hardware in question.
Or against a (damn good) emulation of it. This is, after all, how firmware and software gets developed for hardware that is itself still in the design process.
Yes, it would no doubt be a rather large effort to develop suitable virtual hardware "devices" to be plugged into a virtual machine for testing, if those devices have to mirror exactly the idiosyncracies of real-world hardware. But it's not impossible, and it's the kind of project that can be approached in a piecemeal and distributed way that's ideal for the bazaar.
Start with one of the existing open virtual systems, make the virtual devices pluggable modules, and then tweak the virtual devices to act like specific real-world hardware rather than some idealized hardware. Once a virtual gizmo is thoroughly tested against its real counterpart in terms of bug-compatible behaviour, you can then run regression tests against that hardware on a virtual machine.
There are undoubtedly classes of bug that this won't catch, but they'll also be of the sort that are less likely to occur in the field anyway.
to post comments)