Download presentation
Presentation is loading. Please wait.
Published byJeremy Cole Modified over 9 years ago
1
Geant4 is a toolkit to simulate the passage of particles through matter, and is widely used in HEP, in medical physics and for space applications. Ongoing developments and improvements require regular integration testing for new or modified code. Nightly Builds Nightly build process QMTest A general purpose testing solution used to compile and run our tests. It provides an integrated way of testing, organizing the tests in suites and giving us statistics of the execution. Checkout Receives the selected and accepted tags from a url with connection to the bonsai DB Bonsai server / web interface Feedback to the developer Log files parsing Results on web and coding Commiting and tagging Log files Python scripts Configuration Management Tool www.cmtsite.org A tool to configure the application environment LCGAPP server Log files The developer can see which tests failed and QMtest gives detailed outputs and some basic statistics Features under development A new database in the server side containing the data and the history of the tests will allow us to improve the client side with test-specific statistics, more complete queries and faster responses. The use of AJAX will improve the usability of the interface Analysis of the log files Execution of the nightlies Fixes and tags selection Feature under development The summary information collected from the log files to be stored in a database. This will allow more precise and complete statistics and a extensive history of the nightlies Developments New features, physics, models, improvements… Build Builds the project on the dedicated platform, using different compilers like gcc, vc9 (use of Cygwin on Win32). Test Executes QMtest with the suites containing the tests to be run. Platforms The developer fixes the code following the feedback received from the nightlies The server side works with an html file containing all the data of the nightlies created by a handmade parser process. Only shows the data requested by the client The changes are commited and tagged in the CVS PROPOSED tags SELECTED & ACCEPTED tags REJECTED tags ACCEPTED tags Database Storing information about CVS tags and status The STT accepts or rejects the tags depending on the results of the nightlies. The accepted ones will be included in code base for subsequent testing STT The STT selects from the proposed tags the ones that will be tested in the nightlies Conclusions We report on migrating Geant4 integration testing to the existing LCG Application Area nightly builds system from a setup based on a modified version of Mozilla Tinderbox. The new system is based on Python scripts, the CMT configuration tool, and QMTest as test suite. As intended, the core of the nightly build system is shared with others LCG projects, including ROOT, and experiments, like LHCb. The LCG nightly builds system supports building and testing on more platforms, adding Win32 and MacOS to Geant4 regular testing. Over 80 tests programs are run on each of 6+ different platforms under multiple configurations (32/64 bits, optimized/debug). We are adding more tests and new platforms, expanding our testing coverage. This has enabled the increase of frequency of testing to daily, during low or high periods of development, reducing maintenance and sharing improvements. We are extending the nightly builds system to improve the parsing of the log files, in order to get more complete and detailed information, and to get better web output and statistics. Victor DIEZ, Gunter FOLGER, Stefan ROISER CERN PH-SFT Geant4 integration testing is being integrated into the LCG applications area nightly builds system. The LCG nightly builds system based on CMT and on pyhton scripts supports testing on many different platforms, including Windows and Mac OS. The CMT configuration management tool is responsible for the configuration of the build and test environment and external dependencies in a structured and modulated way, giving fine control of configuring options for the build and execution of tests. For the testing itself, the LCG nightly builds system uses QMTest, a test suite providing tools to test software and to present the test outcome in different formats. We are working to integrate this tool with Geant4 tests and to improve the presentation of test results, so we can give different outputs to the default ones, and different formats. code base
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.