Python RESTful API 的单元测试

Unit Testing for a Python RESTful API

在 Python 中对包含电子邮件功能(丢失密码、用户激活)的 RESTful API 执行单元测试的最佳方法是什么?

一切都通过 HTTP POST / GET 完成,此时不涉及身份验证。

我是否应该只使用 requests 库并手动完成我想做的一切?是否可以使用 requests 来自动化涉及电子邮件的单元测试部分?

您用来实现 REST api 的 Web 框架通常也会提供单元测试支持。例如:

这些测试 classes 是将请求直接插入框架的 Url 调度程序的快捷方式。这为您节省了寻找空闲端口、生成 "real" 服务器并从单元测试连接 http 客户端的麻烦。

至于电子邮件发送:我会在 TestCase.setUp 方法中模拟这部分。只需将对电子邮件发送模块 / class 的引用更改为另一个 module/class,它将外发电子邮件循环回单元测试以进行评估而不是发送电子邮件。