Here is a list of possible projects for the 2010 Google Summer of Code. For more info on next steps, deadlines, expectations and tips for writing your student proposal, visit http://code.google.com/p/selenium/wiki/GoogleSummerOfCode
Silverlight
Summary
Record and Playback of Silverlight applications in Selenium
Tags
Se-IDE, Se2, Silverlight
Status
Draft
Mentor
David Burns
Description
Silverlight provides a rich user experience, but is black box as far as Selenium is concerned. This project would enable Selenium to
- record and playback scripts in Se-IDE
- playback scripts in Se2 using the native bindings (from WebDriver)
- playback scripts in the 1.x RPC style
From an Se-IDE perspective, students would create a plugin for it which will likely need to contain
- additions to the Se API
- new object location strategies
HTML5
Summary
See Silverlight
Selenium Grid 2.0
Summary
Integrate Selenium Grid with Selenium 2.0
Tags
Se-Grid, Se2
Status
Draft
Mentor
Jason Huggins
Description
Selenium Grid provides a mechanism for distributed test execution for Selenium 1.x RC style scripts. This project further enhances that work and extends it to work with the new Se2 type execution.
Selenium 2.0 Python Bindings
Summary
Make the Selenium 2.0 Python bindings production ready.
Tags
Python, Se2
Status
Draft
Mentor
Miki Tebeka, Frank Wierzbicki
Description
The Selenium 2 Python bindings need a lot of love:
- Make sure all browser bindings pass the API tests
- Have setup.py create a working package
- Currently some build steps are done manually
- Fix the remote driver code
- Support Selenium 1 backend
- Make the bindings more "Pythonic" (use of with statement, ...)
- Make sure it's Python 3.x compatible
- Support Jython, IronPython, PyPy ...
Python Templating System Selenium Integration
Summary
Automatically generate tests from a Python templating system.
Tags
Python, Selenium, Template
Status
Draft
Mentor
Miki Tebeka
Description
Allow uses to add special markup to Python template and create a tool that will produce a set of Selenium tests for this template. We'll need to find a way to tell the test the routing information to get this page (maybe another integration) and also server information.
The output test code should run with one of Python's testing frameworks (probably "nose").
Idea from http://tinyurl.com/yeahzfo.
Selenium IDE 2.0
Summary
Selenium 2.0 backend for running IDE test suites via the Se2 Firefox Driver
Tags
Se-IDE, Se2
Status
Draft
Mentor
Adam Goucher, Eric Allen
Description
Selenium IDE is currently built upon Selenium Core for interacting with web pages. Selenium Core has several major limitations, most notably the inability to fire native events. Selenium RC is migrating to using WebDriver in place of of Selenium Core as the underlying browser driver to avoid these limitations, and IDE needs to make the same transition. The bulk of the work involves porting the WebDriverBackedSelenium code to JavaScript. I've already created an asynchronous execution loop and ported the top 10 or so popular commands.
Selenium Mobile Support
Summary
Selenium Drivers for both IPhone and Android
Tags
Se2, Android, iPhone
Status
Draft
Mentor
David Burns
Description
More and more web applications need to be able to support web browsers. These browsers have their own limitations. Selenium 2 is a good way of testing web applications in a browser with the ability to do native tasks. The work that has been done for all of the browsers needs to be extended to work on mobile devices like the iPhone, Android Devices and iPad.
Selenium IDE Plugin: Remote Storage
Summary
Support for Selenium IDE to remotely upload/download scripts using a WebDAV-like API
Tags
WebDAV, API, Selenium IDE, Plugin
Status
Draft
Mentor
Patrick Lightbody, Jérémy Hérault
Description
Currently Selenium IDE can only save and open files on the local desktop. However, as more commercial (Sauce Labs, BrowserMob, Go-Test-It, CloudTesting, etc) and open source (Bromine, Selenium Portal, etc) solutions appear, there is a growing need to support saving and opening files stored on remote systems.
This project would involve creating a Selenium IDE plugin that added new functionality to Selenium IDE, specifically in the form of File->Open Remote and File->Save Remote menu items. If taken further, we could possibly even support some sort of "remote playback" functionality and API.
This project requires both the buildout of a Firefox extension (Selenium IDE plugins are actually Firefox extensions), as well as the specification of an API that other projects can implement as a backend server for storing these files.
Selenium Portal
Summary
A web-based application acts as a front-end to storing and playing back Selenium scripts
Tags
Webapp, Selenium Core, Selenium IDE
Status
Draft
Mentor
Patrick Lightbody
Description
Selenium has two large populations of users: developers and testers. Often the testers don't have the development skills to effectively utilize the advanced Selenium projects such as Selenium Remote Control, Selenium Grid, WebDriver, etc. As such they stick with using Selenium IDE and sometimes Selenium Core, both of which use a simple table-like language for test scripts called "Selenese".
In order to have not only a clean migration path from 1.x to 2.x, but to also better support our tester community, we should make an application specifically geared towards them: Selenium Portal. It would definitely store the Selenese scripts, but it might also be appropriate to store and run scripts in other languages (especially those that can be run in the JVM), such as JavaScript, Ruby, and Python.
This webapp would serve as a storage location for test scripts (ideally implementing the API designed in the "Selenium IDE Plugin: Remote Storage"). It would also interface with Selenium Remote Control and/or Selenium Grid to allow for playing back a single test or an entire test suite and archiving the test results permanently. Other basic features would include authentication, individual user accounts, and maybe even ACLs to allow for defined roles.
FlexMonkey Integration
Summary
First class support for record + playback of webapps that contain Flex
Tags
Flex, Flash, FlexMonkey, Record, Playback, Selenium IDE, Selenium 2
Status
Draft
Mentor
Patrick Lightbody
Description
One of the most popular and full featured open source Flex automation frameworks is FlexMonkey. Unfortunately, FlexMonkey was really only designed to automate applications that were 100% Flex and did not have great support for hybrid webapps that contains Flex components inside of a larger HTML webapp.
Recently the team behind FlexMonkey began initial work on FlexMonkium, a bridge between Selenium and FlexMonkey. So far their work has required no changes to Selenium, but we anticipate that both projects will need to make some changes in order to integrate nicely.
Because of license incompatibilities (AGPL vs Apache), this work must be delivered as a plugin. We anticipate that there would be a plugin for Selenium IDE to do recording, as well as a plugin for Selenium's various language bindings for playback.

Comments (3)
Apr 05, 2010
yasas Bulumulla says:
Hi all I am a final year university student of university of peradeniya. I am i...Hi all
I am a final year university student of university of peradeniya. I am
interested in the project Record and Playback of Silverlight
applications in Selenium. Is any one else interested in that project.
In the projects page it says David Burns is the mentor of the project.
Next two days I hope to submit the proposal.
I have went through the selenium documentation although haven't use it
in a real time project. Very much keen to learn the tool.
Like to hear regarding this from developers.
How can I contact the mentor. Is there a specific template when submitting proposals to Selenium projects.
Cheers.
Apr 06, 2010
David Lee says:
Hello I just recently found out about google summer of code. But I am also inte...Hello
I just recently found out about google summer of code. But I am also interested in the python programming projects. I was wondering if there was a template as well. If you could get back to me that would be great.
-David
Apr 06, 2010
Grace Law says:
Hi Yasas and David, Thank you for your interest in Selenium-GSoC. We are ...Hi Yasas and David,
Thank you for your interest in Selenium-GSoC. We are still taking applications for both Silverlight and python projects.
Application guidelines and student expectations are available here:
http://code.google.com/p/selenium/wiki/GoogleSummerOfCode#Application
http://code.google.com/p/selenium/wiki/GoogleSummerOfCode#Expectations
Note that our mentors can give you suggestions to refine your proposal after April 9. Internally, we will match students with mentors and finalize that decision on April 18. Google will announce students that are accepted to this program on April 26.
Please introduce yourself and send your questions to the developers at here or on IRC #selenium on freenode.
Feel free to email me directly if you have any questions that is not covered here .
Hope that helps -
Grace Law
GSoC coodinator for Selenium