跳转到主要内容

自动在临时目录中设置elasticsearch实例,并在测试后销毁它

项目描述

关于

testing.elasticsearch 自动在临时目录中设置elasticsearch实例,并在测试后销毁。

https://travis-ci.org/tk0miya/testing.elasticsearch.svg?branch=master https://coveralls.io/repos/tk0miya/testing.elasticsearch/badge.png?branch=master https://codeclimate.com/github/tk0miya/testing.elasticsearch/badges/gpa.svg

安装

使用pip

$ pip install testing.elasticsearch2

并且 testing.elasticsearch2 需要在您的PATH中设置Elasticsearch服务器。

用法

使用 testing.elasticsearch.Elasticsearch 创建Elasticsearch实例

import testing.elasticsearch
from sqlalchemy import create_engine

# Lanuch new Elasticsearch server
with testing.elasticsearch.Elasticsearch() as elasticsearch:
    # connect to Elasticsearch (using elasticsearch-py)
    es = Elasticsearch(**elasticsearch.dsn())

    #
    # do any tests using Elasticsearch...
    #

# Elasticsearch server is terminated here

testing.elasticsearch.Elasticsearch 生成临时配置文件和数据目录。在删除Elasticsearch对象时,它将终止Elasticsearch实例并删除临时文件和目录。

如果您需要一个包含索引和应用程序任何固定数据的数据库,请使用 copy_data_from 关键字

# uses a copy of specified data directory of Elasticsearch.
elasticsearch = testing.elasticsearch.Elasticsearch(copy_data_from='/path/to/your/index')

例如,您可以在 setUp() 方法上为每个测试用例设置新的Elasticsearch服务器

import unittest
import testing.elasticsearch

class MyTestCase(unittest.TestCase):
    def setUp(self):
        self.elasticsearch = testing.elasticsearch.Elasticsearch()

    def tearDown(self):
        self.elasticsearch.stop()

需求

  • Python 2.7, 3.3, 3.4, 3.5

许可证

Apache许可证2.0

历史

1.0.0 (2016-08-20)

  • 删除python 2.6, 3.2支持

  • 依赖testing.common.database >= 2.0.0

  • 将启动超时设置为20秒

  • 修复错误

    • #1: find_elasticsearch_yaml_path() 不引用 elasticsearch_home 参数

    • #2: 使 ES_PATH 绝对化

0.9.1 (2016-02-04)

  • 依赖 testing.common.database

0.9.0 (2015-12-13)

  • 首次发布

项目详细信息


下载文件

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

源代码分发

testing.elasticsearch2-1.0.0.tar.gz (9.9 kB 查看哈希值)

上传时间 源代码

构建分发

testing.elasticsearch2-1.0.0-py2.py3-none-any.whl (7.3 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下机构支持