cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Prasanna Santhanam <...@apache.org>
Subject Re: [MERGE] marvin-refactor to master
Date Thu, 03 Oct 2013 05:08:37 GMT
Copying folks that this change will affect for review.

On Wed, Oct 02, 2013 at 10:12:40PM +0530, Prasanna Santhanam wrote:
> Once upon a time [1] I had propagated the idea of refactoring marvin to
> make test case writing simpler. At the time, there weren't enough
> people writing tests using marvin however. Now as focus on testing has
> become much more important for the stability of our releases I would
> like to bring back the discussion and to review the refactoring of
> marvin which I've been doing in the marvin_refactor branch.
> 
> The key goal of this refactor was to simplify test case writing. In
> doing so I've transformed the library from its brittle hand-written
> nature to a completely auto-generated set of libraries. In that sense,
> marvin is much closer to cloudmonkey now.
> 
> The two important changes in this refactor are:
> 
> 1. data represented in an object-oriented fashion presented as factories
> 2. test case writing using entities and their operations rather than
> a sequence of disconnected API calls.
> 
> To see the full nature of this proposal I've updated the spec I put up
> on the wiki:
> https://cwiki.apache.org/confluence/x/RI3lAQ
> 
> For a quick comparison I wrote a test for the VPC vm's lifecycle in
> tools/marvin/marvin/test/test_vpc_life_cycle.py which one can compare
> with the existing tests for vpc under
> test/integration/component/test_vpc_vm_life_cycle.py
> 
> These changes being 'architectural' so to speak and in a way
> disruptive even I would like to merge this at the beginning of the
> upcoming cloudstack release.
> 
> This is only a small part of a larger change for marvin which will be
> moving to a more BDD like implementation [2] where tests are written
> using a gherkin-like language. But that will come later.
> 
> I've also tried to disconnect marvin from depending on CloudStack's
> build and repo. This will help split marvin from CloudStack which I
> will discuss in a seperate thread.
> 
> [1] http://markmail.org/message/4tsscn6zvtfsskuj
> [2] http://pythonhosted.org/behave/
> 
> -- 
> Prasanna.,
> 
> ------------------------
> Powered by BigRock.com

-- 
Prasanna.,

------------------------
Powered by BigRock.com


Mime
View raw message