Changes between Version 1 and Version 2 of DevQualityAssurance


Ignore:
Timestamp:
Jan 22, 2015, 12:50:13 AM (9 years ago)
Author:
Christian Beer
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • DevQualityAssurance

    v1 v2  
    1414 * support testing multiple language on portions of the VCS (C++, PHP, Java)
    1515
    16 == Tools ==
    17 [http://jenkins-ci.org/ Jenkins] is a continuous integration server that is extended using plugins:
    18  * already supports JUnit and javadoc
    19  * supports git via the [https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin git plugin]
    20  * the [https://wiki.jenkins-ci.org/display/JENKINS/xUnit+Plugin xUnit plugin] can show reports from JUnit, PHPUnit and !CppUnit test tools
    21  * there is also a [https://wiki.jenkins-ci.org/display/JENKINS/Cppcheck+Plugin cppcheck plugin]
    22 Those plugins only compile a report from each of those tools. The tools need to be installed and configured separately.
    23 
    24 Using JUnit, PHPUnit and !CppUnit should simplify the creation and maintenance of test cases.
    25 
    26 Jenkins support distributed workers as build nodes.
     16== Travis CI ==
     17[http://travis-ci.org/ Travis-CI] is a continuous integration service that is free for Open Source projects:
     18 * tracks all commits and pull request made in the BOINC github mirror repository
     19 * installs needed software in a VM (Ubuntu 12.04) and tries to build the different BOINC components separately
     20 * failures are recognized (exit code != 0) and a notification is send to the boinc_cvs mailinglist
     21 * supports only Linux and Mac OS X at the moment
    2722
    2823=== problems ===
    29  * Jenkins has no built-in user authentication
    30  * How does Jenkins handle multi-language code bases?
     24 * It is difficult to handle the android build as it needs a complete different .travis.yml configuration file. A solution would be to have a separate branch 'android_build' with a modified .travis.yml file that only builds the android client. This would require to merge in the android specific changes by hand without overwriting the .travis.yml file.
     25 * Since the build is triggered on every commit or pull request it might not be ideal to generate documentation or reports within the VM
    3126
    32 === links ===
    33  * [https://wiki.jenkins-ci.org/display/JENKINS/Jenkins+and+PHP Jenkins and PHP]
    34  * [https://wiki.jenkins-ci.org/display/JENKINS/Terminology Jenkins Terminology]
    35 
    36 == Workflow ==
     27=== future changes ===
     28In order to enhance the usefulness of the automated build the following changes are possible:
     29 * add a simple syntax test for php Code
     30 * add a more elaborate test that creates a project inside the VM
     31 * explore if it's useful to add a [https://scan.coverity.com/travis_ci Coverty scan] (free but limited in builds per week)
    3732
    3833== On creating test cases ==