我有一个内置 API 风格的 Django 应用程序,我需要对它进行基准测试。我想使用 django unitetesting 库来构建 becnhmarks 作为 API 端点的测试。他们将使用 Django-test-client 查询端点并收集有关 SQL 查询及其时间的数据,并将其保存在某个地方。
这是一个理智的想法吗?我还想查看带有堆栈跟踪的 Python 代码的计时,并查看哪些代码导致了哪些 SQL 查询。有人可以知道在不修改应用程序代码的情况下收集此类信息的方法吗?
我有一个内置 API 风格的 Django 应用程序,我需要对它进行基准测试。我想使用 django unitetesting 库来构建 becnhmarks 作为 API 端点的测试。他们将使用 Django-test-client 查询端点并收集有关 SQL 查询及其时间的数据,并将其保存在某个地方。
这是一个理智的想法吗?我还想查看带有堆栈跟踪的 Python 代码的计时,并查看哪些代码导致了哪些 SQL 查询。有人可以知道在不修改应用程序代码的情况下收集此类信息的方法吗?
只是一个选项,我以前使用过:nose,它是--with-xunit插件:
此插件以标准 XUnit XML 格式提供测试结果。
在测试结果中,您将看到每个测试用例的运行时间、失败的堆栈跟踪等。
此外,django-debug-toolbar和django 数据库日志记录可能会帮助您获取有关 SQL 查询的数据。
这里还有其他建议:
希望有帮助。