Abstract

The goal of Windmill is to build the best tool for automated testing of dynamic Web applications across all major browsers.

Proposal

Windmill provides a full-stack automation solution for dynamic Web-application testing.

It accomplishes this by implementing an extensive test API in JavaScript, and providing an intelligent proxy that can overcome the browser's same-domain security policy. The test API allows a single test to run on every major browser across all major operating systems.

Windmill boasts a wide range of debugging and test-authoring tools that make test writing, debugging, and editing a more streamlined process.

Background

Windmill was created at the Open Source Applications Foundation by Mikeal Rogers and Adam Christian to test the Chandler Server Web UI. It was announced more broadly at OSCON 2007 and has since enjoyed a wide range of use and contributions.

In January 2008, all the full-time, paid contributors from OSAF moved on to other employment. The project has since retained steady contribution despite having no full-time, paid contributors.

In July 2008, we proposed the project move its hosting away from OSAF because of uncertainty about long term sustainability – due to OSAF's transition to a smaller-scale, mostly volunteer structure.

Rationale

Windmill was created to fulfill a need for a better dynamic Web-application testing tool after much frustration with existing solutions. We believe it has accomplished this goal and continues to improve, with ongoing, open interaction with the community.

What the project currently lacks is clear direction, leadership, and process. We believe the project would benefit greatly from Incubator mentorship, which would allow it to see much wider adoption, and grow a broader community.

Current Status

Meritocracy

Since the project's inception, its development has been coordinated through collaborative decision-making (e.g., "+1 voting") on the mailing list, and open discussion on IRC.

Community

Although the list of Core Developers has remained small we’ve welcomed outside contributions. Along with a few small but good patches, we’ve received some very good bugs and numerous features requests from the community. Our wiki documentation is being continually improved by our users.

We also have a very good reputation of providing support and resolving problems on IRC (#windmill on irc.freenode.net).A number of our users have stayed around to help others in need.

Core Developers

Mikeal Rogers (Most of the Python code) Adam Christian (Most of the JavaScript code)

Alignment

Since Windmill was started at OSAF, it has enjoyed contributions from a variety of paid staff at OSAF. All of those employees are now employed elsewhere – below are the ones that are still active.

  • Mikeal Rogers (Mozillla)
  • Adam Christian (Slide)
  • Matthew Eernisse (Seesmic)

Known Risks

Orphaned Products

The project has survived the loss of paid contributions and continues to grow in use, despite a clear lack of leadership (I have only myself to blame).

Inexperience with Open Source

All the contributors have a history in open-source development and the policies of the project were developed with the help of Ted Leung.

Reliance on Salaried Developers

As of July 2008 one developer is paid part-time for his work on Windmill. The rest of the contributions are all volunteer at this time.

A Excessive Fascination with the Apache Brand

One can’t ignore the impact the Apache brand has on a project, but what this project needs isn’t branding – it’s the benefit of Incubator mentorship, direction, leadership, and process.

Documentation

http://windmill.osafoundation.org/

Initial Source

The code is currently hosted on OSAF’s Subversion server.

http://svn.osafoundation.org/windmill/

Source and Intellectual Property Submission Plan

We’ve gotten consent from OSAF to move the project to new location.

External Dependencies

We have a long list of external Python dependencies. These dependencies are managed via setuptools and are not distributed with the Windmill product and as such should not need be a licensing concern.

Required Resources

Mailing lists

  • windmill-commits
  • windmill-dev
  • windmill-users

Subversion Directory

https://svn.apache.org/repos/asf/incubator/windmill

Issue Tracking

JIRA Windmill

Initial Committers

  • Mikeal Rogers
  • Adam Christian
  • Matthew Eernisse

Sponsors

Champion

Ted Leung

Nominated Mentors

  • Ted Leung
  • No labels