[openstack-dev] [nova] Do we have some guidelines for mock, stub, mox when writing unit test?

Shawn Hartsock hartsocks at vmware.com
Tue Nov 12 21:11:56 UTC 2013


Maybe we should have some 60% rule... that is: If you change more than half of a test... you should *probably* rewrite the test in Mock.

# Shawn Hartsock


----- Original Message -----
> From: "John Garbutt" <john at johngarbutt.com>
> To: "Mark McLoughlin" <markmc at redhat.com>, "OpenStack Development Mailing List (not for usage questions)"
> <openstack-dev at lists.openstack.org>
> Sent: Tuesday, November 12, 2013 9:31:25 AM
> Subject: Re: [openstack-dev] [nova] Do we have some guidelines for mock, stub, mox when writing unit test?
> 
> On 11 November 2013 23:18, Mark McLoughlin <markmc at redhat.com> wrote:
> > On Mon, 2013-11-11 at 12:07 +0000, John Garbutt wrote:
> >> On 11 November 2013 10:27, Rosa, Andrea (HP Cloud Services)
> >> <andrea.rosa at hp.com> wrote:
> >> > Hi
> >> >
> >> >>Generally mock is supposed to be used over mox now for python 3 support.
> >> >
> >> > That is my understanding too
> >>
> >> +1
> >>
> >> But I don't think we should waste all our time re-writing all our mox
> >> and stub tests. Lets just leave this to happen organically for now as
> >> we add and refactor tests. We probably need to take the hit at some
> >> point, but that doesn't feel like we should do that right now.
> >
> > Hmm, I don't follow this stance.
> >
> > Adding Python3 support is a goal we all share.
> >
> > If we're saying that the use of mox stands in the way of that goal, but
> > that we'd really prefer if people didn't work on porting tests from mox
> > to mock yet ... then are we saying we don't value people working on
> > porting to Python3?
> >
> > And if we plan to use a Python3 compatible version of mox[1], then isn't
> > the Python3 argument irrelevant and saying "use mock for new tests" just
> > means we'll end up with a mixture of mox and mock?
> 
> Good point, I forgot about the port of mox to python3.
> 
> I liked the idea of "prefer mock", with a view that at some point in
> the future there is only a small amount of mox related code left, that
> can easily get moved to mock.
> 
> I guess its a trade off between review capacity, risk of breaking
> existing tests, and risk of never reaching that end goal.
> 
> We already have stubs and mox, which do tend to fight each other,
> adding a third does seem like a bad plan, unless there is a very good
> reason, which I always had in my head as python3 support. Hmm... I do
> prefer mock to mox, but not that strongly.
> 
> John
> 
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
> 



More information about the OpenStack-dev mailing list