blob: c5fa0d358e995bbc37445aedf9111f84a2d98328 [file] [log] [blame]
Sean Dague6dbc6da2013-05-08 17:49:46 -04001Tempest Guide to Scenario tests
2========
3
4
5What are these tests?
6--------
7
8Scenario tests are "through path" tests of OpenStack
9function. Complicated setups where one part might depend on completion
10of a previous part. They ideally involve the integration between
11multiple OpenStack services to exercise the touch points between them.
12
13An example would be: start with a blank environment, upload a glance
14image, deploy a vm from it, ssh to the guest, make changes, capture
15that vm's image back into glance as a snapshot, and launch a second vm
16from that snapshot.
17
18
19Why are these tests in tempest?
20--------
21This is one of tempests core purposes, testing the integration between
22projects.
23
24
25Scope of these tests
26--------
27Scenario tests should always test at least 2 services in
28interaction. They should use the official python client libraries for
29OpenStack, as they provide a more realistic approach in how people
30will interact with the services.
31
32TODO: once we have service tags, tests should be tagged with which
33services they exercise.
34
35
36Example of a good test
37--------
38While we are looking for interaction of 2 or more services, be
39specific in your interactions. A giant "this is my data center" smoke
40test is hard to debug when it goes wrong.
41
42A flow of interactions between glance and nova, like in the
43introduction, is a good example. Especially if it involves a repeated
44interaction when a resource is setup, modified, detached, and then
45reused later again.