git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jonathan Nieder <jrnieder@gmail.com>
To: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Cc: git@vger.kernel.org, Junio C Hamano <gitster@pobox.com>,
	Thomas Rast <trast@student.ethz.ch>
Subject: Re: [PATCH 6/6] t/README: A new section about test coverage
Date: Sat, 24 Jul 2010 16:25:43 -0500	[thread overview]
Message-ID: <20100724212542.GA5610@burratino> (raw)
In-Reply-To: <1280004663-4887-7-git-send-email-avarab@gmail.com>

Ævar Arnfjörð Bjarmason wrote:

> Document how test writers can generate coverage reports

Very neat!

> --- a/t/README
> +++ b/t/README
> @@ -267,6 +267,9 @@ Do:
>  	git merge hla &&
>  	git push gh &&
>  	test ...
> +    
> + - Check the test coverage for your tests. See the "Test coverage"
> +   below.
>  
>  Don't:

I have a moment’s hesitation reading this, because I suspect test
coverage checking would be most useful if test authors were _not_ to
pay too much attention to it.

Imagine that the git test suite is almost perfect, so it checks all
the important behavior of git, including edge cases (yes, unlikely,
but bear with me for a moment).  Then the test coverage data would be
very useful indeed: it would point out code that is not actually
needed for anything.

However, if new authors make 99% coverage a goal while writing
tests, the result will be lots of useless tests that check
behavior no one cares about and less useful coverage information.

> @@ -508,3 +511,40 @@ the purpose of t0000-basic.sh, which is to isolate that level of
>  validation in one place.  Your test also ends up needing
>  updating when such a change to the internal happens, so do _not_
>  do it and leave the low level of validation to t0000-basic.sh.
> +
> +Test coverage
> +-------------
> +
> +You can use the coverage tests to find out if your tests are really
> +testing your code code. To do that, run the coverage target at the
> +top-level (not in the t/ directory):

In other words, I would rather the rationale here read:

	You can use the coverage tests to find code paths that are not being
	properly exercised yet. To do that...

I think it is great if people write new tests that do not exercise
their own code but instead explore related behavior.

That said, with or without any of the changes implied above,

Reviewed-by: Jonathan Nieder <jrnieder@gmail.com>

Thanks.

  reply	other threads:[~2010-07-24 21:26 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-24 20:50 [PATCH 0/6] Detailed test coverage reports for Git Ævar Arnfjörð Bjarmason
2010-07-24 20:50 ` [PATCH 1/6] gitignore: Ignore files generated by "make coverage" Ævar Arnfjörð Bjarmason
2010-07-24 20:50 ` [PATCH 2/6] Makefile: Include subdirectories in "make cover" reports Ævar Arnfjörð Bjarmason
2010-07-24 22:37   ` Thomas Rast
2010-07-24 23:28     ` Ævar Arnfjörð Bjarmason
2010-07-24 23:41       ` Jonathan Nieder
2010-07-26  5:44         ` Junio C Hamano
2010-07-24 20:51 ` [PATCH 3/6] Makefile: Split out the untested functions target Ævar Arnfjörð Bjarmason
2010-07-24 23:02   ` Thomas Rast
2010-07-24 23:29     ` Ævar Arnfjörð Bjarmason
2010-07-24 20:51 ` [PATCH 4/6] Makefile: Add coverage-report-cover-db target Ævar Arnfjörð Bjarmason
2010-07-24 23:01   ` Thomas Rast
2010-07-24 23:28     ` Ævar Arnfjörð Bjarmason
2010-07-24 20:51 ` [PATCH 5/6] Makefile: Add coverage-report-cover-db-html target Ævar Arnfjörð Bjarmason
2010-07-24 20:51 ` [PATCH 6/6] t/README: A new section about test coverage Ævar Arnfjörð Bjarmason
2010-07-24 21:25   ` Jonathan Nieder [this message]
2010-07-24 21:29     ` Jonathan Nieder
2010-07-24 23:17     ` Ævar Arnfjörð Bjarmason
2010-07-24 23:32       ` Jonathan Nieder

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=20100724212542.GA5610@burratino \
    --to=jrnieder@gmail.com \
    --cc=avarab@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=trast@student.ethz.ch \
    /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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).