Django 测试 运行 在没有互联网连接的情况下更快
Django Tests run faster with no internet connection
我有一个 django 测试套件,它从一个 400 行的夹具文件构建一个数据库。不幸的是,它运行缓慢。每次测试几秒钟。
昨天我在火车上进行开发,没有互联网访问,wifi 关闭,我注意到我的测试 运行 在没有互联网的情况下确实快了 10 倍。而且他们绝对 运行 正确。
一切都是本地的,即使没有互联网连接也能正常运行。测试本身不会命中任何 API 或建立任何其他连接,因此它似乎一定是其他东西。
这很可能意味着您安装了一些正在尝试建立网络连接的组件。可能是监控或统计收集的东西?
找出发生了什么的最简单方法是使用 tcpdump 捕获您的网络流量并查看发生了什么。为此:
- 运行
tcpdump -i any
(或 tcpdump -i en1
,如果你在 mac;机场通常是 en1
,但你可以仔细检查ifconfig
)
- 观察路况以了解什么是正常的
- 运行 你的测试套件
- 观察
tcpdump
打印的流量,看看是否有任何明显的问题
我有一个 django 测试套件,它从一个 400 行的夹具文件构建一个数据库。不幸的是,它运行缓慢。每次测试几秒钟。
昨天我在火车上进行开发,没有互联网访问,wifi 关闭,我注意到我的测试 运行 在没有互联网的情况下确实快了 10 倍。而且他们绝对 运行 正确。
一切都是本地的,即使没有互联网连接也能正常运行。测试本身不会命中任何 API 或建立任何其他连接,因此它似乎一定是其他东西。
这很可能意味着您安装了一些正在尝试建立网络连接的组件。可能是监控或统计收集的东西?
找出发生了什么的最简单方法是使用 tcpdump 捕获您的网络流量并查看发生了什么。为此:
- 运行
tcpdump -i any
(或tcpdump -i en1
,如果你在 mac;机场通常是en1
,但你可以仔细检查ifconfig
) - 观察路况以了解什么是正常的
- 运行 你的测试套件
- 观察
tcpdump
打印的流量,看看是否有任何明显的问题