Manila 项目场景测试用例
蓝图: https://blueprints.launchpad.net/manila/+spec/scenario-tests
词典
| 定义 |
含义 |
| UVM |
用户虚拟机。用作挂载共享的客户端机器。 |
| SSH |
安全 Shell。用于连接到 UVM。 |
先决条件
- 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.
场景列表
| 编号 |
姓名 |
描述 |
| 1 |
共享访问和文件操作 |
此测试验证使用共享的基本文件操作。 |
| 2 |
单个/组访问操作 |
此测试验证基本的单个或组访问操作。 |
| 3 |
源共享和子共享之间的关系 |
此测试验证子共享不继承父共享的访问规则,并且通常是不同的。 |
| 4 |
多个 UVM 的共享访问 |
此测试验证使用多个 UVM(驱动程序特定,共享网络)的基本共享访问控制。 |
1. 共享访问和文件操作
| 编号 |
操作 |
结果 |
| 1 |
创建 UVM |
成功,已创建 |
| 2 |
创建共享 S |
成功,已创建 |
| 3 |
SSH 到 UVM |
成功,已连接 |
| 4 |
尝试将 S 挂载到 UVM |
失败,访问被拒绝 |
| 5 |
提供只读访问权限 |
成功 |
| 6 |
尝试将 S 挂载到 UVM |
成功,已挂载 |
| 7 |
尝试在 S 上创建文件 |
失败,访问被拒绝
|
| 8 |
从 UVM 卸载 S |
成功
|
| 9 |
移除只读访问权限 |
成功,已移除
|
| 10 |
尝试将 S 挂载到 UVM |
失败,访问被拒绝
|
| 11 |
提供读写访问权限 |
成功,已提供 |
| 12 |
尝试将 S 挂载到 UVM |
成功,已挂载 |
| 13 |
尝试将文件写入 S |
成功,已写入 |
| 14 |
尝试从 S 读取文件 |
成功,已读取 |
| 15 |
尝试在 S 上删除文件 |
成功,已删除 |
| 16 |
从 UVM 卸载 S |
成功,已卸载 |
| 17 |
删除 S |
成功,已删除 |
| 18 |
尝试挂载 S |
失败,未找到 |
| 19 |
删除 UVM |
成功,已删除 |
2. 单个/组访问操作
| 编号 |
操作 |
结果 |
| 1 |
使用 network1 创建用户 UVM1 |
成功,已创建 |
| 2 |
使用 network2 创建用户 UVM2 |
成功,已创建 |
| 3 |
创建共享 S |
成功,已创建 |
| 4 |
添加 network1 的访问权限 |
成功,已添加 |
| 5 |
SSH 到 UVM1 |
成功,已连接 |
| 6 |
尝试从 UVM1 挂载 S |
成功,已挂载 |
| 7 |
SSH 到 UVM2 |
成功,已连接 |
| 8 |
尝试从 UVM2 挂载 S |
失败,访问被拒绝 |
| 9 |
添加 network2 的访问权限 |
成功,已添加 |
| 10 |
尝试从 UVM2 挂载 S |
成功,已挂载(两个虚拟机同时挂载了它) |
| 11 |
在 UVM1 上卸载 S |
成功,已卸载 |
| 12 |
在 UVM2 上卸载 S |
成功,已卸载 |
| 13 |
删除 UVM1 |
成功,已删除 |
| 14 |
删除 UVM2 |
成功,已删除 |
| 15 |
删除 S |
成功,已删除 |
3. 源共享和子共享之间的关系
| 编号 |
操作 |
结果 |
| 1 |
创建 UVM |
成功,已创建 |
| 2 |
创建共享 S1 |
成功,已创建 |
| 3 |
提供 S1 的读写访问权限 |
成功,已提供 |
| 4 |
SSH 到 UVM |
成功,已连接 |
| 5 |
尝试将 S1 挂载到 UVM |
成功,已挂载 |
| 6 |
创建“file1” |
成功,已创建 |
| 7 |
从 S 创建快照,名为 SS1 |
成功,已创建 |
| 8 |
从 SS1 创建共享,名为 S2 |
成功,已创建 |
| 9 |
尝试挂载 S2 |
失败,访问被拒绝(这里我们测试子共享没有从父共享获取访问规则) |
| 10 |
提供 S2 的读写访问权限 |
成功,已提供 |
| 11 |
尝试挂载 S2 |
成功,已挂载 |
| 12 |
列出 S2 上的文件 |
只有一个文件存在 - “file1” |
| 13 |
在 S2 中创建 file2 |
成功,文件已创建 |
| 14 |
列出 S1 上的文件 |
只有一个文件存在 - “file1” |
| 15 |
列出 S2 上的文件 |
存在两个文件 - “file1” 和 “file2” |
| 16 |
卸载 S1 和 S2 |
成功,已卸载 |
| 17 |
删除 S2 |
成功,已删除 |
| 18 |
删除 SS1 |
成功,已删除 |
| 19 |
删除 S1 |
成功,已删除 |
| 20 |
删除 UVM |
成功,已删除 |
4. 多个 UVM 的共享访问
| 编号 |
操作 |
结果 |
| 1 |
创建 UVM1 |
成功,已创建 |
| 2 |
创建 UVM2 |
成功,已创建 |
| 3 |
为 icmp,ssh 创建安全组 |
成功,已创建 |
| 3 |
创建共享网络 |
成功,已创建 |
| 4 |
创建共享 S |
成功,已创建 |
| 5 |
SSH 到 UVM1 |
成功,已连接 |
| 6 |
尝试将 S 挂载到 UVM1 |
失败,访问被拒绝 |
| 7 |
为 UVM1 提供读写访问权限 |
成功,已提供 |
| 8 |
SSH 到 UVM1 |
成功,已连接 |
| 9 |
尝试将 S 挂载到 UVM1 |
成功,已挂载 |
| 10 |
尝试从 UVM1 卸载 S |
成功,已卸载 |
| 11 |
SSH 到 UVM2 |
成功,已连接 |
| 12 |
尝试将 S 挂载到 UVM2 |
失败,访问被拒绝 |
| 13 |
尝试从 UVM2 卸载 S |
失败,未找到 |
| 14 |
为 UVM2 提供读写访问权限 |
成功,已提供 |
| 15 |
SSH 到 UVM1 |
成功,已连接 |
| 16 |
尝试将 S 挂载到 UVM1 |
成功,已挂载 |
| 17 |
尝试从 UVM1 卸载 S |
成功,已卸载 |
| 18 |
SSH 到 UVM2 |
成功,已连接 |
| 19 |
尝试将 S 挂载到 UVM2 |
成功,已挂载 |
| 20 |
尝试从 UVM2 卸载 S |
成功,已卸载 |
| 21 |
从 UVM1 移除读写访问权限 |
成功,已移除 |
| 22 |
SSH 到 UVM1 |
成功,已连接 |
| 23 |
尝试将 S 挂载到 UVM1 |
失败,访问被拒绝 |
| 24 |
尝试从 UVM1 卸载 S |
失败,未找到 |
| 25 |
SSH 到 UVM2 |
成功,已连接 |
| 26 |
尝试将 S 挂载到 UVM2 |
成功,已挂载 |
| 27 |
尝试从 UVM2 卸载 S |
成功,已卸载 |
| 28 |
从 UVM2 移除读写访问权限 |
成功,已移除 |
| 29 |
SSH 到 UVM1 |
成功,已连接 |
| 30 |
尝试将 S 挂载到 UVM1 |
失败,访问被拒绝 |
| 31 |
尝试从 UVM1 卸载 S |
失败,未找到 |
| 32 |
SSH 到 UVM2 |
成功,已连接 |
| 33 |
尝试将 S 挂载到 UVM2 |
失败,访问被拒绝 |
| 34 |
尝试从 UVM2 卸载 S |
失败,未找到 |
| 35 |
删除共享 S |
成功,已删除 |
| 36 |
删除共享服务器 |
成功,已删除 |
| 37 |
删除共享网络 |
成功,已删除 |
| 38 |
删除 UVM1 |
成功,已删除 |
| 39 |
删除 UVM2 |
成功,已删除 |
| 40 |
删除为 icmp,ssh 的安全组 |
成功,已删除 |