我不熟悉python测试,所以请不要犹豫提供任何明显的信息。在
基本上我想用python做一些RESTful测试,发现httpretty和sure库看起来非常不错。在
我有一个python文件包含:
#!/usr/bin/python
from sure import expect
import requests, httpretty
@httpretty.activate
def RestTest():
httpretty.register_uri(httpretty.GET, "http://localhost:8090/test.json",
body='{"status": "ok"}',
content_type="application/json")
response = requests.get("http://localhost:8090/test.json")
expect(response.json()).to.equal({"status": "ok"}
它基本上与https://github.com/gabrielfalcao/HTTPretty上提供的示例代码相同
我的问题是:如何简单地运行这个测试,看看它是通过还是失败?我试着用./pythonFile
来执行它,但是没有用。在
你试过叫你的方法吗?
或者注释是否意味着您不必显式调用方法?
如果我给你的方法打电话,它似乎有效。如果我更改expect一侧的值,它会正确地抱怨值不匹配。
如果您的测试被实现为一个Python函数,那么当然,仅仅尝试执行该文件并不能运行测试:该文件中没有实际调用
RestTest
。您需要某种测试框架来调用测试并整理结果。
一个这样的解决方案是python-nose,它将查找名为
test_*
的方法并运行它们。因此,如果要将RestTest
重命名为test_rest
,可以运行:nosetests
命令有多种选项,用于控制运行哪些测试、如何处理和报告错误等等。Python3在
^{pr2}$unittest
模块中包含类似的功能,该模块也作为Python2的后端端口提供,称为unittest2
。您可以修改代码以利用unittest
,如下所示:运行您的文件现在将提供与我们看到的类似的输出
nosetests
:相关问题 更多 >
编程相关推荐