Presentation is loading. Please wait.

Presentation is loading. Please wait.

M. Gallas IT-API LCG SPI project: testing1 Software Testing Infrastructure status LCG Software Process & Infrastructure (CERN, 10/23/02)

Similar presentations


Presentation on theme: "M. Gallas IT-API LCG SPI project: testing1 Software Testing Infrastructure status LCG Software Process & Infrastructure (CERN, 10/23/02)"— Presentation transcript:

1 M. Gallas IT-API LCG SPI project: testing1 Software Testing Infrastructure status LCG Software Process & Infrastructure (CERN, 10/23/02)

2 M. Gallas IT-APILCG SPI project: testing 2 Index: Overview Unit-test Unit-test frameworks CppUnit Oval Unit-test structure and documentation Status & future plans

3 M. Gallas IT-APILCG SPI project: testing 3 Overview: LCG applications area project: software testing will be an integral part of the software development process All level of software testing should be run as part of an automatic process Software testing: We will select : simple techniques, tools and methodologies run the tests in automatic way SPI project Integration test System test Software testing Unit test (work package test) Individual developer domain

4 M. Gallas IT-APILCG SPI project: testing 4 Unit Test: Unit-tests Should validate expected functionality at the level of: individual class small groups of collaborating classes work package Important code should have unit tests Tests should be written together with the code Code should pass all unit tests before it can be released Software developer CODE Test programs Automatic software test run process Unit-test SPI component (Version 1) Test execution framework Testing naming and structure Test case specification template Code Documentation

5 M. Gallas IT-APILCG SPI project: testing 5 Unit-test: Test frameworks (I) Our constrains: Avoid commercial software and licensing problems. Avoid “do it yourself solutions” Try to adopt commonly used open-source software. Aim: to help developers: Our inputs: Contacts within HEP-community (CMS and G4 mainly, until now). What is available as free open source code. What we are doing: Trying CppUnit and Oval in the LCG-POOL project Preparing “HowTo” documents to make easier the installation of these tools and the start with process Our plans: Analysis of the CppUnit and Oval tools in the POOL environment. Feedback from the experiments and big HEP software projects. Deliver and document the component soon. to produce code for unit-testing to run tests in automatic way What we propose: CppUnit Oval

6 M. Gallas IT-APILCG SPI project: testing 6 CppUnit: Like JUnit but for C++ http://sourceforge.net/projects/cppunit USED: in eXtreme Programing (XP) proposed for DataGrid Test frameworks (II): CppUnit A simple testA simple test: 1.Subclass the TestCase CppUnit class 2.Override the method runTest(). 3.When you want to check a value, call CPPUNIT_ASSERT(bool) and pass in an expresion that is true if the test succeeds Similar tools: Junit, PerlUnit, PyUnit, QtUnit Output in XML, compiler or text Windows version for MVC++6.0 Just starting in LCG-POOL project (1 test running)

7 M. Gallas IT-APILCG SPI project: testing 7 Test frameworks (II cont ): CppUnit

8 M. Gallas IT-APILCG SPI project: testing 8 Test frameworks (III): Oval Ovalfile (configuration) Executable Test Source Code Reference file Log file Oval run Oval diff Oval build Can be use for Unit-test. It is possible to set different run environments. Can run external scripts and external binaries. Authors modified it to run it with or without CMS specific environment (SCRAM …) (Thanks to David Chamont for the changes) Just starting in LCG-POOL project (1 test running) Oval: validation and regression used in CMS

9 M. Gallas IT-APILCG SPI project: testing 9 Test frameworks (III cont ): Oval

10 M. Gallas IT-APILCG SPI project: testing 10 Unit-test: structure and documentation SPI-TESTING component SPI-CVS_structure component CVS testing structure Test-naming  Will help to have a automatic way to run test code Test documentation: Test cases specification template srcdoctest testAtestB Ovalfile Nametest.ccp Nametest.ref Nametest.log [Nametest.in] [Mametest.out]

11 M. Gallas IT-APILCG SPI project: testing 11 Unit-test: documentation

12 M. Gallas IT-APILCG SPI project: testing 12 Status & Future Plans: Future Plans: Produce a first version of the SPI- Testing Component (V1) which will provide: - unit-test organization - test execution framework - test documentation and templates - complete user-documentation Feedback with the HEP experiments and big software projects. Status: Installing the component Supporting the component at POOL project Doing some test cases with them Preparing Howto’s

13 M. Gallas IT-APILCG SPI project: testing 13 INDEX review: Overview Unit-test Unit-test frameworks CppUnit Oval Unit-test structure and documentation Status & Future plans Thanks to: contacts within the experiments LCG-POOL team D. Chamont (Oval) Howto for installation and examples will be available soon… Feedback and interaction are always welcome!!


Download ppt "M. Gallas IT-API LCG SPI project: testing1 Software Testing Infrastructure status LCG Software Process & Infrastructure (CERN, 10/23/02)"

Similar presentations


Ads by Google