13.09.17 16:42, Victor Stinner пише:
* skip a test if it allocates too much memory, command line argument to specify how many memory a test is allowed to allocate (ex: --memlimit=2G for 2 GB of memory)
Instead of just making checks before running some tests it would be worth to limit the memory usage hard (by setting ulimit or analogs on other plathforms). The purpose of this option is preventing swapping which makes tests just hanging for hours.
* concept of "resource" like "network" (connect to external network servers, to the Internet), "cpu" (CPU intensive tests), etc. Tests are skipped by default and enabled by the -u command line option (ex: "-u cpu).
The problem is what include in "all". The set of resources is application specific. Some of resources used in CPython tests make sense only for single test.
* --timeout: watchdog killing the test if the run time exceed the timeout in seconds (use faulthandler.dump_traceback_later)
This feature looks functionally similar to limiting memory usage.
* --match, --matchfile, -x: filter tests
The discovery feature of unittest looks similar.
* ... : regrtest has many many features
Many of them contain a bunch of engineering tricks and evolve quickly. Regrtest now is not a regrtest two years ago, and I'm sure that two years later it will differ too much from the current. Unittest should be more stable.
_______________________________________________ Python-ideas mailing list [email protected] https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/
