用于测试的假服务器

pretenders的Python项目详细描述


伪装者简介

^ {tt1}项目为外部网络创建灵活假货 服务。这些外部服务可以通过设置预先设置好的答案来伪造, 定义期望值,或者只在[测试]之后对接收到的数据进行查询 执行。

它们是按照记录/回放/验证的模式松散地设计的。

python兼容性

假装者的服务器端是用python3编写的:

  • 因为我们坚信所有新项目都应该使用python3,除非 有很多令人信服的理由反对它。
  • 因为这些服务器将作为独立服务器运行,所以兼容性 不是这样的问题

在我们实现客户机的情况下,我们将在 python 3.x和python 2.6/2.7。

提供模拟服务器

假装程序目前支持模拟http和smtp服务器。

我们正在考虑支持的未来服务包括amqp和ssh。

这些代表了我们的软件 写作与互动。

一些用例示例包括:

  • 模块集成中的线级模拟外部基于http的api 测试
  • 促进前端ajax代码的手动测试和调试 后端尚未开发
  • 为任何发送电子邮件的系统编写全自动测试,以及 我们希望在其中轻松验证传出的邮件

假装者提供了一个统一的restful api来验证 我们的代码与外部服务无关,与服务协议无关。

假装者.client.http-http服务器

典型的用法是模拟外部服务的restful/soap api。

这通常需要使用响应对服务进行预编程, 稍后再询问服务部收到的请求。这是可以做到的 通过专业的断言/匹配者,或通过设定期望和 验证这些期望的实现。

预编程步骤可以通过使用特定的专有http来完成 头,或者使用用于模拟的另一个http端口。

例如用法请参见documentation

实现基于bottleweb微框架。

我们的目标之一是有线协议足够简单 不需要任何专业客户。也就是说,我们将提供客户 库(python中至少有一个库)以简化与服务器的交互, 并提供一个舒适的api用于测试。

Docker

你可以从官方的docker图片中运行伪装程序:

docker run -d --name pretenders -p <desired_port>:8000 pretenders/pretenders:1.4

获得帮助

关于伪装者的使用、发展和未来的讨论,请 加入pretenders邮件列表。

文件

项目的完整文档可在此处找到:

http://pretenders.readthedocs.org/

贡献

假装者欢迎任何形式的贡献-无论是拉请求,添加 通过github发布或反馈,或在pretenders上发送消息 邮件列表,所以不要害羞!

我们有以下分支约定:

  • master: This should look exactly like the latest release.
  • develop: This is where ongoing work lands, only being merged into master at release point.

为了做出贡献,在github中分叉回购,并从development分支 分支。在主回购协议中创建您的减贫战略。

运行测试

build.sh运行全套测试,并生成sphinx文档 检查PEP8错误。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
尝试运行JFLAP。戴软呢帽的罐子23。Java正在抛出异常   无引用的java数组布尔复制   hibernate如何在java SE应用程序中使用JPA EntityManager   java如何使用ORMLite在SQLite中持久化JavaFX属性?   java无法将项目部署到GAE   java:谷歌地图维基百科层   java Resultset(getter/setter类)对象在第二次执行时未删除旧值   s中的java struts2:选择列表>请求的列表键“”作为集合/数组/映射/枚举/迭代器类型   java如何在Karaf 4.0.5中获得BaseDao中的entityManager?   java VSCode未从控制台读取西里尔文   java字体。createFromAsset()返回字体的空指针异常   java错误:将Android Studio从0.6.1更新到0.8.9后,没有合适的构造函数