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.
Category: Automation
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
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.
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.
Using C# with Selenium WebDriver
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.
Page Objects with Selenium and Cucumber JVM
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.
Continue reading Page Objects with Selenium and Cucumber JVM
Using Cucumber JVM with Selenium WebDriver
I previously posted a tutorial on using Cucumber JVM to test Java code. However, many testers are in the position of using Cucumber JVM to test web-based applications using tools like Selenium. In this post I’ll show how to use these tool solutions together.
Testing with SauceLabs
If you are a tester and deal with automation, you will likely at some point have to run your tests on SauceLabs or some similar remote platform. In talking with some testers, this tends to make them a little nervous and I’ve found this comes down to them thinking it’s more difficult than it really is. So here I’ll cover how to do this with two popular automation libraries in Ruby and then I’ll show how to do the same thing using my Symbiont framework.
Symbiont Reaches 1.0!
My test micro-framework, Symbiont, has reached version 1.0. This means I have officially graduated from “show and tell” to “deliver … More Symbiont Reaches 1.0!
Writing Test Solutions with JavaScript: Testing Browser Apps
If you look at the JavaScript test tool ecosystem, you will find it’s generally quite large. But you will see the same tool names pop up fairly regularly. The decisions actually fall along some fairly simple and standard lines. In this post I want to show you at least some of your choices and then apply those choices to testing against a web application.
Continue reading Writing Test Solutions with JavaScript: Testing Browser Apps
Writing Test Solutions with JavaScript: Mocha and Chai
In this post, I want to cover using two particular libraries as part of the JavaScript testing ecosystem. I’ll be very briefly covering Mocha and Chai. I tend to use these quite a bit and will likely do so in future posts. This post will thus serve as a brief introduction to the tools along with a working example.
Continue reading Writing Test Solutions with JavaScript: Mocha and Chai
Writing Test Solutions with JavaScript: Starting Out
As many of my readers my know, or have figured out, I’ve been a fan of the Ruby language for quite some time and I’ve used it to construct some of my own open source testing solutions. I’m now actively pursuing JavaScript as my potential test ecosystem of choice. In a few upcoming posts, I’ll talk about this journey with practical examples. This first post starts things off by getting you up and running with a few possible JavaScript technologies.
Continue reading Writing Test Solutions with JavaScript: Starting Out
Specify Use Case: Models, Rules and Features
I introduced my Specify micro-framework in a previous post. In this post I want to cover an example of how effective I think this kind of approach can be.
Continue reading Specify Use Case: Models, Rules and Features
Introducing Specify
I have been working on a different type of tool solution that I call Specify. In this post I’ll introduce the tool.
Why Cucumber? Why Gherkin?
Many people feel that tools like Cucumber are a waste of time. But are they? Let’s talk about that.
Is Cucumber Truly Misunderstood?
I’m tired of hearing how “Cucumber is misunderstood.” If that’s the case then it’s terribly ironic that a tool that is supposedly all about revealing intent did such a bad job of doing this for itself such that it’s become completely “misunderstood.”
Learning Capybara, Part 2
In the previous post in this series, I showed you how you can execute Capybara via its own session object, which means you did not have to incorporate any of the Capybara DSL into your own logic. Here I’ll do the exact opposite of that by showing you how to incorporate Capybara into your own particular logic. Then I’ll show how that segues nicely into fitting Capybara within different test runners.