django/selenium测试:如何调试分段错误?

django/selenium测试:如何调试分段错误?,django,selenium,Django,Selenium,当使用StaticLiveServerTestCase和selenium运行django测试时,我偶尔会遇到分段错误 这些崩溃看起来完全是随机的:我可以运行相同的测试10或20次而不做任何更改,并且分段错误只会发生1或2次,而且在测试中似乎是随机的。我从崩溃中得到的信息基本上也没有什么:分段错误(内核转储)python manage.py test 我在想,到底有没有办法弄清楚为什么会发生这种情况?换句话说,我们如何在python测试期间调试崩溃 我尝试了python-m pdb manage.

当使用
StaticLiveServerTestCase
和selenium运行django测试时,我偶尔会遇到分段错误

这些崩溃看起来完全是随机的:我可以运行相同的测试10或20次而不做任何更改,并且分段错误只会发生1或2次,而且在测试中似乎是随机的。我从崩溃中得到的信息基本上也没有什么:
分段错误(内核转储)python manage.py test

我在想,到底有没有办法弄清楚为什么会发生这种情况?换句话说,我们如何在python测试期间调试崩溃

我尝试了python-m pdb manage.py测试,但这不允许运行测试(它在第一个import语句时停止)

我也试过了

更新所有python包。我在virtualenv中使用Python2,所有包都是最新的

更新我的操作系统。我使用的是ArchLinux,并且完全是最新的


在不同的计算机上尝试了这个。同样的事情。尽管我只是在所有计算机上使用arch linux。

如果您使用SQLite后端进行测试/调试,Django中存在一个已知问题。我可以通过以下步骤解决此问题:

请记住,这些步骤是在Ubuntu服务器12.04上执行的,与您的Arch Linux发行版不同,但我相信您可以调整以下步骤以升级到最新和最棒的SQLite3:

$ wget https://www.sqlite.org/2015/sqlite-autoconf-3081101.tar.gz
$ tar xvfz sqlite-autoconf-3081101.tar.gz
$ cd sqlite-autoconf-3081101
$ ./configure --prefix=/usr/local
$ make
$ make install
$ sudo apt-get install --reinstall python2.7 python2.7-minimal python2.7-dev python2.7-dbg

以上这些对我都不起作用。 但是,将sqlite升级到最新版本3.14并没有成功。升级后未遇到分段错误。 我下载了源代码,并根据文档进行编译和安装:

wget https://www.sqlite.org/2016/sqlite-autoconf-3140000.tar.gz
./configure
make
sudo make install
然后运行我的单元测试。一切都从那里开始了