Is there a business reason for PushToTest to be at JavaOne in 2009? Well, not exactly. The PushToTest open source community is 1/3 developers, 1/3 testers, and 1/3 IT managers and CIOs. We can reach these audiences through other means. So why JavaOne?
Gregor Hohpe, gave a good explanation: “JavaOne and OOPSLA are the conferences that bring out the big ideas.” While JavaOne and OOPSLA may have faded a little in recent years they have philosophies that inspire people to create new inventions and not be satisfied with the current technology. While I attended an excellent party at JavaOne thrown by the RedMonk guys that was billed “The Sun Wake,” I found that it was more of a celebration of what we accomplished over the past 14 years of JavaOnes.
With emotion in his voice Scott McNeally, Chairman at Sun Microsystems, told the audience of 13,000 (est), “All the way to Mars and the four corners of the world, I’m proud of what you have done with Java.” With that the JavaOne 2009 conference began. Here is what I heard, saw, and found.
Selenium, Windmill, Mozmill
The Windmill team impresses me because they understand the need for testing beyond the
Web browser. For example, the same team delivers Mozmill for testing Mozilla XUL-based applications.
PushToTest, announced ScriptRunners for Windmill and Mozmill in TestMaker, our open source
test automation platform. TestMaker support gives Windmill and
Mozmill support for repurposing tests as functional tests, load and performance tests, and business service monitors. Plus TestMaker enables data driven testing, step-time recording, and results analysis functions in Windmill and Mozmill tests. The Windmill team discussed their product roadmap with me: We will be spending some time refactoring the proxy forwarding logic and adding some new APIs to the proxy. This will also include the cookie work that was cut from 1.2. This will also begin to prepare the code base for the windmill2 transition.
Selenium, Windmill, HTMLUnit and the other test projects are all contending with Ajax based application challenges. The asynchronous nature of Ajax applications requires tests to include synchronization instructions to make sure the test is not operating faster than the application. Mikeal Rogers and Adam Christian of the Windmill team told me they were looking at implementing automatic waiting for elements before calling actions on them. They told me this feature deserves some discussion. I think it is a great idea and they should start kicking around an API discussion.
Christian said “We'll need to figure out how wait variables are passed in a unified way to any test controller function and how to send the start and endtime information for both the wait and the controller actions for each test controller call.”
Java Development and Management Merging
Reducing the time it takes a Java developer to build an application is valuable to organizations. SpringSource is betting that making management of the resulting Spring-based application easier will unlock huge new benefits to organizations. This is the reasoning behind the Spring-Source Hyperic merger. I had a chance to speak with Rod Johnson (CEO) and Javier Soltero (CTO of Management Products) of SpringSource. Johnson and Soltero make a happy pair. They even finished each other’s sentences at times. This seems to be a continuation of their earlier technology partnerships.
For example, Spring Enterprise comes with Hyperic HQ. Spring uses AspectJ technology to transparently instrument enterprise applications. I have a business interest in understanding Spring’s management technology for Java enterprise applications. PushToTest built a monitoring API that reads performance metrics from Glassbox. Glassbox integration comes in TestMaker 5.3 and provides correlation for root cause analysis and mitigation. PushToTest designed its monitoring API (PTTMonitor) to read other performance monitoring systems through the same JMX interface that Spring uses to publish performance metric. Look for an announcement from PushToTest shortly!
Spring-based applications are automatically instrumented for monitoring and management. Hyperic then monitors internal operations and presents the data as a set of dashboards, consoles, and reports. On the face of it the merger makes business sense too. Johnson told me owning an open source business is nothing different from anything else: “Pre-revenue requires hand waving. Hyperic had million dollar revenue streams and a definable growth rate.”
Johnson said SpringSource aims to achieve $1 Billion in sales and make its IPO in 18 months. That would certainly make SpringSource’s venture capitalists (Benchmark and Excel) happy. Soltero gave some details on the upcoming product roadmap for the combined companies. Cloud management announcements are coming down the track. They are getting rid of JBoss and will do new development based on Spring. Hyperic Sigar low level parts are going into other parts of Spring. SpringSource’s reach into management may extend beyond Java enterprise applications. Johnson told me SpringSource contributes to the Apache group httpd server.
Johnson told me the black box nature of PHP and Ruby on Rails improves developer productivity but lacks the visibility into the internals to make it manageable. Java has JMX, .NET has Perflib and CLR application management. Java and .NET have a centralized management model that you can plug into, including performance counters, service and statement management. Johnson said, “With SpringSource we can make JMX and related capabilities leveraged past the ISVs.”