From 3658adcadcc2e568abc985255a6cddcc4871aa87 Mon Sep 17 00:00:00 2001 From: Klement Sekera Date: Wed, 7 Jun 2017 08:19:47 +0200 Subject: make test: improve debugability Introduce faulthandler to print stack trace to stderr on python crash. Don't disable automatic garbage collection to decrease the chances of running out of memory. Change-Id: I6927a5f6ea9569735d084d4ed3d258950a400d74 Signed-off-by: Klement Sekera --- test/Makefile | 2 +- test/framework.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/test/Makefile b/test/Makefile index 8df96404..14c8cd26 100644 --- a/test/Makefile +++ b/test/Makefile @@ -35,7 +35,7 @@ UNITTEST_EXTRA_OPTS=$(UNITTEST_FAILFAST_OPTS) -d $(EXTERN_TESTS) endif PYTHON_VENV_PATH=$(VPP_PYTHON_PREFIX)/virtualenv -PYTHON_DEPENDS=six scapy==2.3.3 pexpect subprocess32 cffi git+https://github.com/klement/py-lispnetworking@setup +PYTHON_DEPENDS=faulthandler six scapy==2.3.3 pexpect subprocess32 cffi git+https://github.com/klement/py-lispnetworking@setup SCAPY_SOURCE=$(shell find $(PYTHON_VENV_PATH) -name site-packages) BUILD_COV_DIR=$(BR)/test-cov diff --git a/test/framework.py b/test/framework.py index 91915fca..3c9dd29a 100644 --- a/test/framework.py +++ b/test/framework.py @@ -9,6 +9,7 @@ import unittest import tempfile import time import resource +import faulthandler from collections import deque from threading import Thread, Event from inspect import getdoc @@ -940,7 +941,7 @@ class VppTestRunner(unittest.TextTestRunner): :param test: """ - gc.disable() # disable garbage collection, we'll do that manually + faulthandler.enable() # emit stack trace to stderr if killed by signal print("Running tests using custom test runner") # debug message filter_file, filter_class, filter_func = self.parse_test_option() print("Active filters: file=%s, class=%s, function=%s" % ( -- cgit 1.2.3-korg