跳转到主要内容

Savida - 测试HTTP服务器配置

项目描述

Savida 测试Web服务器配置

Savida是一个面向测试的HTTP服务器包装器。它允许在自动化测试期间轻松启动Web服务器,定义其行为(即如何响应不同的请求)并在测试结束时轻松关闭它。

这在测试复杂的基于HTTP客户端的系统时非常有用 - 例如在Shoppimon中,它被用于测试我们的Web监控系统基础设施,该基础设施需要使用复杂的浏览器访问网站,并根据整个页面的行为或整个网站的通过返回不同的信息。

使用当前的模拟HTTP客户端库或简单的测试服务器实现无法测试此类系统,这就是为什么我们创建了Savida。

请注意,下面的示例虽然提到了py.test,但此模块与特定的测试框架或方法没有任何关联。

用法

在像py.test这样的测试框架中,用法通常如下所示

from savida.fixture import http_server

def test_my_browser_works():
    # Set up the server with a static document root directory
    with http_server(document_root='fixtures/webroot') as server:

        # Return 404 on /js/main.js even if it exists in our docroot
        server.when('/js/main.js').response(
            status=404, response='Gone to Lunch')

        # Wait 10 seconds before responding to /slow.php
        server.when('/slow.php').wait(10)

        server.start()

        response = requests.get(server.url + '/js/main.js')
        assert response.status_code == 404

在模块设置/销毁函数中的用法

TBD

API

TBD

待办事项

  • 添加文档
  • 清理API,用更简洁的方法替换wait方法
  • 添加基于HTTP方法的匹配支持

许可证

版权所有(c)2017 Shoppimon LTD

根据Apache许可证版本2.0(“许可证”);除非遵守许可证,否则您不得使用此文件。您可以在以下位置获得许可证副本:

https://apache.ac.cn/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则根据许可证分发的软件按“原样”提供,不提供任何明示或暗示的保证或条件。有关许可证的具体语言,请参阅许可证。

项目详情


下载文件

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

源代码分发

savida-0.2.2.tar.gz (4.6 kB 查看哈希值)

上传时间 源代码

构建分发

savida-0.2.2-py2.py3-none-any.whl (10.0 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下组织支持