OpenJDK Test Fest


The London Java User Group in association with Oracle and IBM invite you to the first OpenJDK 'TestFest' event.

Similar in style to a HackDay, this all-day event is an opportunity to learn more about OpenJDK unit testing, how to write testcases for OpenJDK and maybe even find some bugs in JDK8.

To guide you through this day we've enlisted some well known Development and QA figures from OpenJDK. If you are interested in how QA works for a large project like JDK8 , have contributions you need help with in creating testcases or just want the opportunity to help improve the quality of JDK8, this day is for you.

There are only 27 places available - first come first served.

When: Saturday March 23rd 2013

Where :

Oracle Corporation UK Ltd.
Cook Room, 5th Floor
One South Place

A large glass fronted building on the corner of Moorgate/City

Lunch and refreshments provided


Why are we holding a TestFest event? The simple answer is that OpenJDK needs more open testcases. Contributors to OpenJDK need to be confident that their changes are sound and do not cause problems elsewhere. The available testcases in OpenJDK are a great starting point. We want to build on those tests and expand both the number of tests and the test coverage of the JDK. We want to create a larger, more comprehensive, test suite for OpenJDK and we need your help to do that. This event is intended to help you learn more about the art of Quality Assurance and help the OpenJDK community determine if HackDays with a QA focus will be effective.

Who's going to be there?

Guest presenters from Oracle and IBM: Alan Bateman, Alexandre Iline, Stuart Marks, Rory O'Donnell, Steve Poole, Neil Richards, Paul Thwaite, Balchandra Vaidya,

Skill Level

Able to write Java programs and have some experience with writing testcases


09:40-10:00 am Doors Open
10:00-10:10 Introduction
OpenJDK and Quality Assurance: Challenges and Progress

10:10-10:45 Openjdk test suite: Overview
What test suites we have

Structure of test suites

How we run the tests

When we add tests

The issues we have with tests

10:45 - 11:15 Introduction to the JTReg tool
How to use it and how to understand its output

11:15 - 11:45 Hands on session - write your first JTReg testcase for OpenJDK
A simple,get set-up, exercise to make sure everyone is ready

11:45-12:15 Tutorial - Understanding how to design and code good testcases
Just like good code, good testcases need to be designed.

Learn the basics of how to design testcases in general, and for OpenJDK in particular.

12:15-12:45 Lunch and general Q&A of the morning.
12:45-13:15 Afternoon session introduction
A quick outline how the rest of the day will work.

We'll provide a list of candidate areas in JDK8 you might like to tackle

13:15-15:30 Hands on session
Write and run testcases with assistance from the team

15:30-15:40 Checkpoint: Feedback from the attendees.
15:40-16:30 Hands on continues with those who wish to stay.
16:30:17:00 Wrap up and collection of new testcases etc.
Preparing for the day.

1 - Sign the OCA

Contributing tests to OpenJDK stiil requires that you have signed the OCA. So the first step is simple: sign the OCA.

The OCA process can take up to two weeks to complete. So we encourage you to start right now.

Information about signing the OCA and what it means to be a Contributor are available here and here

2 - Install the JTReg tool and read the tutorial

Instructions are available here

3: Have a cloned copy of OpenJDK JDK8 source

e.g hg clone jdk8local

4 - Have a copy of the JDK8 EA binary or the ability to build your own OpenJDK.

EA Builds are available here

5 - Have an idea on an area of the JDK you might want to work on.

Maybe even try to write a simple java test in an area you're are familiar with. Some ideas to get you thinking:

* Tests for specific classes in Cobra, JDBC, JAXP etc.
* Find a bug on and write a testcase for it.
* Pick one of the new features in JDK8, read the javadoc and write a testcase to prove the behaviour
* How about a edge case you might have encountered in the past - write a testcase to demonstrate it.
* Use your personal domain knowledge. How about JSR 310? you know how date and times are supposed to work - see if you can break the implementation.

On the day

Bring a laptop and a power supply (don't forget it!) with all the software listed above installed. Doors open at 9:40.

Oracle Security will have a list of attendees. Valid attendees will be guided to Oracle offices on the 5th Floor where the receptionist will greet them. (Walk-ins will not get past security!)