Www.eu-etics.org INFSOM-RI-026753 WP 4 : Testing Tools and Methodologies Status Report ETICS Review – 15 February 2008 Éva Takács (4D SOFT)

Slides:



Advertisements
Similar presentations
Enabling Technology Innovation using Open Source Software
Advertisements

ASTA Aspect Software Testing Assistant Juha Gustafsson, Juha Taina, Jukka Viljamaa University of Helsinki.
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
SC7 WG6 Rome Engineering Ingegneria Informatica S.p.A. INFSO-RI Isabel Matranga ETICS Automated Building,Testing and Quality Assurance.
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
EC Review – 01/03/2002 – G. Zaquine – Quality Assurance – WP12 – CS-SI – n° 1 DataGrid Quality Assurance Gabriel Zaquine Quality Engineer - WP12 – CS-SI.
Configuration Management Process and Environment MACS Review 1 February 5th, 2010 Roland Moser PR a-RMO, February 5 th, 2010 R. Moser 1 R. Gutleber.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
INFSO-RI Quality Assurance with ETICS – multi- node automated testing CGW 09 M.Zurek, A. A. Rodriguez, A. Aimar, A. di Meglio, L. Dini CERN Krakow,
Framework for Automated Builds Natalia Ratnikova CHEP’03.
JAS3 + AIDA LC Simulations Workshop SLAC 19 th May 2003.
EMI INFSO-RI EMI SA2 Report Quality Assurance Alberto Aimar (CERN) SA2 WP Leader.
SCI-BS is supported by the FP7 Capacities Programme under contract nr RI Build and Test Portal SCI-BUS - agINFRA OSD Eva Takacs 4D Soft Kft. Budapest,
ETICS2 All Hands Meeting VEGA GmbH INFSOM-RI Uwe Mueller-Wilm Palermo, Oct ETICS Service Management Framework Business Objectives and “Best.
EMI INFSO-RI SA2 - Quality Assurance Alberto Aimar (CERN) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
INFSOM-RI Training: Browsing and Editing with Web Tools Paolo Fabriani, Engineering Ingegneria Informatica S.p.A. (Italy) ETICS.
INFSO-RI Module 01 ETICS Overview Alberto Di Meglio.
INFSO-RI JRA2: Testing senarious ETICS AH meeting Budapest, Iune 2009 Eva Takacs, Jozsef Kuti, András Milassin 4D Soft.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
INFSO-RI Module 01 ETICS Overview Etics Online Tutorial Marian ŻUREK Baltic Grid II Summer School Vilnius, 2-3 July 2009.
Component Technology. Challenges Facing the Software Industry Today’s applications are large & complex – time consuming to develop, difficult and costly.
INFSO-RI Support for IPv6 in ETICS EGEE’08 Conference, Istanbul, September 2008 Marian ZUREK CERN - ETICS
INFSO-RI JRA 1 Testbed Management Technologies Alain Roy (University of Wisconsin-Madison, USA) ETICS 2 Final Review Brussels - 11 May 2010.
INFSO-RI Module 05 The ETICS Plugins and Compliance Analysis Alberto Di Meglio.
1 CSCD 326 Data Structures I Software Design. 2 The Software Life Cycle 1. Specification 2. Design 3. Risk Analysis 4. Verification 5. Coding 6. Testing.
Conference name Company name INFSOM-RI Speaker name The ETICS Job management architecture EGEE ‘08 Istanbul, September 25 th 2008 Valerio Venturi.
INFSOM-RI Elisabetta Ronchieri INFN CNAF ETICS 2 nd EU Review (CERN) 15 February 2008 WP3 - Software Configuration Tools and Methodologies.
1 CEN 4072 Software Testing PPT3: Making the program fail.
ETICS All Hands meeting B ologna, October , 2006 WP4 Status Eva TAKACS.
JRA2: Quality Assurance Overview EGEE is proposed as a project funded by the European Union under contract IST JRA.
EMI INFSO-RI SA2.3 Metrics Report Eamonn Kenny (TCD) Gianni Pucciani (CERN)
Software Engineering Overview DTI International Technology Service-Global Watch Mission “Mission to CERN in Distributed IT Applications” June 2004.
Adrian Jackson, Stephen Booth EPCC Resource Usage Monitoring and Accounting.
G.Govi CERN/IT-DB 1 September 26, 2003 POOL Integration, Testing and Release Procedure Integration  Packages structure  External dependencies  Configuration.
Survey of Tools to Support Safe Adaptation with Validation Alain Esteva-Ramirez School of Computing and Information Sciences Florida International University.
INFSOM-RI A Quality Certification Model for Grid Research Projects the ETICS feasibility Study Adriano Rippa
EMI INFSO-RI Software Metric Definitions, Reports and Analysis in EMI Authors: Eamonn Kenny (TCD), Gianni Pucciani (CERN) Date: Tuesday 12 th April.
EMI INFSO-RI EMI Quality Assurance Tools Lorenzo Dini (CERN) SA2.4 Task Leader.
INFSOM-RI Report of results of technical session 2: The ETICS build process and metrics collection.
D4Science and ETICS Building and Testing gCube and gCore Pedro Andrade CERN EGEE’08 Conference 25 September 2008 Istanbul (Turkey)
ETICS All Hands meeting B ologna, October , 2006 WP4 Test and Metrics Plugin Framework (WP4) (WP4) Eva TAKACS.
INFSO-RI ETICS The Software Engineering Infrastructure EGEE 08 Istanbul, September 2008 Alberto Di Meglio CERN – ETICS Project manager.
INFSO-RI SA2 ETICS2 first Review Valerio Venturi INFN Bruxelles, 3 April 2009 Infrastructure Support.
INFSO-RI JRA2 Test Management Tools Eva Takacs (4D SOFT) ETICS 2 Final Review Brussels - 11 May 2010.
INFSOM-RI ETICS: E-infrastructure for Testing, Integration and Configuration of Software Alberto Di Meglio Project Manager.
ETICS An Environment for Distributed Software Development in Aerospace Applications SpaceTransfer09 Hannover Messe, April 2009.
INFSO-RI JRA2: Status presentation ETICS AH meeting Budapest, Iune 2009 Eva Takacs, 4D Soft.
EMI INFSO-RI SA2: Quality Assurance Status Report Alberto Aimar(SA2) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
Tool Support for Testing Classify different types of test tools according to their purpose Explain the benefits of using test tools.
LECTURE 5 Nangwonvuma M/ Byansi D. Components, interfaces and integration Infrastructure, Middleware and Platforms Techniques – Data warehouses, extending.
Experiencing in using ETICS, a multi-platform and open source build and test system for big software projects Elisabetta Ronchieri INFN CNAF 5 July 2011,
INFSOM-RI Project Status Update Alberto Di Meglio Project Manager.
INFSOM-RI Elisabetta Ronchieri INFN CNAF ETICS 2 nd EU Review (CERN) 15 February 2008 WP3 - Software Configuration Tools and Methodologies.
INFSOM-RI WP3: WP3: Software configuration tools and methodologies Status Report ETICS All-Hands – 23 May 2007 E. Ronchieri.
INFSO-RI Support for IPv6 in ETICS EGEE’08 Conference, Istanbul, September 2008 Marian ZUREK CERN - ETICS
SCI-BS is supported by the FP7 Capacities Programme under contract nr RI Quality assurance in SCI-BUS project by applying agile testing practices.
WP4: Testing tools and methodologies
Why Laravel Development is the Best PHP Framework
How To Apply Quality Management
DataGrid Quality Assurance
JRA2 – TEST MANAGEMENT TOOLS
Lessons Learned, Future Plans and Conclusions
Plug-in Framework ETICS All Hands – October 2006
The ETICS Build and Test Service
A Complete Software Development Process Using Open Source Software
SISAI STATISTICAL INFORMATION SYSTEMS ARCHITECTURE AND INTEGRATION
Module 01 ETICS Overview ETICS Online Tutorials
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
Chapter 7 –Implementation Issues
AIMS Equipment & Automation monitoring solution
Presentation transcript:

INFSOM-RI WP 4 : Testing Tools and Methodologies Status Report ETICS Review – 15 February 2008 Éva Takács (4D SOFT)

INFSOM-RI Content WP4 in numbers Goals Challenges Distributed testing Achievments Case study Future plans Conclusion

INFSOM-RI WP in numbers 4D Soft: PM – 24 ? UW: PM –18 To be completed following the template

INFSOM-RI Staffing and Resources/ 4D Soft ????? István ForgácsIstván Forgács Tasks:Tasks: – Coordination Etics, Diligent Eva Takács – full time EticsEva Takács – full time EticsTasks: – Implementation of plugins – Implementation and testing of installation modules – Diligent system testing – modelling in ETICS Andor Dirner – 30% Etics, 60% Diligent, 10% system administrationAndor Dirner – 30% Etics, 60% Diligent, 10% system administration Tasks:Tasks: – Implementation and testing of installation modules – Diligent testing 4

INFSOM-RI Deliverables Status ETICS-D4.1-Requirements for unit, functional and regression testing – M6ETICS-D4.1-Requirements for unit, functional and regression testing – M6 ETICS-D4.2-Distributed testing – M12ETICS-D4.2-Distributed testing – M12 ETICS-D4.3-Distributed testing – draft M18ETICS-D4.3-Distributed testing – draft M18 ETICS-D4.3-Distributed testing – final M22ETICS-D4.3-Distributed testing – final M22 5 ETICS 3rd All-Hands Meeting - University of Wisconsin, Madison /05/2007

INFSOM-RI Goals The major goal of WP4 is to realize distributed testing by: Identification and analysis of test metrics Identification and selection of software testing tools and metric calculation utilities Adopting of the selected testing tools and metric calculation utilities to the ETICS build and test system (Test and Metrics Plugin Framework) by plugin implementation Implementation of distributed testing mechanisms

INFSOM-RI Challenges For the WP4 as technical work – –Realising distributed testing – a quite new aspect in software engineering – –Customising existing ‘traditional’ testing technics for cutting-edge new technologies – –Identifying the most suitable open source test tools that fit te best in the ETICS system and could help the users with testing facilities after performing builds and before releasing software packages For 4D Soft as company – –Organisational challenge – being a WP leader as an SME in a project having mostly large academic institutions – –Technical challenge - working with open source operation systems/tools widely adopted by academic institutions in contrast to the industry working mostly with commercially available software

INFSOM-RI Distributed testing in ETICS The aim of ETICS is to provide a distributed build/test framework where the functionalities of the framework and the testing tools are clearly separated. Having these principles in mind in ETICS distributed testing environment consists of four major elements: Test and Metrics Plugin framework – as part of the ETICS client (command line interface) Testing tools and Tools for Metrics collection as plugins of the Test and Metrics Plugin framework NMI/Metronome Build&Test system – as execution framework co-scheduling mechanism – feature that allows automated multi-site deployment and test execution

INFSOM-RI Test and Metrics Plugin Framework In order to host the wide range of testing tools (client-side), without breaking the ETICS’s core functionality, a plugin-framework was developed The goal of the plugin framework can be summarised as follows: Provide an extendible framework for common actions to be performed during build and test executionProvide an extendible framework for common actions to be performed during build and test execution Provide natural separation between specific build and test execution and analysis and metrics collectionProvide natural separation between specific build and test execution and analysis and metrics collection Provide open interface for users to register their own plugins (comercially available tools) to be executed during build and testProvide open interface for users to register their own plugins (comercially available tools) to be executed during build and test Provide raw data for build and test and repository services especially for tracking trends, having statisticsProvide raw data for build and test and repository services especially for tracking trends, having statistics

INFSOM-RI Why using Plugin Framework ? ETICS ships with some built-in plugins but the rational behind using „Eclipse style” plug-in architecture is that most of present and/or future ETICS users will come with some tests and testing tools already in place and of course they would like to use them when working with ETICS Users can plug comercially available testing tools Commercial providers can extend the sytem with their products

INFSOM-RI Examples of metrics provided Static analysis – –Single line of code count (SLOC) – –Cyclomatic complexity – –Depth of inheritance – –IPv6 compliance – –Check style – –Nr of possible bugs Dynamic analysis – –Code coverage – –Memory leaks Test execution – –Java: JUnit – –C++: CPPUNIT (CPPTEST) – –Python: PyUnit – –Shell: shutil – –Script/Executable

INFSOM-RI Implemented Test and Metrics plugins PyUnitPlugin.py (pyton unit tests)PyUnitPlugin.py (pyton unit tests) PyCoveragePlugin.py (pyton coverage)PyCoveragePlugin.py (pyton coverage) PyComplexityPlugin.pyPyComplexityPlugin.py SLOCCountPluginSLOCCountPlugin IPv6PluginIPv6Plugin WSInteroperabilityPluginWSInteroperabilityPlugin JUnitPlugin.py (junit)JUnitPlugin.py (junit) JUnitreportsPlugin.pyJUnitreportsPlugin.py JUnitemmaPlugin.py (emma coverage for junit)JUnitemmaPlugin.py (emma coverage for junit) JCoberturaPlugin.py (cobertura coverage for junit)JCoberturaPlugin.py (cobertura coverage for junit) 12

INFSOM-RI Implemented Test and Metrics plugins JCnnPlugin.py (javaccn)JCnnPlugin.py (javaccn) JDependPlugin.py (jdepend – dependency analyser)JDependPlugin.py (jdepend – dependency analyser) JPmdPlugin.py (pmd – source code quality)JPmdPlugin.py (pmd – source code quality) JFindbugsPlugin.py (findbugs – bug pattern analysis)JFindbugsPlugin.py (findbugs – bug pattern analysis) JRat.py (java profiler)JRat.py (java profiler) CFlawfinderPlugin.py (flawfinder - static analyser for C/C++)CFlawfinderPlugin.py (flawfinder - static analyser for C/C++) CPyPHPRatsPlugin.py (Rats – static analyser for C/C++, Perl, python, php)CPyPHPRatsPlugin.py (Rats – static analyser for C/C++, Perl, python, php) CValgrindPlugin.py (Valgrind – C profiler)CValgrindPlugin.py (Valgrind – C profiler) 13

INFSOM-RI Metrics and their tool support in ETICS MetricsTypeProgramming languages/ technologies ToolEtics Plugin complexitystaticJava/PythonJavancss/ x.pyJCcnPlugin/ PyComplexityPlugin.py design qualitystaticJavaJDependJDependPlugin nr of security bugsstaticC/C++/Python/Perl/ PHPFlawfinder, RATS CFlawfinderPlugin/ CPyPhpRatsPlugin nr of warningsstaticJavaPMD, FindbugsJPmdPlugin, JFindbugsPlugin lines of codestaticallSLOCCountPlugin coveragedynamicJava/PythonEmma/ Cobertura/ coverage.py JUnitemmaPlugin unit test/unit test reportsdynamicJava/ PythonJUnit/PyUnitJUnitPlugin/ JUnitreportsPlugin.py/ PyUnitPlugin.py interoperabilitystaticIPv6/web serviceIPv6Plugin/ WSInteroperabilityPlugin profilerdynamicC/C++/JavaJrat, ValgrindJRatPlugin/ CValgrindPlugin

INFSOM-RI Installation modules Additionally to plugins so-called installation modules have been implemented The aim of installation modules is to assist users in their installation and testing procedure by providing some general purpose installation modules, for example, tomcat, mysql or wscore. The installation modules are components with appropriate test commands to install, start and stop the services on which other test components can set dependencies in order to get those services running before the test is executed.

INFSOM-RI Major Tasks Performed/Achievments Distributed testing facilities are in place Particularly, – –distributed testing environment is in place and co-schedulig mechanism is implemented – –metrics and testing tools have been identified – –Test and Metrics Plugins Framework as part of ETICS client is in place – –approximately 15 test and metrics plugins have been implemented – –general purpose deployment scripts to assist testing have been implemented

INFSOM-RI Case study - Diligent system testing Remote regression testing using the Diligent system testing environment as a private resource – –grid7.4dsoft.hu/grid5.4dsoft.hu are attached to the etics pool Role of regression tests:Role of regression tests: – Initially, to assure the testers that the test environment system is testable. Successfull running of regression tests means for testers that they can start working on the implementing new test cases. – Later on, the initial set of test cases have been augmented with the new test cases implemented by testers.

INFSOM-RI Case study - Diligent system testing Applying Java static analysis plugins for core Diligent services Applied plugins: JFindbugsPlugin, JDependPlugin JPmdPlugin, JCcnPlugin The principal aim here has been to model a system testing environment in ETICS for Diligent components where the java static analysis plugins can run easily in an automatic way on a periodic manner.

INFSOM-RI Future plan As the test execution mechanism assuaring test process reproducibility is in place in ETICSAs the test execution mechanism assuaring test process reproducibility is in place in ETICS the future work in ETICS2 is to implement a modelling environment for creating advance test cases/ test workflowsto implement a modelling environment for creating advance test cases/ test workflows 19

INFSOM-RI Conclusion 20