Automated Tests in NICOS Nightly Control System Alexander Undrus Brookhaven National Laboratory, Upton, NY 11973 Software testing is a difficult, time-consuming.

Slides:



Advertisements
Similar presentations
Configuration management
Advertisements

System Integration Verification and Validation
Test Case Management and Results Tracking System October 2008 D E L I V E R I N G Q U A L I T Y (Short Version)
Key-word Driven Automation Framework Shiva Kumar Soumya Dalvi May 25, 2007.
1 OBJECTIVES To generate a web-based system enables to assemble model configurations. to submit these configurations on different.
2004 Cross-Platform Automated Regression Test Framework Ramkumar Ramalingam, Rispna Jain IBM Software Labs, India.
SE 450 Software Processes & Product Metrics Reliability: An Introduction.
SC7 WG6 Rome Engineering Ingegneria Informatica S.p.A. INFSO-RI Isabel Matranga ETICS Automated Building,Testing and Quality Assurance.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Introduction to Software Testing
 What is Software Testing  Terminologies used in Software testing  Types of Testing  What is Manual Testing  Types of Manual Testing  Process that.
EC Review – 01/03/2002 – G. Zaquine – Quality Assurance – WP12 – CS-SI – n° 1 DataGrid Quality Assurance Gabriel Zaquine Quality Engineer - WP12 – CS-SI.
Software Configuration Management
Quality Assurance and Testing in LCG CHEP 2004 Interlaken, Switzerland 30 September 2004 Manuel Gallas, Jakub MOSCICKI CERN
SPI Software Process & Infrastructure GRIDPP Collaboration Meeting - 3 June 2004 Jakub MOSCICKI
M. Gallas IT-API LCG SPI project: testing1 Software Testing Infrastructure status LCG Software Process & Infrastructure (CERN, 10/23/02)
Large Scale and Performance Tests of the ATLAS Online Software CERN ATLAS TDAQ Online Software System D.Burckhart-Chromek, I.Alexandrov, A.Amorim, E.Badescu,
Abstract The automated multi-platform software nightly build system is a major component in the ATLAS collaborative software organization, validation and.
Framework for Automated Builds Natalia Ratnikova CHEP’03.
SPI Software Process & Infrastructure EGEE France - 11 June 2004 Yannick Patois
M Gallas CERN EP-SFT LCG-SPI: SW-Testing1 LCG-SPI: SW-Testing LCG Applications Area GridPP 7 th Collaboration Meeting LCG/SPI LCG.
Pragmatic Projects Prepared by Doug Glidden. Pragmatic Projects Pragmatic Teams Ubiquitous Automation Ruthless Testing It’s All Writing Great Expectations.
© 2012 WIPRO LTD | 1 Version 1.0a, 23 rd April 2012 TTCN-3 Users Conference Practical integration of TTCN-3 with Robot test automation framework.
RUP Implementation and Testing
Understand Application Lifecycle Management
Nightly Releases and Testing Alexander Undrus Atlas SW week, May
 To explain the importance of software configuration management (CM)  To describe key CM activities namely CM planning, change management, version management.
1 Software Development Configuration management. \ 2 Software Configuration  Items that comprise all information produced as part of the software development.
NICOS System of Nightly Builds for Distributed Development Alexander Undrus CHEP’03.
Usability Issues Documentation J. Apostolakis for Geant4 16 January 2009.
INFSOM-RI Juelich, 10 June 2008 ETICS - Maven From competition, to collaboration.
SOFTWARE DESIGN (SWD) Instructor: Dr. Hany H. Ammar
The LCG SPI project in LCG Phase II CHEP’06, Mumbai, India Feb. 14, 2006 Andreas Pfeiffer -- for the SPI team
Nightly System Growth Graphs Abstract For over 10 years of development the ATLAS Nightly Build System has evolved into a factory for automatic release.
TEST-1 6. Testing & Refactoring. TEST-2 How we create classes? We think about what a class must do We focus on its implementation We write fields We write.
LCG-SPI: SW-Testing LCG AppArea internal review (20/10/03)
Organization and Management of ATLAS Nightly Builds F. Luehring a, E. Obreshkov b, D.Quarrie c, G. Rybkine d, A. Undrus e University of Indiana, USA a,
Software Project Management
Feedback from the POOL Project User Feedback from the POOL Project Dirk Düllmann, LCG-POOL LCG Application Area Internal Review October 2003.
SEAL Core Libraries and Services CLHEP Workshop 28 January 2003 P. Mato / CERN Shared Environment for Applications at LHC.
M Gallas CERN EP-SFT LCG-SPI: SW-Testing1 LCG-SPI: SW-Testing QMTest test framework LCG AppArea meeting (16/07/03) LCG/SPI LCG Software.
Software Engineering Chapter: Computer Aided Software Engineering 1 Chapter : Computer Aided Software Engineering.
CERN IT Department t LHCb Software Distribution Roberto Santinelli CERN IT/GS.
INFSO-RI Enabling Grids for E-sciencE ARDA Experiment Dashboard Ricardo Rocha (ARDA – CERN) on behalf of the Dashboard Team.
Software Engineering Overview DTI International Technology Service-Global Watch Mission “Mission to CERN in Distributed IT Applications” June 2004.
G.Govi CERN/IT-DB 1 September 26, 2003 POOL Integration, Testing and Release Procedure Integration  Packages structure  External dependencies  Configuration.
Yannick Patois - Datagrid Software Repository Presentation - March, n° 1 Datagrid Software Repository Presentation CVS, packages and automatic.
Alex Undrus – Shifters Meeting – 16 Oct ATLAS Nightly System Integration LS1 Ugrade SIT Task Force Objective: increase efficiency, flexibility,
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.
INFSO-RI Enabling Grids for E-sciencE Using of GANGA interface for Athena applications A. Zalite / PNPI.
A. Aimar - EP/SFT LCG - Software Process & Infrastructure1 SPI Infrastructure for LCG Software Projects Status and work plan for H July 2003 A.Aimar.
Feedback from CMS Andrew Lahiff STFC Rutherford Appleton Laboratory Contributions from Christoph Wissing, Bockjoo Kim, Alessandro Degano CernVM Users Workshop.
20 October 2005 LCG Generator Services monthly meeting, CERN Validation of GENSER & News on GENSER Alexander Toropin LCG Generator Services monthly meeting.
JRA1 Meeting – 09/02/ Software Configuration Management and Integration EGEE is proposed as a project funded by the European Union under contract.
Generating ADL Descriptions ADL Module for Together 6.x Massimo Marino Lawrence Berkeley National Laboratory.
Comments on SPI. General remarks Essentially all goals set out in the RTAG report have been achieved. However, the roles defined (Section 9) have not.
Software Release Build Process and Components in ATLAS Offline Emil Obreshkov for the ATLAS collaboration.
1 © Agitar Software, 2007 Automated Unit Testing with AgitarOne Presented by Eamon McCormick Senior Solutions Consultant, Agitar Software Inc. Presented.
How to Contribute to System Testing and Extract Results
DataGrid Quality Assurance
CS 389 – Software Engineering
The Development Process of Web Applications
GLAST Release Manager Automated code compilation via the Release Manager Navid Golpayegani, GSFC/SSAI Overview The Release Manager is a program responsible.
Applied Software Implementation & Testing
Chapter 2 – Software Processes
Design and Programming
Chapter 11: Software Configuration Management
Chapter 7 –Implementation Issues
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
Overview Activities from additional UP disciplines are needed to bring a system into being Implementation Testing Deployment Configuration and change management.
Presentation transcript:

Automated Tests in NICOS Nightly Control System Alexander Undrus Brookhaven National Laboratory, Upton, NY Software testing is a difficult, time-consuming process that requires technical sophistication and proper planning. This is especially true for the large-scale software projects of High Energy Physics where constant modifications and enhancements are typical. The automated nightly testing is the important component of NICOS, NIghtly COntrol System, that manages the multi-platform nightly builds based on the recent versions of software packages. It facilitates collective work in collaborative environment and provides four benefits to developers: repeatability (tests can be executed more than once), accumulation (results are stored and reflected on NICOS web pages), feedback (automatic notifications about test failures), user friendly setup (configuration parameters can be encrypted in the body of test scripts). The modular structure of NICOS allows plugging in other validation and organization tools, such as QMTest and CppUNIT. NICOS classifies tests according to their granularity level and purpose. The low level structural tests reveal compilation problems, inconsistencies in package configuration, such as circular dependencies, and simple isolated bugs. The results for these three groups of tests are published for each package of the software project. The integrated (or behavioral) tests find bugs at levels of users scenarios and NICOS generates the special web page with their results. The NICOS tool is currently used to coordinate the efforts of more than 100 developers for the ATLAS project at CERN and included in the tool library of the LHC computing project. Abstract CHEP 2004

NICOS - NIghtly COntrol System NICOS Control System [1] has a modular structure. Each module is responsible for a certain step (such as code checkout, release build, testing, error analysis) and independently described in the NICOS configuration file. This organization allows to plug in build, test, validation, and other external tools. NICOS currently manages the nightly releases of ATLAS software comprising about 1000 packages. It creates the nightly build framework that also uses: ATLAS Tag Collector [2] – web interfaced database application. Developers are able to interactively select the tags from ATLAS CVS repository for the nightly releases CMT [3] configuration management tool that defines the conventions for structuring software releases and describes the package properties, constituents, and dependencies Packages Database Packages Database Build Results Tag Collector Automatic s Release Build Code Checkout Testing Error Analysis NICOS Control System NICOS Control System CMT CVS Repository CHEP Alexander Undrus - Automated Tests in NICOS Nightly Control System - page 2

Test Levels and Tools in ATLAS Nightly Builds RELEASE SYSTEM PACKAGE COMPONENT/UNIT Verification of compilation/linking Unit Tests Integration Tests QA (Configuration, Coding Standards) NICOS Control Tool provides a framework for tests of different manners and levels of focus. The tests are automatically applied to each nightly release. The compilation and linking results are verified automatically and published for each package. Quality Assurance tests verify the descriptions of package properties (in CMT requirements files). The code checking tools are under development and will be added to the nightly tests in the future. Unit tests check individual software components (such as C++ classes) or a collection of components (such as the packages of the ATLAS software release). A helper tool for unit testing of C++ programs, CppUNIT [4], is integrated in CMT environment of ATLAS releases. For testing individual packages the special make target, make check, is provided. It allows to run the test jobs focused on the package functionalities in Athena, ATLAS control framework. Integration tests show that the major systems of the software release work well and communicate with other systems successfully. QMTest [5] tool is used for the ATLAS integration tests organization and validation. It supports regression tests that compare the output of the current test with previous (or known) values. The tests are arranged in suites. The suite usually includes the tests related to the specific system of a release. QMTest saves the test results for further inspection with the graphical or command-line interface. CHEP Alexander Undrus - Automated Tests in NICOS Nightly Control System - page 3

Delivering Test Results to Developers Precise sw release info in header Integrated tests statistics Sorting options Addresses for notifications Build, QA and Unit tests results Problems highlighted NICOS web pages show the results of QA and unit tests for each package of a release. There are two levels of problem seriousness: warning and error. The results for integrated tests and suites are published on a separate web page. References 1.The NICOS home page is 2.S. Albrand “The Tag Collector – A Tool for Atlas Code Release Management”, CHEP04 contribution 3.CMT home page is 4.CppUNIT home page is 5.QMTest home page is CHEP Alexander Undrus - Automated Tests in NICOS Nightly Control System - page 4