跳转到主要内容

whitebox测试的Tempest插件。用于测试通过REST API未公开的内容。

项目描述

这是一个用于whitebox测试的Tempest插件。虽然Tempest的范围仅限于REST API,但whitebox允许测试窥视幕后,类似于云管理员可能做的那样。检查计算主机和/或控制器的行为不仅允许,而且在whitebox的范围内是必需的。Whitebox测试仍然需要由REST API驱动,但它们的断言可以涉及实例XML(如果使用Nova libvirt驱动程序)或数据库。

需求

虽然Tempest是无云的,因为所有云都公开了相同的OpenStack API(有一些关于扩展的例外),但whitebox窥视幕后,因此与云的部署方式相关联。目前,支持devstack和TripleO(带有undercloud和overcloud),仅测试devstack。

某些测试具有特定的硬件要求。这些应该作为配置选项进行记录,如果配置中没有声明硬件要求,则预期测试将跳过。

安装、配置和运行

  1. 需要安装和配置Tempest。

  2. 安装插件。

    应该从源码进行此操作。

    .. code-block:: shell

    WORKSPACE=/some/directory cd $WORKSPACE git clone https://opendev.org/openstack/whitebox-tempest-plugin sudo pip install whitebox-tempest-plugin

  3. 配置Tempest。

    确切的配置将取决于部署。目前还没有配置参考,请查阅whitebox_tempest_plugin/config.py。以下是一个多节点TripleO部署的示例配置

    .. code-block:: ini

    [[白盒]] ctlplane_addresses = compute-0.localdomain:192.168.24.6,compute-1.localdomain:192.168.24.12 ctlplane_ssh_username = heat-admin ctlplane_ssh_private_key_path = /home/stack/.ssh/id_rsa containers = true max_compute_nodes = 2 # 一些测试依赖于只有一个(可用)计算节点

  4. 执行测试。

    tempest run --serial --regex whitebox_tempest_plugin.

如何添加新的测试

测试应符合白盒的范围。如果一个测试仅与 REST API 交互,则更适合 Tempest 本身。新的测试应添加到相应的子目录中。例如,使用计算 API 的测试位于 whitebox_tempest_plugin/api/compute。测试代码不需要单元测试,但需要辅助工具或实用程序。单元测试位于 whitebox_tempest_plugin/tests。白盒不遵循 Tempest 插件接口 <https://docs.openstack.org/tempest/latest/plugin.html>。正如所述,白盒测试一次只运行一个,因此测试可以修改环境且/或具有破坏性,只要它清理自己的痕迹。例如,更改 Nova 配置值和/或重新启动服务是可以接受的,只要恢复原始值和服务状态。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解有关 安装软件包 的更多信息。

源分发

whitebox-tempest-plugin-0.0.3.tar.gz (80.2 kB 查看哈希值)

上传时间

构建分发

whitebox_tempest_plugin-0.0.3-py3-none-any.whl (97.6 kB 查看哈希值)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面