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 |