@matheusbsbs / matheus-bagliano / commits / d15e9ebc5c
Fork 0

t/README: Document the Smoke testing

Git now has a smoke testing service at http://smoke.git.nix.is that anyone can send reports to. Change the t/README file to mention this. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Ævar Arnfjörð Bjarmason committed Aug 8, 2010 at 14:49 UTC d15e9ebc5c8a627844275e02a2b15a101ce46d4a
1 file changed +66
t/README
+66
@@ -554,3 +554,69 @@ the purpose of t0000-basic.sh, which is to isolate that level of
554 validation in one place. Your test also ends up needing
555 updating when such a change to the internal happens, so do _not_
556 do it and leave the low level of validation to t0000-basic.sh.
557 +
558 +Smoke testing
559 +-------------
560 +
561 +The Git test suite has support for smoke testing. Smoke testing is
562 +when you submit the results of a test run to a central server for
563 +analysis and aggregation.
564 +
565 +Running a smoke tester is an easy and valuable way of contributing to
566 +Git development, particularly if you have access to an uncommon OS on
567 +obscure hardware.
568 +
569 +After building Git you can generate a smoke report like this in the
570 +"t" directory:
571 +
572 + make clean smoke
573 +
574 +You can also pass arguments via the environment. This should make it
575 +faster:
576 +
577 + GIT_TEST_OPTS='--root=/dev/shm' TEST_JOBS=10 make clean smoke
578 +
579 +The "smoke" target will run the Git test suite with Perl's
580 +"TAP::Harness" module, and package up the results in a .tar.gz archive
581 +with "TAP::Harness::Archive". The former is included with Perl v5.10.1
582 +or later, but you'll need to install the latter from the CPAN. See the
583 +"Test coverage" section above for how you might do that.
584 +
585 +Once the "smoke" target finishes you'll see a message like this:
586 +
587 + TAP Archive created at <path to git>/t/test-results/git-smoke.tar.gz
588 +
589 +To upload the smoke report you need to have curl(1) installed, then
590 +do:
591 +
592 + make smoke_report
593 +
594 +To upload the report anonymously. Hopefully that'll return something
595 +like "Reported #7 added.".
596 +
597 +If you're going to be uploading reports frequently please request a
598 +user account by E-Mailing gitsmoke@v.nix.is. Once you have a username
599 +and password you'll be able to do:
600 +
601 + SMOKE_USERNAME=<username> SMOKE_PASSWORD=<password> make smoke_report
602 +
603 +Once the report is uploaded it'll be made available at
604 +http://smoke.git.nix.is, here's an overview of Recent Smoke Reports
605 +for Git:
606 +
607 + http://smoke.git.nix.is/app/projects/smoke_reports/1
608 +
609 +The reports will also be mirrored to GitHub every few hours:
610 +
611 + http://github.com/gitsmoke/smoke-reports
612 +
613 +The Smolder SQLite database is also mirrored and made available for
614 +download:
615 +
616 + http://github.com/gitsmoke/smoke-database
617 +
618 +Note that the database includes hashed (with crypt()) user passwords
619 +and E-Mail addresses. Don't use a valuable password for the smoke
620 +service if you have an account, or an E-Mail address you don't want to
621 +be publicly known. The user accounts are just meant to be convenient
622 +labels, they're not meant to be secure.