Creating Multiple Java Class Libraries And Test Suites From A Single Source

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Creating Multiple Java Class Libraries And Test Suites From A Single Source - Presentation Transcript

    1. Creating Multiple Java Class Libraries and Test Suites from a Single Source DEMO Ken Walker, J9 JCL Manager ken_walker@ca.ibm.com Gabriel Castro, J9 JCL Developer and J9 VM Tooling Lead Gabriel_Castro@ca.ibm.com J9 Embedded Java Class Library Team IBM Ottawa Lab © 2007 by Ken Walker, Gabriel Castro – IBM Canada; made available under the EPL v1.0 | March 7th, 2007
    2. J9 VM and JCL History  IBM (ex OTI) VM Team  Current offerings based on the J9 Virtual Machine  3rd generation Java VM from IBM  VisualAge Smalltalk  VisualAge for Java (Smalltalk and Java bytecodes)  J9 Java Virtual Machine (August 1998)  Designed from the ground up to be a scalable solution for embedded, desktop, and server class hardware  Common code base for all Java ME and Java SE products  Highly configurable—pluggable interfaces with different implementations depending on the target market  Class library independence  Class Libraries can change at runtime 2 IBM J9 Class Library Development Demo | © 2007 by Ken Walker, Gabriel Castro – IBM Canada
    3. J9 VM and JCL History continued…  Predated Java 2 Micro Edition  Created 3 Custom Class Libraries  Strict Subsets of J2SE 1.1.8  JCL Xtreme (~100K)  JCL Core (~300K)  JCL Max (~2 Mb)  Implemented in a “Cleanroom” fashion  From specification only  Limited access to network and zero access to source  J2ME Introduced JavaOne 1999  With our preprocessing infrastructure it was easy to migrate to support both “Custom” and “Compliant” Libraries 3 IBM J9 Class Library Development Demo | © 2007 by Ken Walker, Gabriel Castro – IBM Canada
    4. J9 JCL Single Sourced  We do not have separate projects for each target JCL configuration  Preprocessed into correct library subsets of the Master Source  This is done via automated builds and via an Eclipse Plugin for local development J9 JCL Master Source Preprocess -CLDC Preprocess -MIDP Preprocess -Foundation J9c.exe J9c.exe J9c.exe CLDC Source MIDP Source Foundation Source Zip compiled Zip compiled Zip compiled Source of CLDC Source of MIDP Source of Foundation To classes.zip To classes.zip To classes.zip 4 IBM J9 Class Library Development Demo | © 2007 by Ken Walker, Gabriel Castro – IBM Canada
    5. Demo Eclipse Tooling for JCL Libraries Java 5 IBM J9 Class Library Development Demo | © 2007 by Ken Walker, Gabriel Castro – IBM Canada
    6. J9 JCL Unit Tests CLDC classes.zip  JCL JUnit tests are also single sourced  Master contains all test cases  Testcase generator selects test based J9 JCL Automated Test Source on target runtime library API J9 Test Case Generator Produces SRC directory Ready for Preprocessing Preprocess –CLDC The preprocessed SRC Directory J9c.exe the post processed JUnit Test Suite Source Zip compiled source Into TestsCLDC.zip Run tests against j9.exe –jcl:cldc 6 IBM J9 Class Library Development Demo | © 2007 by Ken Walker, Gabriel Castro – IBM Canada
    7. J9 JCL Unit Tests…  Several extensions to JUnit framework  Supports CLDC 1.0 testing  Support exclude lists  Excludes by platform and testname  some platforms are just too fussy  Tests themselves can have preprocessor directives  Both Bootclasspath and classpath tests  On to the demo…. 7 IBM J9 Class Library Development Demo | © 2007 by Ken Walker, Gabriel Castro – IBM Canada
    8. J9 JCL Tooling Summary  Allows the team to single source many varied class libraries  Multi-Stream development would not have been sane  UI Teams also use the tooling for AWT and MIDP LCDUI Development  When a bug is reported  Master source is fixed  Testcase is created matching bug report  Both released back to source control  Distributed builds take over  Create all known class library configurations  Create all test suites  All test suites are executed on varied platforms  TCKs are executed on Compliant Configurations (CLDC, MIDP, etc.)  Build results are posted to the web  Distributed builds happen many times per day or can be individually kicked off by developers on a private build 8 IBM J9 Class Library Development Demo | © 2007 by Ken Walker, Gabriel Castro – IBM Canada
    9. Questions?  Email us: ken_walker@ca.ibm.com , gabriel_castro@ca.ibm.com  Come find us and chat about the technology 9 IBM J9 Class Library Development Demo | © 2007 by Ken Walker, Gabriel Castro – IBM Canada
    SlideShare Zeitgeist 2009

    + Gabriel CastroGabriel Castro Nominate

    custom

    553 views, 0 favs, 0 embeds more stats

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 553
      • 553 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 0
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories