This is an automated email from the ASF dual-hosted git repository.

sijie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git


The following commit(s) were added to refs/heads/master by this push:
     new ff42188  Add a testing guide
ff42188 is described below

commit ff42188d069556626cf0673359c02ef9d7ec778b
Author: Sijie Guo <[email protected]>
AuthorDate: Mon Dec 18 13:41:33 2017 -0800

    Add a testing guide
    
    Descriptions of the changes in this PR:
    
    Putting up a page for `testing` related information. This is the first 
attempt to document all CI related information.
    
    Author: Sijie Guo <[email protected]>
    
    Reviewers: Enrico Olivelli <[email protected]>
    
    This closes #874 from sijie/testing_guide_doc
---
 site/community/testing.md | 55 +++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 55 insertions(+)

diff --git a/site/community/testing.md b/site/community/testing.md
new file mode 100644
index 0000000..bb44fc4
--- /dev/null
+++ b/site/community/testing.md
@@ -0,0 +1,55 @@
+---
+title: BookKeeper Testing Guide
+---
+
+* TOC
+{:toc}
+
+## Overview
+
+Apache BookKeeper is a well adopted software project with a strong commitment 
to testing.
+Consequently, it has many testing-related needs. It requires precommit tests 
to ensure
+code going to the repository meets a certain quality bar and it requires 
ongoing postcommit
+tests to make sure that more subtle changes which escape precommit are 
nonetheless caught.
+This document outlines how to write tests, which tests are appropriate where, 
and when tests
+are run, with some additional information about the testing systems at the 
bottom.
+
+## Testing Scenarios
+
+With the tools at our disposal, we have a good set of utilities which we can 
use to verify
+BookKeeper correctness. To ensure an ongoing high quality of code, we use 
precommit and postcommit
+testing.
+
+### Precommit
+
+For precommit testing, BookKeeper uses 
[Jenkins](https://builds.apache.org/job/bookkeeper-seed/) and
+[Travis CI](https://travis-ci.org/apache/bookkeeper), hooked up to
+[Github](https://github.com/apache/bookkeeper), to ensure that pull requests 
meet a certain quality bar.
+These precommits verify correctness via unit/integration tests.
+
+Precommit tests are kicked off when a user makes a Pull Request against the 
`apache/bookkeeper` repository,
+and the Jenkins and Travis CI statuses are displayed at the bottom of the pull 
request page. Clicking on
+"Details" will open the status page in the selected tool; there, test status 
and output can be viewed.
+
+For retriggering precommit testing for a given Pull Request, you can comment 
"retest this please" for
+jenkins jobs and close/reopen the Pull Request for travis jobs.
+
+### Postcommit
+
+Running in postcommit removes as stringent of a time constraint, which gives 
us the ability to do some
+more comprehensive testing. Currently in postcommit, we run unit/integration 
tests against both master and
+the most recent release branch, publish website for any changes related to 
website and documentation, and
+deploy a snapshot of latest master to artifactory.
+
+Postcommit test results can be found in 
[Jenkins](https://builds.apache.org/job/bookkeeper-seed/).
+
+### Configuration
+
+All the precommit and postcommit CI jobs are managed either by Jenkins or 
Travis CI.
+
+For Jenkins jobs, they are all written and managed using 
[Jenkin-DSL](https://github.com/jenkinsci/job-dsl-plugin/wiki).
+The DSL scripts are maintained under 
[.test-infra](https://github.com/apache/bookkeeper/tree/master/.test-infra/jenkins).
+Any jenkins changes should be made in these files and reviewed by the 
community.
+
+For Travis CI jobs, they are defined in 
[.travis.yml](https://github.com/apache/bookkeeper/blob/master/.travis.yml).
+Any travis CI changes should be made in this file and reviewed by the 
community.

-- 
To stop receiving notification emails like this one, please contact
['"[email protected]" <[email protected]>'].

Reply via email to