In a previous post, on testing and design pressure, I closed by saying that certain elements of decisions need to be encoded as artifacts, but that putting appropriate pressure on design meant minimizing those artifacts. Here I’ll talk a bit about that and what this means for test teams.
Java Automation with Serenity
Serenity is a Java-based library for test automation that wraps and extends WebDriver and JUnit functionality. Serenity also wraps around BDD style tools like Cucumber and jBehave. It even has some nice Jira integration. These benefits aside, Serenity can be a little hard to wrap your head around so I’m hoping this in-depth post will aid automaters who want to give it a try.
Modern Testing and Design Pressure
I’ve recently had reason to give some training on my overall philosophy and rationale for the introduction of Quality Assurance and Testing into modern development environments. I’ll put up a few posts as an attempt to gather my own thoughts and check if my own thinking is consistent.
The Danger of the Technocrat Tester
If being completely accurate, I would have to title this post something like “The Danger of the Companies that Frame Testing as a Technocratic Discipline and Hire Testers Who Reinforce This View”. But that’s a really cumbersome title to write! However, I believe that the technocrat tester is a big problem in our industry and many companies are reinforcing this problem. So let’s talk about this.
Why Test Engineers Should Learn Geb and Spock
Awhile back I talked about why test engineers should learn Groovy. Here I’ll focus on two specific tools in this ecosystem: Geb and Spock.
Continue reading Why Test Engineers Should Learn Geb and Spock
Conceptualizing Test Intersections
In my previous post on intersections of testing, I set the stage for how testing is an activity that takes place at various points of intersection. Here I want to conceptualize that idea a bit more and provide some focus on what it means from an operational standpoint.
The Intersections of Testing
A lot of testers I know come across Joe Rainsberger and his declaration that integrated tests are a scam. This always leads to interesting discussions so I figured I would use this post to distill my own thoughts particularly because the opinions of “scam-based testing” are usually predicated upon a profusion of testing terminology.
Along Came a Symbiont, Part 2
I’m going to continue introducing Symbiont in this post. In this post I’ll focus on the various ways that a script can be constructed.
Along Came a Symbiont, Part 1
I’ve talked about my automated testing framework Symbiont in a variety of posts. Because it’s been used in a variety of locations, I’m going to use this post to do a gentle introduction to the framework in a slightly different way than I have previously.
The Art of Attention to Detail in Exploratory Testing
Testers must have the ability to utilize exploratory testing as well as scripted testing. But exploratory testing is actually not the entirely free-form exercise that some people associate it with. So let’s talk about that.
Continue reading The Art of Attention to Detail in Exploratory Testing
WebDriver in JavaScript with Promises
As a tester wanting to write test tools in the JavaScript context, you have to get used to the concepts of callbacks and promises. This is one area that is very different from other programming languages when considering automation. So let’s talk a bit about that.
JavaScript with Selenium WebDriver and Mocha
I talked previously about using Selenium WebDriver in the context of JavaScript. There I used Jasmine as a test runner for Selenium. Here I want to expand on this by using the arguably more popular Mocha as well as get into more depth on automation construction.
Continue reading JavaScript with Selenium WebDriver and Mocha
BDD Tools for Human Engagement and Test Purpose
Awhile back I wrote up some context around the question of Is Cucumber Truly Misunderstood?. There is a wider concept here that makes these tools quite applicable in the modern testing context, so I want to cover that here.
Continue reading BDD Tools for Human Engagement and Test Purpose
The BDD Lure and Trap
The whole notion of BDD is something I’ve talked about in a series of posts. I recently did an exercise with a group of business users, testers, and developers. We used a contrived example but the example was certainly a realistic portrayal of the activities that tend to occur on “real” projects. So let’s talk about that.
Automation Language Is Not (Necessarily) Your Development Language
Way too many companies out there have this notion that testers must use the language that their applications are written in. So if your company writes an application in Java, that’s what the testing solutions should be written in. This is laughably wrong and completely short-sighted. It’s what you tend to get when development managers are responsible for building up test teams or when you have test teams that have to rely on others to do their work (and their thinking) for them.
Continue reading Automation Language Is Not (Necessarily) Your Development Language
Symbiont Now Supports Capybara
Since its inception my Symbiont framework has provided a wrapper for Watir WebDriver, which in turn provides a wrapper for Selenium WebDriver. One of the other major libraries out there that wraps Selenium is called Capybara. I wanted to see what kind of support I could provide for that. In this post I’ll cover these changes.
Automation is a Technique, Not Testing
Marshall McLuhan said “We become what we behold. We shape our tools and then our tools shape us.” Anyone who seeks excellence in the testing craft must struggle with the appropriate role of tools. For testers this shows through no better than when dealing with automation.
Being (and Hiring) A Test Specialist
I’ve previously talked about being a generalist with specialist tendencies. I’ve said I’ve generalized in just about everything but I’ve tried to specialize in quality assurance and testing as disciplines. But what does that actually mean? Let’s talk about that.
Gaming Like a Tester
Previously I talked about testing like a gamer. So now let’s talk about the other side of that.
C# and Selenium on Xamarin
A lot of testers avoid any consideration of C# because it’s a Microsoft created language and the assumption is that it only has relevance on Windows. That’s not true. Just as Java learned a lot (and corrected a lot) from C and C++, C# did something similar with Java. Here I want to focus on how you can use C# on other platforms by creating a test solution in Xamarin.