On 12/04/2011 04:03 AM, Dor Laor wrote:
On 12/01/2011 08:43 PM, Anthony Liguori wrote:
This series is still pretty rough but I wanted to get an idea of what people
thought about it before polishing it.
The general idea is outlined in the first test. The main advantage of this
type of test framework compared to something like kvm-unit-test is that you
don't need a build environment for what you're trying to test.
Luckily w/ qemu cpu emulation and few images it can be set once and be there for
ever.
The advantage of kvm-unit-test is that the code actually does run. So we can
test irq injections, io/mmio in the kernel too, dirty bit tracking and some more
all together.
Yup, and kvm-unit-test will always need to exist for that.
But we need something that makes it easy to test ARM, PPC, s390, etc so that
when we do things like the memory API, it's possible for a developer to do
reasonable testing without having to track down 100 different images and tool
chains.
Regards,
Anthony Liguori
Since your tests also link against the host environment, it potentially makes
tests much simplier to write (as you aren't reinventing an OS). I think this
makes this style of test more appropriate for something like QEMU.
Anthony Liguori (6):
qtest: add test framework
qtest: add support for target-i386 -M pc
Add core python test framework
Add uart test case
Add RTC test case
Add C version of rtc-test
Makefile | 4 +
Makefile.objs | 2 +
hw/pc.c | 7 +-
hw/pc_piix.c | 9 +-
qemu-options.hx | 8 ++
qtest.c | 357 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
qtest.h | 37 ++++++
qtest.py | 69 +++++++++++
rtc-test.c | 201 +++++++++++++++++++++++++++++++
rtc-test.py | 105 ++++++++++++++++
serial-test.py | 24 ++++
vl.c | 8 ++
12 files changed, 827 insertions(+), 4 deletions(-)
create mode 100644 qtest.c
create mode 100644 qtest.h
create mode 100644 qtest.py
create mode 100644 rtc-test.c
create mode 100644 rtc-test.py
create mode 100644 serial-test.py