TesterHQ - The Evil Tester Blog Aggregator

Nov 1, 2012 - 1 minute read - Selenium Simplified Blog WebDriver

Online Selenium WebDriver with Java Course Released

I have just released my “Selenium 2 WebDriver Basics With Java” course. The course offers hours of video instruction, covering the WebDriver API and using Java as the programming language. Completing all the exercises should take you an addition 5-6 hours. After you complete my free online course “Start Using Selenium WebDriver with Java” with IntelliJ then you’ll have your environment setup ready to follow the larger course. Because of the time involved in creating such a large course – over 200 slides and 4000 lines of example test code (as reported by MetricsReloaded), I have to charge for it.

Sep 26, 2012 - 2 minute read - CompendiumDev WebWatch

Links, Tools, Magazines and Stuff from the archives

I trimmed out some deadwood from the blog (it went back to 2001!). Early on in the blog I used to post a lot of links, they were like tweets before twitter. Some are still valid and useful, but the posts are not so I’m collating the stuff I thought useful below: Magazines Free Software Magazine [In]Secure - security magazine Crosstalk Software Test & Performance Methods & Tools Newsletter Useful Links xunit test patterns Peter Alfeld’s handy summary of “How to solve it” by G.

Sep 21, 2012 - 1 minute read - Links Selenium Simplified Blog

Creating your CSS and XPath locators

_I mainly use FirePath to create my CSS and XPATH locators. I also use the built in tools in Opera and Chrome._ I have an out of date and old post over on EvilTester.com “Use firefinder to help you construct Selenium CSS Selectors”. I rarely delete out of date posts, but I don’t use Firefinder any more. In Firefox use FirePath, this also runs as a Firebug addin and allows you to explore and experiment with CSS and XPath locators.

Sep 7, 2012 - 1 minute read - Maven Selenium Simplified Blog

Installing Maven for WebDriver on Windows 7

Just a quick post in case anyone else stumbles into issues configuring Maven on Windows 7 when you really just want to dive into WebDriver. I tried to follow along with the instructions for installing Maven on the maven site. http://maven.apache.org/download.html#Installation The original writer wrote the instructions for Windows 2000 and XP, so I shall assume they work on Windows 2000 and XP. For Windows 7, I found that if I created an M2 variable then, because alphabetically it comes before M2_HOME in a search, that M2_HOME did not expand in the paths.

Aug 31, 2012 - 3 minute read - Entertainment Evil Tester

Captcha as a modern EVP

“Clearly robots would try to take over the world and make the entire human race subservient if they could get their evil metallic hands on the kind of software I buy” The last time I had to test a Captcha I found it very difficult. It killed our automation It made our manual testing really slow We had to tweak it to make it cope with the human ability to reinterpret “garbage in” so it would produce less “garbage out”, which made it less random It was a third party thing which we had very little control over Benefits:

Aug 22, 2012 - 2 minute read - Selenium Simplified Blog WebDriver

FluentWait with WebElement

My synchronisation strategies with WebDriver have generally revolved around the WebDriverWait and creating custom ExpectedCondition objects. When I first saw the FluentWait, I dismissed it as a slightly more customisable version of the WebDriverWait. But then I looked more closely at the signature of the constructor, and I noticed the Generics being used. The use of Generics means I don’t have to pass in a WebDriver, I could use a WebElement, or a By, or anything I want really.

Aug 21, 2012 - 3 minute read - Selenium Simplified Blog WebDriver

Categorising WebDriver–Navigation, Interrogation, Manipulation

Hands up who uses generalisation in their modelling strategies? Me too! I’ve worked through the WebDriver API in some detail and as part of figuring out a way to replay the API back to people learning WebDriver. I have adopted 3 main classifications: Navigation Interrogation Manipulation My 4th categorisation has resulted in fewer methods: Synchronisation I initially expected to find more in the Synchronisation category, since the strategies around synchronisation often consume a lot of automation time.

Aug 18, 2012 - 2 minute read - Selenium Simplified Blog WebDriver

Advanced User Interactions and the expletive machine

For the life of me, I could not get User Interactions to work properly. They just wouldn’t work. They used to work, last time I tried them. But now… new Actions(driver).keyDown(Keys.CONTROL). sendKeys("b"). keyUp(Keys.CONTROL). perform(); ”!*&^*&£$“, as old comics used to illustrate the expletive. I found I wasn’t alone on the forums. I used a simple user interactions experimental page which had enough to let me see what was happening: key_click_display.html

Aug 17, 2012 - 3 minute read - Selenium Simplified Blog WebDriver

Because sometimes it's hard... some tips for "Working with WebDriver"

"They" should pass a law requiring all titles to utilise alliteration. I can see why people find it hard to work with WebDriver, particularly people new to the tool. Over the years I have learned to expect constant change from the Selenium toolset. After all, the ongoing betterment of web automation worldwide must continue. The API changes. Sometimes it works in this browser sometimes it doesn’t, sometimes a browser upgrade breaks Selenium.

Aug 3, 2012 - 2 minute read - Selenium Simplified Blog WebDriver

A minimal WebDriver based DSL

I read on the Wikipedia entry for Selenium, that Selenium 2.0 aims to provide a base for your own DSL (Domain Specific Language). “What might such a language look like?” I thought to myself. Well, I’ve build DSLs before, but I really thought “What might the minimal DSL that I could create look like?” And so, we proudly present. The FluentWebElement. Yes, all you Seleniumists and Webdriverites, now you too can write: