From: Anthony Liguori <anthony@codemonkey.ws>
To: Avi Kivity <avi@redhat.com>
Cc: "lmr@redhat.com" <lmr@redhat.com>,
Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>,
cleber@redhat.com, dlaor@redhat.com,
qemu-devel <qemu-devel@nongnu.org>,
Gerd Hoffmann <kraxel@redhat.com>, Cleber Rosa <crosa@redhat.com>
Subject: Re: [Qemu-devel] [ANNOUNCE] qemu-test: a set of tests scripts for QEMU
Date: Thu, 29 Dec 2011 10:26:17 -0600 [thread overview]
Message-ID: <4EFC94A9.1040300@codemonkey.ws> (raw)
In-Reply-To: <4EFB5014.9030609@redhat.com>
On 12/28/2011 11:21 AM, Avi Kivity wrote:
> On 12/28/2011 06:42 PM, Anthony Liguori wrote:
>>> In fact using linux as a guest negates that. First of all, which linux
>>> version? if it's fixed, you'll eventually miss functionality and need to
>>> migrate. If it keeps changing, so does your test, and it will keep
>>> breaking.
>>
>>
>> The kernel is a git submodule so it's a very specific version. Yes,
>> we may need to bump the version down the road and obviously, if we
>> have to change any tests in the process, we can.
>
> Having a full linux source as part of the build process detracts
> somewhat from the advantages here.
Except that binaries can be made available. The initramfs is currently 512k
while the kernel is about 5MB.
OTOH, a Fedora install runs in the multiple GB. Having kernels/initramfs for
the dozen target types that QEMU supports is reasonable. Having Fedora installs
for all of them probably isn't for most people.
>> But there's certain things that I still consider to be unit testing
>> (like basic networking tests) that I don't want to have to write with
>> qtest. I'm not up for writing a TCP/IP stack in Python...
>
> A ping test is not a unit test.
>
> The ping test is already covered by kvm-autotest; just set up a config
> that runs just that; after the initial run you'll have a guest installed
> so it'll be quick. If we have a DSL guest it'll even be very quick.
Achieving this with kvm-autotest is not easy. I doubt that DSL has an automated
install mechanism and the step file based guest installation is fincky at best.
When we had the kvm-autotest day, none of the folks that tried to set it up who
had never set it up before had something working by the end of the day. And
that was with lmr available on IRC to answer questions.
There is a huge setup cost with kvm-autotest.
> To test the various NIC emulations, you don't need a full TCP stack,
> just like you didn't need to write an NTP implementation for qtest's rtc
> test. Instead you just poke values until it sends out a packet. If you
> want to test virtio-net with both direct and indirect buffers, you can
> only do that with a unit test, you can't do it using a full linux guest
> since it has its own ideas of when to use indirects and when to avoid
> them (for example, it may choose to always avoid them).
I am not advocating that we don't write proper unit tests...
>> Acceptance testing is, "does Windows boot", "can I create three
>> virtio-serial devices".
>>
>> Obviously, part of acceptance testing is, "does this set of functional
>> tests pass".
>
> Seems like a very blurry line. Especially as the functional test is
> weaker than either qtest and kvm-autotest. I now have to agree with the
> others that it's duplicate functionality. Does it really matter whether
> you're creating an image by compiling Linux and assembling and
> initramfs, or by downloading Fedora.iso and installing it?
Yes. One of them is built entirely from source and the other is doing something
meant to be done on bare metal.
How do you test ARM guests with kvm-autotest? There is no such thing as an ISO
installer for ARM. Are we going to download random images from the internet?
Even if there is an ISO, installing a guest with TCG will take many hours. My
local qemu-test repo can now fully bootstrap an initramfs for non-x86 targets
(which involves building gcc and uClibc). Start to finish it takes about 30
minutes regardless of the target (since the build runs natively).
> Would you add live migration testing to qemu-test? If yes, you're
> duplicating some more. If not, you're not doing functional or coverage
> tests for that functionality.
I would add live migration schema testing, absolutely. I wouldn't add an
acceptance test though.
An acceptance test with live migration would be creating a guest, running it,
and then seeing it live migration worked.
>> I don't want to write a TCP/IP stack. We aren't just grabbing a
>> random distro kernel. We're building one from scratch configured in a
>> specific way.
>
> How does that help?
Not sure I understand the question.
Regards,
Anthony Liguori
>> In theory, we could even host the kernel source on git.qemu.org and
>> fork it to add more interesting things in the kernel (although I'd
>> prefer not to do this, obviously).
>
> That way lies madness, though it could be argued that it lies all around us.
>
>
next prev parent reply other threads:[~2011-12-29 16:26 UTC|newest]
Thread overview: 74+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-19 17:13 [Qemu-devel] [ANNOUNCE] qemu-test: a set of tests scripts for QEMU Anthony Liguori
2011-12-19 17:39 ` Avi Kivity
2011-12-19 17:55 ` Anthony Liguori
2011-12-20 20:34 ` Lucas Meneghel Rodrigues
2011-12-25 15:19 ` Dor Laor
2011-12-26 15:12 ` Anthony Liguori
2011-12-26 23:00 ` Dor Laor
2011-12-27 15:22 ` Anthony Liguori
2011-12-27 15:58 ` Avi Kivity
2011-12-27 16:40 ` Anthony Liguori
2011-12-27 18:00 ` Lucas Meneghel Rodrigues
2011-12-27 22:35 ` Cleber Rosa
2011-12-28 2:37 ` Anthony Liguori
2011-12-28 4:15 ` Cleber Rosa
2011-12-28 5:01 ` Cleber Rosa
2011-12-28 14:27 ` Anthony Liguori
2011-12-28 15:01 ` Avi Kivity
2011-12-28 15:28 ` Avi Kivity
2011-12-28 16:44 ` Anthony Liguori
2011-12-28 17:26 ` Avi Kivity
2011-12-29 16:12 ` Anthony Liguori
2011-12-29 16:36 ` Avi Kivity
2011-12-29 16:49 ` Anthony Liguori
2011-12-29 17:03 ` Avi Kivity
2011-12-29 17:10 ` Anthony Liguori
2011-12-29 17:18 ` Avi Kivity
2011-12-29 17:22 ` Peter Maydell
2011-12-29 17:26 ` Avi Kivity
2011-12-29 17:36 ` Peter Maydell
2011-12-29 17:40 ` Avi Kivity
2011-12-29 17:49 ` Peter Maydell
2011-12-29 17:56 ` Avi Kivity
2011-12-29 21:10 ` Peter Maydell
2012-01-01 9:21 ` Avi Kivity
2011-12-29 18:35 ` Anthony Liguori
2011-12-29 19:04 ` Peter Maydell
2011-12-29 19:40 ` Blue Swirl
2011-12-29 21:46 ` Anthony Liguori
2011-12-29 22:10 ` Peter Maydell
2011-12-29 22:30 ` Anthony Liguori
2011-12-30 15:43 ` Andreas Färber
2012-01-03 13:42 ` Anthony Liguori
2012-01-03 14:51 ` Andreas Färber
2011-12-29 22:11 ` Lucas Meneghel Rodrigues
2011-12-29 18:33 ` Anthony Liguori
2011-12-30 13:44 ` Andreas Färber
2012-01-02 14:07 ` Paolo Bonzini
2012-01-03 8:19 ` Stefan Hajnoczi
2012-01-03 9:10 ` Paolo Bonzini
2011-12-28 16:42 ` Anthony Liguori
2011-12-28 17:21 ` Avi Kivity
2011-12-29 14:38 ` Dor Laor
2011-12-29 16:39 ` Anthony Liguori
2011-12-29 16:53 ` Avi Kivity
2011-12-29 17:02 ` Anthony Liguori
2011-12-29 17:06 ` Avi Kivity
2011-12-29 17:11 ` Anthony Liguori
2011-12-29 23:17 ` Lucas Meneghel Rodrigues
2011-12-30 0:33 ` Anthony Liguori
2011-12-30 1:20 ` Lucas Meneghel Rodrigues
2011-12-30 2:20 ` Cleber Rosa
2012-01-03 13:52 ` Anthony Liguori
2011-12-29 22:45 ` Lucas Meneghel Rodrigues
2011-12-29 16:26 ` Anthony Liguori [this message]
2011-12-29 16:46 ` Avi Kivity
2011-12-29 16:53 ` Anthony Liguori
2011-12-29 17:08 ` Avi Kivity
2011-12-29 17:14 ` Anthony Liguori
2011-12-29 17:22 ` Avi Kivity
2011-12-29 18:27 ` Anthony Liguori
2011-12-29 17:16 ` Anthony Liguori
2011-12-29 17:23 ` Avi Kivity
2011-12-28 14:49 ` Christoph Hellwig
2011-12-28 16:30 ` Anthony Liguori
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4EFC94A9.1040300@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=avi@redhat.com \
--cc=cleber@redhat.com \
--cc=crosa@redhat.com \
--cc=dlaor@redhat.com \
--cc=kraxel@redhat.com \
--cc=lmr@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@linux.vnet.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).