In this tutorial post, I’ll begin covering how to apply the screenplay pattern with the Serenity framework. This is a “roll-up your sleeves and code” post. Here I will take a measured approach to demonstrating the screenplay pattern in the context of a working example.
I wrote about Serenity with Java in a previous post. There I covered just the basics to get you up and running. Here I want to talk about what I think is the primary value-add of Serenity, which is its focus on the screenplay pattern. I think it’s beyond debate that automation engineers should know of this pattern and use it. It’s up for debate whether Serenity’s implementation is a good way to go about it. I leave answering that latter question to the reader. Here I just want to explore the idea as it is implemented.
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.
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.
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.
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.
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.
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.
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.
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.
In this post, I’ll focus on an ecosystem I haven’t given much attention: that of Windows and the use .NET related technologies. I’ll be covering the use of Selenium WebDriver within a C# context.
In this post I’ll focus on using page objects in a Selenium and Cucumber JVM context. Please note that this post follows on from the previous post, using the code you built up there.