TesterHQ - The Evil Tester Blog Aggregator

Aug 30, 2013 - 1 minute read - FAQ Java Selenium Simplified Blog

FAQ: Why are my JUnit asserts showing as deprecated

I tend to use Hamcrest’s AssertThat now, but I still write Assert in some of my example code. JUnit has a tendency to move code around, but it deprecates the old code, and there is usually a comment in the JUnit code somewhere explaining what to use instead. But a common question on the Start Selenium WebDriver course relates to “Why are my asserts deprecated” and its usually because JUnit codebase has changed.

Aug 30, 2013 - 4 minute read - Evil Tester Exploratory Testing Technical Testing

How would you check that a www web site redirects to a mobile site?

Normally I add my automation posts to SeleniumSimplified.com but this particular case study demonstrates how I think about testing and incorporate automation into my test approach. The scenario you face as a tester: You have a main web site www.eviltester.com You have a new mobile site m.eviltester.com You have a set of redirection rules that take you from www to m. based on the device And the device is identified by the user-agent header string e.

Aug 22, 2013 - 1 minute read - Java For Testers Maven

Maven Troubleshooting FAQs and Tips

We use Maven in the Java For Testers book. Once you have Maven running it tends to work fine. You mainly experience problems when you initially install it, at the point when you know how to nothing with Maven. I listed the main steps and actions I take in a pdf which I released to Slideshare and Google Docs. Tips are: Debug maven issues from the command line, not from the IDE Read the Error Messages Work through “Maven in 5 Minutes” Compile without running the tests Try and download manually Set the proxy settings Read the official FAQs Find more hints and tips lists Force an update of the dependencies Delete your local repository cache Force a purge of the local repository Look at the effective pom and settings Use the dependency tree view Experiment and try and fix it yourself Nothing Earth shattering there.

Aug 22, 2013 - 1 minute read - FAQ Maven Selenium Simplified Blog

Maven Troubleshooting Tips and FAQs

I’ve released a lot of videos showing how to get started with Maven and Selenium. They tend to help people see that the actions are possible, but if they run across an individual issue for their environment they may not know exactly what to do. On my Selenium WebDriver course I had a list of Maven Troubleshooting Hints and Tips. I’ve just released that to Slideshare as a pdf. Pretty simple stuff, but I’ve had to do all of these.

Aug 17, 2013 - 3 minute read - Practices Selenium Simplified Blog WebDriver

Helper Classes for SlowLoadableComponent Page Objects

I generally caution against ‘Helper’ classes and Static Helper classes when I’m consulting for automation. e.g. PageObjectHelper, or ApplicationHelpers, or StringHelpers etc. Because ‘generally’, these ‘Helper’ objects mean “We created a class to dump stuff in because we couldn’t figure out how to model our abstraction layers” and often, people then dump more and more methods into them such that they become an undisorganized and unmaintainable mess. Just so you know where I’m coming from here.

Aug 17, 2013 - 2 minute read - Practices Selenium Simplified Blog WebDriver

A Fluent Page Object Approach - return this

Another simple tip, but I use this a lot. Return ‘this’ from your Page Object methods   e.g. QueNessSlowLoadingExamplePage page4 = new QueNessSlowLoadingExamplePage(driver); page4.get(); page4. setName("Bob Dobbs"). setEmail("b.dobbs@mailinator.com"). setMessage("Hello There"). sendMessage(); In the above code I have a Page Object called QueNessSlowLoadingExamplePage which handles this example over at QueNess.com And you can see that the setName, setEmail and setMessage are all ‘fluent’ in the sense that they return ‘this’ so I can chain them when using the Page Object.

Aug 16, 2013 - 2 minute read - FAQ Maven Selenium Simplified Blog

Maven Proxies and Troubleshooting 404 errors

Maven is one of those tricky little tools that I avoided moving to, because it looked a little complicated with its xml file and declarative nature, whereas with Ant it was nice and procedural and easy to understand. I’ve grown to appreciate how simple maven allows me to keep my project, and I often avoid libraries that don’t publish themselves as maven dependencies because then I have to manage them myself.

Jul 29, 2013 - 4 minute read - Courses Selenium Simplified Blog

Certificates of Completion Controversy

Udemy have started offering Certificates of Completion.But not for my courses. I opted out. Why? Well, I have some issues with the notion of certification which I blogged about a long time ago. But these are certificates of completion, not a certification! True. But… I don’t agree with the wording I don’t agree with the definition of completed I don’t agree with the use of the word ‘successfully’ I don’t like a facsimile of my signature being used without my permission I think it incentivises the wrong behaviour I will not devalue the course Udemy created the certificate, and I have no control or configuration over the wording of the certificate:

Jul 24, 2013 - 7 minute read - Practices Selenium Simplified Blog

How to write a keyword driven test framework - an historical perspective

I don’t really like keyword driven frameworks. For a whole bunch of reasons that I won’t go into now, since you came here to learn how to write them. Well, here’s the secret… This is old tech. Older than old. In fact, when I see it being promoted as ‘state of the art’ I’m amazed, and a little disappointed. The first book I read that relates to this was “Write your own adventure programs for your Microcomputer”, back in 1983, and it teaches the basics of how a keyword driven framework works.

Jul 23, 2013 - 5 minute read - Evil Tester Rants Technical Testing Techniques

Don't go live with simple security problems - 10 tips to help

I feel anger when I stumble across very, very, very simple security issues. Especially when they compromise my data. Yes I do. And I hope, as a tester, that you do too. But I face a problem… As a tester, I can’t say “Did no-one test this!” because I know that they might have done, and someone else might have chosen to go live anyway. But on the off chance that no-one did ‘test this’, I offer you this post.