5ee1f07bacba7b397867bff34921a585.ppt
- Количество слайдов: 8
A Bluffer's Guide to Selenium 2 By: Simon Stewart & Anthony Long
What Is Selenium / Sel 2 / Webdriver Selenium is a test automation framework that interacts with a browser via javascript. Webdriver is a test automation framework that interacts with the browser directly. Selenium 2 is the merging of the Open Source "selenium" and "webdriver" projects. The most recent release is Selenium 2. 0 a 4. It's really rather good.
Alphas!? Alphas - finish "baking" the new APIs • Mostly done o Need to add the advanced user API o and handling alerts and prompts • What's there is stable: we're only adding methods now • Timeline: ~2 months Betas - Implement all APIs in all supported browsers • Supported browsers? o Firefox 3 -latest, IE 6 -latest, Chrome, Android, i. Phone • Timeline: Unknown Release - As beta, but equal support for Python, Ruby, Java and C#
How Does It Differ From Selenium 1 Two major differences: • Not trapped in the JS sandbox o So there's a way to handle "alerts" on window load cleanly. o Better emulation of user input, such as clicking and typing. • Cleaner API o So it's easier to write and maintain code. o Far less confusion about which method to call.
Why Change? • The OSS team are now focusing almost all their effort on Selenium 2 • Better support for IE o Still a huge part of the market • Support for testing mobile browsers o Will form a large part of the market in future • Buy-in and support from browser manufacturers: o Opera o Chrome • Becoming used by a broader range of OSS projects o Not only Selenium, but also Watir o More eyes and users means bugs detected more quickly o And fixed more rapidly!
How Do I Migrate? • Download Selenium 2 • Drop JARs into CLASSPATH o Using Selenium 1 tech, but with the new classes available. • Replace "Default. Selenium" with "Web. Driver. Backed. Selenium" o An implementation of selenium using the new technology o Inefficient, but allows a managed migration. • Migrate code to the new API on an "as needed" basis o Suggestion: when you edit a file using the old API, move to the new one
What's Coming Up? • Advanced User Interaction API: o Allows you to model "click here, then hold shift, click on these three elements, release shift, and drag everything over here" o Will be necessary for complex applications o Selenium 2. 0 a 5 or 6 • Implicit Waits: o The framework will wait for an element to be present before continuing o Timeout easy to control o Preview in Selenium 2. 0 a 4, fully implemented in 2. 0 a 5 • Android support: o Selenium 2. 0 a 5
If You're Working on the Selenium Code Itself • Shared JS o JS is great for querying the DOM o Shared JS functions between all webdrivers and Selenium 1. x o Dramatically easier to fix issues to do with JS in all browsers • Simplified Build Grammar o Hey, it matters to us : ) • To build: o svn checkout http: //selenium. googlecode. com/svn/trunk/ selenium-read-only o rake build o cd build/
5ee1f07bacba7b397867bff34921a585.ppt