[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#699083: lintian: optimize t/tests suite



Package: lintian
Version: 2.5.11
Severity: normal

Hi,

I believe it might be worth it to look into optimizing the resource
requirements for the t/tests suite.  It is my understanding that the
current testsuite is discouraging to run for some people (myself
included when I only have my laptop).

I have narrowed this down to t/tests, which was not really surprising.
This part of the test suite currently consists of 353[1] tests, which
brings on a full Debian build.

I used time on a run last night (onlyrun=suite:tests and parallel=8),
which gave:

  real    9m22.148s
  user    58m8.566s
  sys     6m45.349s

It seems that most of our tests takes less than 6s real, less than 7s
user and less than 2s sys[2].  The rests remaining after this filter
are a "mere" 54 tests.  Notable examples include:

 copyright-file-general 17.883s 40.331s 5.516s
 fields-wrong-section 14.815s 32.818s 4.628s

The "empty" build (tests like basic) takes 3s[3] and that is the
majority of time spent in those tests[4].

~Niels

[1] 2.4.3 "only" had 182, so we have nearly doubled our number of tests
in t/tests since then. \o/

[2] Computed by:
 
 $ time debian/rules runtests onlyrun=<test>

[3] Computed by:

  $ cd path/to/test && time dpkg-buildpackage -rfakeroot -us -uc -d \
       -iNEVER_MATCH_ANYTHING -INEVER_MATCH_ANYTHING \
       --source-option=--auto-commit

[4]
 # <test> <real> <user> <sys>
 [...]
 basic-3.0-native 4.458s 4.916s 0.796s
 basic-non-native-with-epoch 4.744s 5.076s 0.728s
 basic-non-native 4.707s 5.112s 0.668s
 basic-quilt-updeb 4.554s 4.872s 0.724s
 basic-quilt 4.960s 5.148s 0.812s
 basic-with-epoch 4.452s 4.964s 0.732s
 basic 4.601s 5.036s 0.740s

Attachment: test-time-ol.log.gz
Description: GNU Zip compressed data

apache2-modules-general 6.136s 8.877s 1.300s
apache2-webapplications-general 5.924s 8.821s 1.164s
binaries-embedded-libs 6.981s 6.480s 1.144s
binaries-hardening 8.133s 7.748s 1.124s
binaries-missing-depends-on-numpy-abi 6.046s 6.284s 0.888s
binaries-multiarch-wrong-dir 7.582s 7.240s 1.116s
binaries-multiarch 6.293s 6.360s 0.956s
control-file-general 7.981s 13.805s 1.932s
control-file-library-dev 10.293s 18.345s 2.580s
copyright-file-doc-symlink 5.675s 8.765s 1.136s
copyright-file-general 17.883s 40.331s 5.516s
copyright-file-license-symlink 5.165s 7.176s 0.956s
copyright-file-symlink 5.852s 8.589s 1.408s
debhelper-dh-python-helpers 5.160s 7.188s 0.988s
debhelper-no-depends 6.730s 9.317s 1.280s
description-empty-paragraph 5.922s 8.905s 1.176s
description-general 10.676s 21.609s 3.016s
fields-architecture 8.531s 7.993s 1.112s
fields-debug-bad 5.099s 7.116s 0.976s
fields-depends-general 6.587s 10.761s 1.596s
fields-java 5.186s 7.224s 0.988s
fields-section-general 5.191s 7.068s 1.012s
fields-virtual-packages 5.525s 7.324s 1.016s
fields-wrong-section 14.815s 32.818s 4.628s
files-bad-perm-owner 6.356s 7.620s 1.160s
files-flash-non-free 5.278s 7.076s 1.040s
files-fonts 5.409s 7.208s 1.136s
files-games-section 7.038s 11.061s 1.628s
files-multiarch-missing-pre-deps 6.258s 6.296s 0.964s
files-python-general 8.476s 9.937s 1.232s
group-checks-circular-deps 10.582s 21.873s 3.016s
group-checks-file-conflict 5.367s 7.412s 1.104s
group-checks-multi-arch 6.634s 9.653s 1.404s
group-checks-wrong-priorities 5.478s 7.288s 1.084s
init.d-general 7.098s 11.449s 1.496s
init.d-lsb-headers 9.565s 17.761s 2.356s
java-class-format 6.806s 7.436s 0.904s
java-classpath 8.844s 11.685s 1.400s
java-jars 13.076s 19.765s 2.148s
manpages-dependencies 5.390s 7.360s 1.084s
menu-format-general 7.407s 11.849s 1.556s
menus-doc-base-registration 5.248s 7.360s 1.004s
ocaml-general 5.583s 7.504s 1.172s
rules-including-deprecated-makefiles 6.347s 6.688s 0.800s
rules-missing-targets 5.711s 7.860s 0.980s
runtests-arch-amd64 6.880s 6.560s 1.092s
scripts-control-interpreters 7.685s 13.465s 1.820s
shared-libs-control-file 11.265s 16.913s 2.408s
shared-libs-dev-symlink-fp 6.604s 8.549s 1.108s
shared-libs-dev-symlink 6.470s 8.205s 1.212s
shared-libs-ldconfig-scripts 9.616s 13.569s 1.916s
shared-libs-symbols-file 9.002s 13.113s 1.760s
symlinks-broken 5.362s 7.348s 1.052s
version-substvars-general 7.104s 11.381s 1.592s

Reply to: