all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: "Daniel Martín" <mardani29@yahoo.es>
Cc: michael.albinus@gmx.de, stefan@marxist.se, emacs-devel@gnu.org
Subject: Re: master 262d0c6: Mark some tests as expensive
Date: Sat, 12 Sep 2020 13:38:01 +0300	[thread overview]
Message-ID: <83a6xve0vq.fsf@gnu.org> (raw)
In-Reply-To: <m1blibi96a.fsf@yahoo.es> (message from Daniel Martín on Sat, 12 Sep 2020 12:25:17 +0200)

> From: Daniel Martín <mardani29@yahoo.es>
> Cc: Michael Albinus <michael.albinus@gmx.de>,  emacs-devel@gnu.org
> Date: Sat, 12 Sep 2020 12:25:17 +0200
> 
> Stefan Kangas <stefan@marxist.se> writes:
> >
> > The idea is to avoid that it will take a very long time to run the unit
> > tests as the test suite grows.  Arguably a unit test should never take
> > longer than a second, and even that is in the slow end.  If we have
> > 10.000 unit tests taking a second each, just do the math of how long it
> > will take to run (even with parallelization).  We should not postpone
> > working on this until we are in that situation, IMHO, because by then it
> > will be a major pain.
> 
> I agree. We should differentiate between unit tests (they run in under a
> second) and end-to-end tests, which are slower but still valuable
> because they cover whole scenarios that unit tests can't cover.

Tramp tests need more time because they involve a remote system.
Moreover, the time taken by each Tramp test depends on the speed of
the connection, which you cannot know in advance.

So I conclude that the "under one second" criterion is not smart
enough to be applicable to Tramp tests, and maybe to some others as
well.

I also don't understand the more general issue with how long the test
suite runs.  While it runs, you can do something useful on a modern
system (or just go for a coffee), so why does it matter?  I've seen
test suites that take a very long time to run (e.g., look at Texinfo
or at Guile), and I never felt I was wasting my time by running those
comprehensive test suites.

I think we are exaggerating the importance of the time it takes to run
the tests.

> > I think the solution for important tests is to refactor the code to make
> > them run faster, for example by avoiding I/O or to make timers trigger
> > immediately.
> 
> Yes, I think this is a good approach to follow in general.

I don't, not in general.  Artificially making such changes will run a
risk of missing real problems, because the test runs in an environment
different from a real one.  This approach can be a good idea in some
cases, but in general we should try to run each test as close to
real-life conditions as possible.



  reply	other threads:[~2020-09-12 10:38 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20200910182904.20559.25935@vcs0.savannah.gnu.org>
     [not found] ` <20200910182905.F0E4520A2E@vcs0.savannah.gnu.org>
2020-09-11  9:25   ` master 262d0c6: Mark some tests as expensive Michael Albinus
2020-09-11 18:06     ` Stefan Kangas
2020-09-12 10:25       ` Daniel Martín
2020-09-12 10:38         ` Eli Zaretskii [this message]
2020-09-12 11:15           ` Lars Ingebrigtsen
2020-09-12 11:24             ` Eli Zaretskii
2020-09-12 12:11               ` Lars Ingebrigtsen
2020-09-12 12:29                 ` Eli Zaretskii
2020-09-13 12:30                   ` Lars Ingebrigtsen
2020-09-13 15:21                     ` Stefan Monnier
2020-09-13 15:30                       ` Lars Ingebrigtsen
2020-09-13 17:22                       ` Michael Albinus
2020-09-12 16:47                 ` Michael Albinus
2020-09-13 12:33                   ` Lars Ingebrigtsen
2020-09-13 14:37                     ` Eli Zaretskii
2020-09-12 11:27             ` Michael Albinus
2020-09-12 12:15               ` Lars Ingebrigtsen
2020-09-12 12:30                 ` Michael Albinus
2020-09-12 12:36                   ` Lars Ingebrigtsen
2020-09-12 13:04                   ` Dmitry Gutov
2020-09-12 14:23                     ` Daniel Martín
2020-09-12 14:49                     ` Michael Albinus
2020-09-12 16:47                       ` Dmitry Gutov
2020-09-12 14:53                     ` Lars Ingebrigtsen
2020-09-12 14:00           ` Daniel Martín
2020-09-12 14:14             ` Eli Zaretskii
2020-09-12 15:16               ` Daniel Martín
2020-09-12 14:43             ` Michael Albinus
2020-09-12 15:02               ` Daniel Martín
2020-09-12 10:52       ` Michael Albinus
2020-09-18 10:22         ` Stefan Kangas
2020-09-18 10:31           ` Michael Albinus
2020-10-18 18:15             ` Stefan Kangas
2020-10-19 12:40               ` Michael Albinus
2020-10-19 15:34                 ` Stefan Kangas
2020-10-19 16:42                   ` Michael Albinus

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=83a6xve0vq.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=mardani29@yahoo.es \
    --cc=michael.albinus@gmx.de \
    --cc=stefan@marxist.se \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.