The Test Room – Recent Posts

  • Chrome Developer Tool (8/12/2017) - Chrome Developer Tool, a QA's best friend Google is an amazing place and it should be no surprise that they develop some pretty amazing tools. In this post, let's look at the 'Chrome Developer Tool'. Chrome Developer Tool Chrome Developer Tool comes automatically installed in Chrome Browser and has helped many Developers and Testers (QA). Benefits comes in the form of UI Automation. If you dig deep enough, you can use the Tool to make performance improvements to a website … Continue reading Chrome Developer Tool
  • Bad Software Testers (8/5/2017) - Not all testers are the same, some are really bad software testers By profession, I am a Software Tester, QA and Automation Engineer and I have meet some really bad ones. With this said, what constitutes as a bad tester? The answer is a selection of poor traits and attitude. This post is not meant to discourage or dishonour Testers. It is meant to highlight my experience with poor testers and how I approached the problem. Bad Software Testers In … Continue reading Bad Software Testers
  • Software Testing is Tough (7/29/2017) - It's long, it's hard but it's worth it Software testing is tough. Software Testers find bugs, write tests, firefight issues, teach, are expected to learn quickly and as a result it can become a difficult experience. A Software Tester can constantly face many hardships, let's have a look at some of them. Hardships of a Tester On a day-to-day basis, here are some of the key struggles that a Tester may face: Testers VS Developers At times, it may feel … Continue reading Software Testing is Tough
  • Failing Fast (7/22/2017) - Failing fast leads to one thing, Success It is important that your code base, continuous integration, tools and even your processes are able to fail fast. Human’s are a different consideration. Why should a given process fail fast? What value is there in failing quickly? Failing Fast The greatest value in failing quickly is perhaps the ability to react to changes quickly. Why fail fast? Failing quickly helps to resolve issues quicker since they are surfaced sooner. Let’s have a … Continue reading Failing Fast
  • Stand Up, Are You Doing it Right (7/16/2017) - A Stand Up is powerful, only when done right Most of us have experienced taking part in one, have you had bad one? The Traditional Stand Up Let's quickly establish the fundamental rules: For starters, you must physical stand up at a set time every day You must answer the following three questions: 1. What you did yesterday? 2. What you plan on doing today? 3. Are you blocked on anything? Your answer to the above three questions must be … Continue reading Stand Up, Are You Doing it Right
  • I Pushed a Bug in Production (7/9/2017) - It's inevitable, at some point you will push a bug in production Statistically speaking, at some point you will push a bug to production. It may be something small, it may be something big. It might be a small UI issue, it may be a rather large functional issue. Sadly, at some point it will happen. So, how can we stop this, how can this be mitigated? Stop Bugs going in Production Unknowingly, I have pushed bugs to productions. Not … Continue reading I Pushed a Bug in Production
  • Agile Pairing Power (7/6/2017) - Agile pairing, takes two to tango! Once upon a time, I too did not see the benefits of pair programming. I saw work duplication, invasion of privacy and moments of broken concentration. And then something happened, I saw the light! Why did I suddenly change my mind? Benefits of Agile Pairing Let me tell you about my sudden 'Change of Heart'. Is Team Work Better? Why have two developers working on a task when one would get it done faster? … Continue reading Agile Pairing Power
  • Automation QA Interview Questions (6/30/2017) - Making the jump from a Manual and into a Technical QA role can be difficult and challenging. Here are some potential automation QA interview questions which you may be asked during an interview. Automation QA Interview Questions What are the core positive features of an Automation Framework? Building an automation framework can become a dangerious journey if key features are not considered before putting pen to paper. Before buliding a framework, some of the most important factors to consider include: … Continue reading Automation QA Interview Questions
  • WebDriverJS Dropdown (6/30/2017) - Do you know how to use WebDriverJS to interact with a Dropdown field? Let’s use WebDriverJS dropdown to select a value? It is important to be able to select a value from a dropdown box. Let’s have a look at how we can use WebDriverJS to select an item from a dropdown box. WebDriverJS Dropdown In the code snippet below, we navigate to a test page which contains a dropdown box. Examine the code below: var webdriver = require('selenium-webdriver'); var … Continue reading WebDriverJS Dropdown
  • WebDriverJS Switching Windows (6/30/2017) - When writing an automated test, you may encounter scenarios where you might have to switch browser windows. In this post we will look at how we can switch windows. WebDriverJS Switching Windows Firstly, let's write out in comments what we would like to achieve. // Save location to parent window // Print parent window title // Switch to new window // Print text in newly switched window // Switch back to parent window // Print parent window title Assuming we … Continue reading WebDriverJS Switching Windows
  • WebDriverJS Properties File (6/30/2017) - The concept of Properties is a great way to control test configuration. WebDriverJs Properties can help to scale automated tests. When writing scripts using WebDriverJS, it is important to consider the scale of the test. Being able to change the parameters of multiple tests with a single change can helps scale tests. WebDriverJS Properties without Properties Let’s take a simple script. See below: script.js var webdriver = require('selenium-webdriver’); var driver = new webdriver.Builder().withCapabilities(webdriver.Capabilities.chrome()).build(); driver.get('http://www.thetestroom.com'); The script above is very simple. … Continue reading WebDriverJS Properties File
  • Some People Hate Cucumber (6/26/2017) - This may come as a surprise to you, some people actually hate Cucumber. But, do you know why? Why Hate Cucumber? Over the years of trying to encourage poeple to adapt Cucumber, here is a list of the most common 'reasons' that I have had in response: It's An Overhead When asking colleges to adopt Cucumber as a tool to help remedy the bridge between BA's and Developers, “Cucumber is an overhead” was the response I got back. The first … Continue reading Some People Hate Cucumber
  • Good Automation Framework (6/21/2017) - It's easy to build an automation framework that works. It's tough building a framework that works well. What is an Automation Framework? The need to have an automation framework should always come from a 'need to a problem', not a 'want to a solution'. The concept of a framework is to provide a foundation which can be extended for further use. When talking about frameworks in the context of Automation, the same rule applies. Let’s take a real world scenario: … Continue reading Good Automation Framework
  • Let’s TDD and BDD (6/15/2017) - What is the best approach of writing tests? TDD vs BDD. Have you heard of either Test Driven Developer (TDD) or Behivour Driven Development (BDD)? These are perhaps the most common and most used practices when it comes to writing tests. Firstly, let's discuss why anyone would want to follow a testing practice. Why not just write tests in whatever manner you want? To Practice or Not To Practice Let’s assume you do not follow any practices or principle. This … Continue reading Let’s TDD and BDD
  • Jenkins CatLight (6/10/2017) - CatLight is a status notifier. Jenkins is a CI tool. Put the two together and you get Jenkins CatLight. CatLight allows us to listen for updates from Jenkins, which are then cleverly posted to the user. Jenkins CatLight Navigate to https://catlight.io/ and download the client. Once downloaded, install and open the app. You should see a screen similar to this: Select Jenkins and you should then have a screen similar to this: Populate the 'Server URL' field with the host … Continue reading Jenkins CatLight