658
That'll generate a detailed cover report in the "cover_db_html"
659
directory, which you can then copy to a webserver, or inspect locally
660
in a browser.
661
-
662
-Smoke testing
663
--------------
664
-
665
-The Git test suite has support for smoke testing. Smoke testing is
666
-when you submit the results of a test run to a central server for
667
-analysis and aggregation.
668
-
669
-Running a smoke tester is an easy and valuable way of contributing to
670
-Git development, particularly if you have access to an uncommon OS on
671
-obscure hardware.
672
-
673
-After building Git you can generate a smoke report like this in the
674
-"t" directory:
675
-
676
- make clean smoke
677
-
678
-You can also pass arguments via the environment. This should make it
679
-faster:
680
-
681
- GIT_TEST_OPTS='--root=/dev/shm' TEST_JOBS=10 make clean smoke
682
-
683
-The "smoke" target will run the Git test suite with Perl's
684
-"TAP::Harness" module, and package up the results in a .tar.gz archive
685
-with "TAP::Harness::Archive". The former is included with Perl v5.10.1
686
-or later, but you'll need to install the latter from the CPAN. See the
687
-"Test coverage" section above for how you might do that.
688
-
689
-Once the "smoke" target finishes you'll see a message like this:
690
-
691
- TAP Archive created at <path to git>/t/test-results/git-smoke.tar.gz
692
-
693
-To upload the smoke report you need to have curl(1) installed, then
694
-do:
695
-
696
- make smoke_report
697
-
698
-To upload the report anonymously. Hopefully that'll return something
699
-like "Reported #7 added.".
700
-
701
-If you're going to be uploading reports frequently please request a
702
-user account by E-Mailing gitsmoke@v.nix.is. Once you have a username
703
-and password you'll be able to do:
704
-
705
- SMOKE_USERNAME=<username> SMOKE_PASSWORD=<password> make smoke_report
706
-
707
-You can also add an additional comment to attach to the report, and/or
708
-a comma separated list of tags:
709
-
710
- SMOKE_USERNAME=<username> SMOKE_PASSWORD=<password> \
711
- SMOKE_COMMENT=<comment> SMOKE_TAGS=<tags> \
712
- make smoke_report
713
-
714
-Once the report is uploaded it'll be made available at
715
-http://smoke.git.nix.is, here's an overview of Recent Smoke Reports
716
-for Git:
717
-
718
- http://smoke.git.nix.is/app/projects/smoke_reports/1
719
-
720
-The reports will also be mirrored to GitHub every few hours:
721
-
722
- http://github.com/gitsmoke/smoke-reports
723
-
724
-The Smolder SQLite database is also mirrored and made available for
725
-download:
726
-
727
- http://github.com/gitsmoke/smoke-database
728
-
729
-Note that the database includes hashed (with crypt()) user passwords
730
-and E-Mail addresses. Don't use a valuable password for the smoke
731
-service if you have an account, or an E-Mail address you don't want to
732
-be publicly known. The user accounts are just meant to be convenient
733
-labels, they're not meant to be secure.