On Thu, Oct 30, 2014 at 6:30 AM, Eoghan Glynn <egl...@redhat.com> wrote:
> > > > Hi everyone, > > > > Before we start the larger discussion at summit next week about the > future of > > testing in OpenStack - specifically about spinning up functional testing > and > > how > > it relates to tempest - I would like to share some of my thoughts on how > we > > can > > get things started and how I think they'll eventually come together. > > > > Currently in tempest we have a large number of tests (mostly api-focused) > > which are probably a better fit for a project's functional test suite. > The > > best > > example I can think of is the nova flavors tests. Validation of flavor > > manipulation doesn't need to run in the integrated test suite on every > commit > > to > > every project because it only requires Nova. A simple win for initiating > > in-tree > > functional testing would be to move these kinds of tests into the > projects > > and > > run the tests from the project repos instead of from tempest. > > > > This would have the advantage of making tempest slimmer for every project > > and begin the process of getting projects to take responsibility for > their > > functional testing rather than relying on tempest. As tests are moved > tempest > > can start to become the integration test suite it was meant to be. It > would > > retain only tests that involve multiple projects and stop being the > OpenStack > > black box testing suite. I think that this is the right direction for > tempest > > moving forward, especially as we move to having project-specific > functional > > testing. > > > > Doing this migration is dependent on some refactors in tempest and moving > > the required bits to tempest-lib so they can be easily consumed by the > > other projects. This will be discussed at summit, is being planned > > for implementation this cycle, and is similar to what is currently in > > progress > > for the cli tests. > > > > The only reason this testing existed in tempest in the first place was as > > mechanism to block and then add friction against breaking api changes. > > Tempest's > > api testing has been been pretty successful at achieving these goals. > We'll > > want > > to ensure that migrated tests retain these characteristics. If we are > using > > clients from tempest-lib we should get this automatically since to break > > the api you'd have to change the api client. Another option proposed was > to > > introduce a hacking rule that would block changes to api tests at the > same > > time > > other code was being changed. > > > > There is also a concern for external consumers of tempest if we move the > > tests > > out of the tempest tree (I'm thinking refstack). I think the solution is > > to maintain a load_tests discovery method inside of tempest or elsewhere > that > > will run the appropriate tests from the other repos for something like > > refstack. > > Assuming that things are built in a compatible way using the same > framework > > then > > running the tests from separate repos should be a simple matter of > pointing > > the > > test runner in the right direction. > > > > I also want to comment on the role of functional testing. What I've > proposed > > here is only one piece of what project specific functional testing > should be > > and just what I feel is a good/easy start. I don't feel that this should > be > > the only testing done in the projects. I'm suggesting this as a first > > step because the tests already exist and it should be a relatively simple > > task. > > I also feel that using tempest-lib like this shouldn't be a hard > requirement. > > Ideally the client definitions shouldn't have to live externally, or if > they > > did > > they would be the official clients, but I am suggesting this as a first > step > > to > > start a migration out of tempest. > > > > I don't want anyone to feel that they need block their functional testing > > efforts until tempest-lib becomes more useable. The larger value from > > functional > > testing is actually in enabling testing more tightly coupled to the > projects > > (e.g. whitebox testing). I feel that any work necessary to enable > functional > > testing should be prioritized. > > Thanks Matt for getting the ball rolling on this conversation in advance > of summit. > > Probably stating the obvious here, but I feel we should make a concious > effort to keep the approaches to in-tree functional testing as consistent > as possible across projects. > > Towards that end, it would be good for folks with an interest in this area > to attend each other's sessions where possible: > > +1 > Cross-project: Tue, 12:05 [1] > Heat: Wed, 13:50 [2] > Nova: Wed, 16:30 [3] > Ceilometer: Wed, 17:20 [4] > QA: Wed, 17:20 [5] I think Keystone was planning on dedicating some time to this on Friday, so our dev/hackathon day. I'm interested in the process that will be in place for tracking status of the "functional test migration" if there will be one. > Unfortunately there's a clash there between the QA tempest-lib session > and the ceilo session. I'm not sure how reasonable it would be to make > a last-minute schedule change to avoid that clash. > > Cheers, > Eoghan > > [1] > http://kilodesignsummit.sched.org/event/575938e4837e8293615845582d7e3e7f > [2] > http://kilodesignsummit.sched.org/event/eb261fb08b18ec1eaa2c67492e7fc385 > [3] > http://kilodesignsummit.sched.org/event/271a9075c1ced6c1269100ff4b8efc37 > [4] > http://kilodesignsummit.sched.org/event/daf63526a1883e84cec107c70cc6cad3 > [5] > http://kilodesignsummit.sched.org/event/a45e9af23c2c3fc17c12cc22e8bb3704 > > > _______________________________________________ > OpenStack-dev mailing list > OpenStack-dev@lists.openstack.org > http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev >
_______________________________________________ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev