MongoDB进程和客户端固定插件,用于Pytest。
项目描述
pytest-mongo
这是什么?
这是一个pytest插件,它允许您测试依赖于运行中的MongoDB数据库的代码。它允许您指定MongoDB进程和客户端的固定值。
如何使用
插件包含两个固定值
- mongodb - 它是一个具有功能范围的客户端固定装置,并在每个测试结束时清理MongoDB。 
- mongo_proc - 会话范围固定装置,首次使用时启动MongoDB实例,并在测试结束时停止。 
- mongo_noproc - 一个无进程固定装置,连接到已运行的mongodb实例。例如,在docker化测试环境中或提供mongodb服务的CI中。 
只需将其中之一包含到您的测试固定装置列表中。
如果需要,您也可以创建额外的MongoDB客户端和进程固定装置。
from pytest_mongo import factories
mongo_my_proc = factories.mongo_proc(
    port=None, logsdir='/tmp')
mongo_my = factories.mongodb('mongo_my_proc')连接到已存在的mongodb数据库
一些项目正在使用已运行的MongoDB服务器(例如,在docker实例上)。为了连接到它们,将使用 mongo_noproc 固定装置。
mongo_external = factories.mongodb('mongo_noproc')默认情况下,mongo_noproc 固定装置将使用 27017 端口连接到MongoDB实例。标准配置选项适用于它。
以下是与 mongo_noproc 固定装置一起工作的配置选项
配置
您可以通过三种方式定义您的设置,即固定装置工厂参数、命令行选项和pytest.ini配置选项。您可以选择您喜欢的,但请记住,这些设置按以下顺序处理
固定装置工厂参数
命令行选项
pytest.ini文件中的配置选项
| MongoDB服务器选项 | 固定装置工厂参数 | 命令行选项 | pytest.ini选项 | 无操作进程固定装置 | 默认 | 
|---|---|---|---|---|---|
| MongoDB执行路径 | 可执行文件 | –mongo-exec | mongo_exec | no | /usr/bin/mongod | 
| MongoDB主机 | 主机 | –mongo-host | mongo_host | 127.0.0.1 | 127.0.0.1 | 
| MongoDB端口 | 端口 | –mongo-port | 端口 | 27017 | random | 
| 存储日志的路径 | logsdir | –mongo-logsdir | mongo_logsdir | no | $TMPDIR | 
| 附加参数 | params | –mongo-params | mongo_params | no | |
| MongoDB客户端的时间区域意识 | tz_aware | –mongo-tz-aware | mongo_tz_aware | no | False | 
示例用法
- 将其作为参数传递到您的固定装置中 - mongo_proc = factories.mongo_proc(port=8888)
- 在运行测试时使用 --mongo-port 命令行选项 - py.test tests --mongo-port=8888
- 在您的pytest.ini文件中将您的目录指定为 mongo_port - 为此,在您的pytest.ini文件中的[pytest]部分下添加以下行 - [pytest] mongo_port =- 8888
包资源
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源分布
构建分发版
pytest-mongo-3.1.0.tar.gz 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | a4e3218ab3d4902acb536f04f7c60ff2a33da3bde3b7d6fe8d5f976c75a3ded9 | |
| MD5 | 3467cecf39d2865d4ad9d793a3efb39b | |
| BLAKE2b-256 | c92b5475d39f34a976fed5b8468e5194b584d9177522e8ec1759f0ca5f639f54 | 
pytest_mongo-3.1.0-py3-none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 3648cde5c81d86fefe16f408a3d18ea729f78d0826dc48311b7077bf8b9a88f0 | |
| MD5 | 6dc509349f72bb0f9fb274330af708af | |
| BLAKE2b-256 | 33df04aba78171d32a3175d3985cf7107506e715a745f868d869fe545adc655b |