Categories
Programming

Easy API Testing with REST Client Extension for Visual Studio Code

Visual Studio Code is becoming my go-to tool for automating stuff. It’s lightweight, it’s a joy to use, and it seems to be able to do pretty much everything ever thanks to a vibrant plugin marketplace. If you test APIs, you might be using an API testing tool of some kind, such as Postman. With […]

Categories
Programming

Getting Started with Cypress and TypeScript

Cypress is a front-end testing utility that allows you to write UI tests using Mocha and Chai. It has auto-waits, time-travel (look back at snapshots from within test runs), and automatic discovery of tests. This blog provides a quick start for getting started with Cypress and TypeScript. Cypress NPM Packages Your package.json file will need […]

Categories
Programming

Migrating Existing Tests to ApprovalTests

This is a short article to describe how I migrated a bunch of existing verbose tests to ApprovalTests. All of the examples in this article are based on my Shameless Green in C# library, which will be familiar to reader’s of 99 Bottles of OOP. Here are some quick links you might want once you […]

Categories
Automation

Test and Learn with Google Optimize Multivariate Testing

I started writing this article and realised it was going to be epic, so I’ve tried to break it into sections to make it easier to read. You can skip past sections that you feel you are already comfortable with. I’m not going to cover the nuts-and-bolts process of adding the scripts to your website […]

Categories
Automation Programming Psychology

Mind First, Language Second

I don’t know if other industries experience this, but in software development it appears to be getting increasingly common. Pick a word or phrase, perform an in-depth critique of the word explaining why it shouldn’t be used, and attempt to coin a new phrase (over which you can be the creater and arbiter of all […]

Categories
Programming

One Way To Never Send An Email From Your Test Environment

If you have software that generates emails, you’ll want to test it without risking sending an email to a real address. Of course, your test environment is full of fake accounts with safe email addresses and you know that you should avoid cutesy test data because it leads to trouble – but there will always […]

Categories
Automation Process

Updated Testing Pyramid

You can hardly spend five minutes talking about test automation without someone bringing up the testing pyramid.  The testing pyramid was devised by Mike Cohn and it is a good foundation for thinking of test automation. Here is the original version. The pyramid says, do plenty of unit testing, quite a bit less at the […]

Categories
Automation

Load Stress Spike And Soak Testing

This article talks about what I like to call the “Four Ss” of performance testing. They don’t actually all begin with “S” – but if reading, writing, and arithmetic can be described as the “Three Rs”, I’m not going to constrain myself either. Quick aside: it is only really performance testing if you are measuring […]

Categories
Automation

Test Automation Philosophy

I have written previously about my general automation philosophy. The automation philosophy represents what I believe to be a universal truth of any automation if viewed from a human perspective. This article applies this truth specifically to software testing. It is easy to see that software testing provides a full spectrum of work from routine […]

Categories
Automation Programming

Testing Browser Form Validation with Selenium WebDriver

No sensible person is using JavaScript to perform simple form validation any more. If an input element is required, you just add a required flag. If you need to validate minimum and maximum values, there are attributes for that. If you need to check a complex pattern, you can supply an attribute for that. Essentially, […]