TestNG is a great tool for running tests and has some advantages over JUnit and other commonly used unit test frameworks. I personally like being able to configure test suites easily with an XML file and have the suite definition separate from the tests themselves. I also like the Maven plugin, which combined with the XML suite definition, allows for a lot of flexibility in running combinations of tests and configurations via Maven. Conversely, one thing that is not very built-out about the framework is how test parameterization works (specifically that DataProviders are only supported as Object arrays). Continue reading
TestNG Parameterization with CSV Files by Keys
3 SepThe Right Questions for Interviewing Testers
29 JulSo you’ve decided to hire testers. Good for you. I know there are some organizations that may have misconceptions about the role of testers in software engineering, and some individuals even make the case that they don’t need testers. Joel Spolsky from Joel on Software previously articulated and debunked some of the more common of these misconceptions in his post Top Five (Wrong) Reasons You Don’t Have Testers. One of the interesting parts of this article, other than the responses to the misconceptions, which are dead on, is when Joel addresses “Anybody qualified to be a good tester doesn’t want to work as a tester.” He mentions that it is difficult to find good testers and that “like programmers, the best ones are an order of magnitude better than the average ones.” Anyone who has worked with testers before knows this to be true. So how do you determine which testers are a magnitude better and measure for this in an interview? Continue reading
Scalable UI Testing with Selenium
28 MayThe last couple blog posts I have written have not been technical in nature, and given the information I originally intended to be discussed on this blog (testing at startups), I feel compelled to discuss a subject near and dear to me, UI testing. More specifically, I will discuss how I have implemented a sustainable UI testing framework with low maintenance that is specifically designed to avoid the pitfalls commonly associated with UI testing. Continue reading