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.