Paul Grandjean Presents: A Tool Prototype for Configurable Selenium Code Generation
- Has writing css locators become tedious?
- Would you like to have QA personnel with no Selenium skills contribute to the automation?
- Do you need to reduce the time it takes to automate tests?
- Could you use Selenium examples specific to your Application for training personnel?
I've been working on a solution to these issues. I have written a prototype tool that generates Selenium code based on the application's HTML. My Selenium code generator writes WebElements and locators along with the methods to support them. The tool is configurable to support any of the Selenium supported languages. It also allows the user to decide which html tags will be used for code generation. The generated code results in a page object class definition. I've been looking forward to sharing this for awhile and have now completed enough to show a demo and explain how it works. I think you'll find it interesting.
About the Speaker:
Paul was first introduced to Selenium in 2008 while working as the lead QA engineer for an American company while based in Prague, Czech Republic.
Working alone with few resources, he was painfully aware of the lack of documentation. Using the Selenium user's and developer's forums, Paul kicked off an effort to write the first Selenium documentation. From Prague, he lead a team including three others from India, the UK, and Argentina to write the original Selenium 1.0 documentation. Their efforts are still posted under the Documentation tab at www.seleniumhq.org
Since then, Paul has developed test suites using Selenium IDE, Selenium-RC, Selenium-Flex and Selenium-WebDriver. Currently, he is developing his second test suite using the Selenium 2.0 WebDriver API. After attending the Selenium Conference last spring, Paul has become a passionate advocate of using the Page Object test design pattern for building highly maintainable and extensible test suites. Paul continues to be involved with the Selenium documentation as his time allows.