跳转到主要内容

RabbitMQ进程和客户端固定装置用于pytest

项目描述

https://raw.githubusercontent.com/ClearcodeHQ/pytest-rabbitmq/master/logo.png

pytest-rabbitmq

Latest PyPI version Wheel Status Supported Python Versions License

包状态

Tests Coverage Status

这是什么?

这是一个pytest插件,它使您能够测试依赖于正在运行的RabbitMQ队列的代码。它允许您为RabbitMQ进程和客户端指定附加的固定装置。

如何使用

插件包含两个测试用例

  • rabbitmq - 它是一个具有功能范围的客户端测试用例。每次测试后,它会清理 RabbitMQ,清理队列和交换机,以确保测试的可靠性。

  • rabbitmq_proc - 会话范围测试用例,在首次使用时启动 RabbitMQ 实例,并在测试结束时停止。

只需将这些测试用例之一添加到您的测试用例列表中。

如果需要,您还可以创建额外的 rabbitmq 客户端和进程测试用例。

from pytest_rabbitmq import factories

rabbitmq_my_proc = factories.rabbitmq_proc(
    port=None, logsdir='/tmp')
rabbitmq_my = factories.rabbitmq('rabbitmq_my_proc')

配置

您可以通过三种方式定义设置:测试用例工厂参数、命令行选项和 pytest.ini 配置选项。您可以选择您喜欢的选项,但请记住,这些设置按照以下顺序处理:

  • 测试用例工厂参数

  • 命令行选项

  • pytest.ini 文件中的配置选项

配置选项

RabbitMQ 选项

测试用例工厂参数

命令行选项

pytest.ini 选项

默认

主机

主机

–rabbitmq-host

rabbitmq_host

127.0.0.1

RABBITMQ_NODE_PORT

端口

–rabbitmq-port

rabbitmq_port

随机

RABBITMQ_DIST_PORT

distribution_port

–rabbitmq-distribution-port

rabbitmq_distribution_port

随机

rabbitmqctl 路径

ctl

–rabbitmq-ctl

rabbitmq_ctl

/usr/lib/rabbitmq/bin/rabbitmqctl

rabbitmq 服务器路径

server

–rabbitmq-server

rabbitmq_server

/usr/lib/rabbitmq/bin/rabbitmq-server

日志目录位置

logsdir

–rabbitmq-logsdir

rabbitmq_logsdir

$TMPDIR

插件目录位置

plugin_path

–rabbitmq-plugindir

rabbitmq_plugindir

$TMPDIR

节点名称

node

–rabbitmq-node

rabbitmq_node

rabbitmq-test-{port}

示例用法

  • 将其作为参数传递给您的测试用例

    rabbitmq_proc = factories.rabbitmq_proc(port=8888)
  • 在运行测试时使用 --rabbitmq-port 命令行选项

    py.test tests --rabbitmq-port=8888
  • 在您的 pytest.ini 文件中将端口指定为 rabbitmq_port

    为此,请在 pytest.ini 文件的 [pytest] 部分下添加如下行:

    [pytest]
    rabbitmq_port = 8888

包资源

项目详情


下载文件

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

源分发

pytest_rabbitmq-3.1.0.tar.gz (31.0 kB 查看哈希)

上传时间:

构建分发

pytest_rabbitmq-3.1.0-py3-none-any.whl (30.0 kB 查看哈希值)

上传时间 Python 3

由以下支持