From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:56910) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rfwbs-0006h9-CB for qemu-devel@nongnu.org; Wed, 28 Dec 2011 11:44:13 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Rfwbr-0005sg-9n for qemu-devel@nongnu.org; Wed, 28 Dec 2011 11:44:12 -0500 Received: from mail-yw0-f45.google.com ([209.85.213.45]:52172) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Rfwbr-0005sa-7E for qemu-devel@nongnu.org; Wed, 28 Dec 2011 11:44:11 -0500 Received: by yhgg71 with SMTP id g71so9250813yhg.4 for ; Wed, 28 Dec 2011 08:44:10 -0800 (PST) Message-ID: <4EFB4757.4020504@codemonkey.ws> Date: Wed, 28 Dec 2011 10:44:07 -0600 From: Anthony Liguori MIME-Version: 1.0 References: <4EEF70B4.3070109@us.ibm.com> <4EF73EF5.8050606@redhat.com> <4EF88EC0.8020301@codemonkey.ws> <4EF8FC88.70809@redhat.com> <4EFA4829.4000207@redhat.com> <4EFA80EA.3050405@codemonkey.ws> <4EFAA2A2.4000107@redhat.com> <4EFB2764.7040006@codemonkey.ws> <4EFB2F36.2090408@redhat.com> <4EFB35AB.6040003@redhat.com> In-Reply-To: <4EFB35AB.6040003@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [ANNOUNCE] qemu-test: a set of tests scripts for QEMU List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Avi Kivity Cc: "lmr@redhat.com" , Stefan Hajnoczi , cleber@redhat.com, dlaor@redhat.com, qemu-devel , Gerd Hoffmann , Cleber Rosa On 12/28/2011 09:28 AM, Avi Kivity wrote: > On 12/28/2011 05:01 PM, Avi Kivity wrote: >> I'd say that running a ping test is a weak version of kvm-autotest's >> system tests. Running a synthetic test that pokes values into memory >> and mmio and sees a packet coming out is a unit test (the latter can in >> fact be executed without a guest at all, just a table driving calls to >> the memory and irq APIs). >> > > Consider > 98d23704138e0 > 7b4252e83f6f7d > f7e80adf3cc4 > c16ada980f43 > 4abf12f4ea8 > > (found by looking for 'fix' in the commit log and filtering out the > commits that don't support my case) > > how can you reject such patches on the grounds that they're not > accompanied by unit tests? That's why I've also proposed qtest. But having written quite a few qtest unit tests by now, you hit the limits of this type of testing pretty quickly. > only by making it easy to add tests for > them. I think it would be hard/impossible to test them with > linux-as-a-guest, since they fix edge cases that linux doesn't invoke. > But by having our own driver (often just using qmp to poke at memory), > we can easily generate the sequence that triggers the error. > > We'd probably need a library to support setting up a pci device's BARs, > but that's easy with qmp/python integration. You can even poke a small > executable into memory and execute it directly, if you really need guest > cpu interaction. Please review the qtest series. I think it offers a pretty good approach to writing this style of test. But as I mentioned, you hit the limits pretty quickly. Regards, Anthony Liguori >