Jump to: navigation, search

Manila/specs/scenario-tests

< Manila
Revision as of 12:11, 23 February 2015 by Vponomaryov (talk | contribs) (3. Relations between source shares and child shares)

Scenario test cases for Manila project

Blueprint: https://blueprints.launchpad.net/manila/+spec/scenario-tests

Dictionary

Definition Meaning
UVM User VM. It is used as client machine for mounting shares.
SSH Secure SHell. It is used for connection to UVMs.

Prerequisites

- Depending on share driver mode, it can be required to create share-network w/o security-services.
- Depending on protocol, its versions and access type, “mount” operations should be defined explicitly, scenario tests assume it as predefined and known. Hence, scenarios do not include difference between access type (IP, User, Cert). Due to this scenario tests should be data driven by “access_type”, “access_proto”,  “access_level” and “mount command with all expected options”.
- Italic texts depend on specific implementations and can be unsupported by share backends.
- All user VMs should be separate VMs from host of shares. They should have network connectivity with share host. User VMs should be built with image that has shared file systems clients.
- Share host should have open ports for SSH protocol and protocols of shared file systems.

List of scenarious

Name Description
1 Share access and file operations
2 Single/Group access operations
3 Relations between source shares and child shares

1. Share access and file operations

Action Result
1 Create UVM ok, created
2 Create share S ok, created
3 SSH to UVM ok, connected
4 Try mount S to UVM fail, access denied
5 Provide RO access ok
6 Try mount S to UVM ok, mounted
7 Try create files on S fail, access denied
8 Unmount S from UVM ok
9 Remove RO access ok, removed
10 Try mount S to UVM fail, access denied
11 Provide RW access ok, provided
12 Try mount S to UVM ok, mounted
13 Try write files to S ok, written
14 Try read files from S ok, read
15 Try delete files on S ok, deleted
16 Unmount S from UVM ok, unmounted
17 Delete S ok, deleted
18 Try mount S fail, not found
19 Delete UVM ok, deleted

2. Single/Group access operations

Action Result
1 Create user UVM1 using network1 ok, created
2 Create user UVM2 using network2 ok, created
3 Create share S ok, created
4 Add access to network1 ok, added
5 SSH to UVM1 ok, connected
6 Try mount S from UVM1 ok, mounted
7 SSH to UVM2 ok, connected
8 Try mount S from UVM2 fail, access denied
9 Add access to network2 ok, added
10 Try mount S from UVM2 ok, mounted (Two VMs have it mounted at once)
11 Unmount S on UVM1 ok, unmounted
12 Unmount S on UVM2 ok, unmounted
13 Delete UVM1 ok, deleted
14 Delete UVM2 ok, deleted
15 Delete S ok, deleted

3. Relations between source shares and child shares

Action Result
1 Create UVM ok, created
2 Create share S1 ok, created
3 Provide RW access to S1 ok, provided
4 SSH to UVM ok, connected
5 Try mount S1 to UVM ok, mounted
6 Create “file1” ok, created
7 Create snapshot from S, called SS1 ok, created
8 Create share from SS1, called S2 ok, created
9 Try mount S2 fail, access denied (Here we test that child share did not get access rules form parent share)
10 Provide RW access to S2 ok, provided
11 Try mount S2 ok, mounted
12 List files on S2 only one file exist - “file1”
13 Create file2 in S2 ok, file created
14 List files on S1 only one file exist - “file1”
15 List files on S2 two files exist - “file1” and “file2”
16 Unmount S1 and S2 ok, unmounted
17 Delete S2 ok, deleted
18 Delete S1 ok, deleted
19 Delete S1 ok, deleted
20 Delete UVM ok, deleted