Discover how to streamline metrics collection in Jest test suites using a centralized 'metricsCollector' utility, simplifying test maintenance and enhancing data-driven testing practices.
In this blog post I will walk you through how to set up a Jest custom environment in order to dynamically skip tests after they have been queued.
User stories are a pivotal component of Agile Software Development, serving as concise and user-centric descriptions of desired software functionality. Hence, here I am, discussing how crucial it is to put user stories right for setting the foundation for a well-structured, user-focused, and efficient development process.
A journey of self discovery to see if I'm a Tester or a Checker
An RxJS unbeliever explores the testing tools built into the library and is pleasantly surprised.
A look at how building an automated regression test suite in the early days of a project will provide benefits further down the line.
When working without testing resource on a project, I was looking for a tool to 'shake out' issues in the product. Colleagues suggested using a bug bash and this blog post explains what a bug bash is and how we went about running one.
Effective API testing has become increasingly more important with the rise of microservices. In this post we'll discuss how we can efficiently manage our API tests and automate them into a CI/CD pipeline with some of the tools provided by Postman
Variables allow you to store and reuse values in your requests and scripts. Storing a value in a variable allows you to reference it throughout your environments and collections. It’s also practical because if you want to update a value, you have to change it only in one place. There are a few types of variables in Postman and might be confusing where to use which so in this blogpost I will try to explain that.
For businesses that are transforming their development practices, testing, as ever is either overlooked, or the last thing to get a makeover. So how do you go about providing real value with changes to your testing practices.
This webinar shares practical advice on the types of testing that should be added to your CI/CD pipeline, and explores the ways that testers and developers can collaborate to improve continuous testing.
A short story on my maiden voyage into the world of Cypress - the test tool, not the country. This is an overview on how I discovered Cypress, how I configured it, created tests and how I drifted away from the standard setup to utilise the provided TypeScript and Cucumber plugins to make it work with the application development project we were delivering.
To achieve continuous deployment, we need to achieve continuous confidence of our software. We need to think about Continuous Testing.
A quick introduction into API automated testing using Postman and Newman. Postman tests can be so simple and straight forward. Newman gives the capability of running Postman tests through the command line. I'll discuss implementing basic tests to showing how valuable Postman tests can be in a CI/CD environment.
Automation plays a crucial role in the execution of regression test suites. A Continuous Integration (CI) tool can run 100’s of tests as part of a build deployment pipeline. The CI tool proceeds through several steps until the pipeline is complete. Wonderful! - but what do we do if failing tests block your pipeline?
In this post, through experimentation, I will be comparing the two most popular browser automation frameworks: Selenium and Puppeteer
As a tester in a cross disciplined agile team I frequently talk to and teach developers what Exploratory Testing is and how to do it. This account shows what I've been talking about and explains why it's beneficial for other testers to do the same.
When I was invited by the organisers of the Polish TestWarez conference to speak at their event, I had no idea what to expect. I've never visited Poland and had no idea of the testing scene there. However, being someone who loves meeting new people and going new places, I decided to say yes and worry about the detail once I got there. This is the account of my experience.
All companies need to be warned about the consequences of sending their testers to conferences.... (especially ones that are inclusive and considerate of their attendees)
If, like myself, you’ve enjoyed a pretty long career in professional software testing, you will by now have recognised just what a diverse group of people testers are. After reflecting on the various individuals I’ve worked with over the years, I thought it would be a great idea to write about some of their qualities. So here’s a poem, yes a poem! To sum it all up!
What is a WebSocket and how do you test it? Herb Williams and I have been looking into this for a while now. This is what we found out.
Thinking of getting into the madness that is public speaking? This is the 2nd part to my lighthearted look at the whole sharing lark. In this post, I'm talking about what can go wrong on the day for a hapless speaker and offering up some suggestions about what you can do to mitigate or address those issues.
Demystifying test automation - This article aims to provide an understanding of the concepts and the implementation of test automation. I will use every-day language and avoid overly complicated terminology to build confidence in those making a start in test automation.
Have you ever considered the similarities between learning a new human language and a programming language? I have always been fascinated by this topic and it has inspired me to write a blog post to help those like me, who worry when we see the code.
Apple’s XCTest framework can be used to write automated Unit and UI tests for iOS applications. It comes packaged with a range of capabilities which can aid you in your testing pursuit. It's not without its downfalls though. This blog explores the troubles XCTest brings and how we can tackle them to work towards peaceful iOS testing.
Adding a job can look intimidating, for an outsider. Here is how I approached this task to integrate my end to end tests into an existing workflow
As a tester, how do you adapt when a new technology or process is introduced within your team? Do you accept it as a challenge? Do you research to find a solution along with the team? Do you reach out to people in the community to see how they approached it? Here's my story of how my journey while adapting to the new world of ci/cd pipeline.
(Not) Only Tools And Sources. You need more than know-how and technology to succeed. “You know it makes sense!”
My aim in this blog post is to help you recognise these traits and make use of them in yourselves and others as we strive to survive in the tech jungle.
What is quality? Is it "just" testing? If not, then what else? How do you measure it? Should you even try? What does it really mean if you have 1 person or a team looking after the quality? After being told the quality was my new role, I did some research to find out the answers to these questions and more.
Agile transformation is challenging, especially for testers who are accustomed to working in a silo. This blog is my own story during transitioning from waterfall to agile. It is about what to expect as tester when you start working in Agile!!!
Have you heard of contract testing and want to know more? Are your company asking you to consider this future-facing way of testing? Are you wondering of its relevance to you as a functional or non-functional tester? Then this article can help you with some of the questions you have on the subject.
It's been a busy year for the Scott Logic testing team since we last visited the Software Testing Conference North. This year offered the opportunity to catch up with other members of the testing community, and to hear how companies are tackling their testing challenges.
Testers are called on to give advice as part of their role. How can do we do that in a way that is in the best interest of our team and product without our natural bias getting in the way? Leveraging the concept of the trusted adviser is one solution to this.
System Integration Testing can often be very complex. This article aims to explore some of the common pitfalls of SIT and aid in preventing or overcoming these.
This blog takes a high level look at some of the challenges faced when conducting automated cross-browser testing and discusses potential solutions to tackle these challenges.
This blog is based on my experience as a tester and how it can be pressurising in certain situations. I have talked about the issues and how it can resolved and we can have a positive environment.
During this post, I will offer you, the unfortunate reader, the unsolicited and equally unneeded, benefit of my advice as an "expert" (*cough*) veteran of 1 public speaking engagement. Look out for my top tips, they are sure to be about as much use as the 'open here' arrow on a miniature sachet of tomato sauce.
A bad beginning... A testing bedtime story that even Crackanory would reject for transmission on the basis it was too crackpot and twisted to be credible. Gather closer my precious readers, sitting comfortably? Good, then I can begin. Abide me carefully because I am going to tell you the secrets of how to have a magic unicorn, hen’s teeth, Harry Potter, automate-the-lot, works every time, end-to-end automated checking solution..... Alas, no chickens, I am not, because there is no such thing. The End. Sleep well all.
This is the second post in the series on adding security testing into your workflow - how to actively scan a website for security vulnerabilities using OWASP ZAP
"Testing is dead". I hear this particular chestnut a lot. From those who earnestly believe it, from those who don't understand the role, from content writers generating clickbait. Are testers really all etemmu now?
Thinking of applying to work with us as a tester? This is a post to help you work out if we are a good fit for you. We'll do this by telling you how we work out if you are a good fit for us. Hopefully this will be of interest to anyone trying to evaluate if the benefits we offer are in line with the environment they want.
"Lets hand it over to QA”. This phrase is seen and heard a lot, more so when chucking stuff over the development waterfall edge but even now, this is an oft used term as a synonym for testing. Terminology, naming, what we call something or someone can have a powerful impact on how something is viewed. Even worse when terminology becomes interchangeable, even though what each represents is actually something very different.
Test Bash Brighton is one of the biggest testing conferences in the UK. I was given the privilege of attending and was so taken in by it all I felt compelled to write up my thoughts, feelings and experiences in detail!
Why do we write tests? When should we write tests? Which tests is it alright to skip? And have that angry mob of TDD developers actually achieved 100% test coverage?
How to incorporate security testing of a website into your exploratory testing workflow
I have written about something that I found very interesting, Cognitive intelligence. My blog will contain information about cognitive intelligence,the benefits of testing with cognitive tools, what sectors currently use this, available platforms and finally if cognitive intelligence will take over a tester’s role.
Women often possess traits, skills and experiences that lend themselves to critical and sometimes overlooked aspects to being a great tester. This article will explore why and how these predispositions are necessary attributes to excelling in the field of testing.
Taking the time upfront to consider the focus of your testing can pay dividends. It shouldn’t just be a priority to test early to decrease the cost of fixing issues, it should also be a priority to test in the right way from the start, to ensure we are meeting the needs of our users.
The focus of this article is not on finding advantages or disadvantages of Selenium WebDriver, but I mainly focus on investigating pros and cons of different tools/frameworks in combination with Selenium WebDriver. Thus this article is good for those who already know Selenium and would like to gain knowledge of using different tools in combination with Selenium.
Having good tests is vital for maintaing code but it is difficult to assess the quality of your tests. Mutation testing provides one way of evaluating your tests. In this post I will be using PIT with Java to demonstrate the capabilities of mutation testing.
This blog describes the MeetUp trend in Testing, attending and hosting them
This blog describes the ALF annual summit in London, why it is different in approach to other conferences, and what value conferences provide.
This blog describes a one day event in London where leading tech companies were discussing tools they use to make their development and operations scale and be more efficient.
At the Agile North East Lightning Talks Competition I had 8 minutes to tell a room full of people how to help testers succeed.
After 18 months testing FX trading software I decided to create and share a heuristic cheat sheet to help explore trading apps.
Fiddler's AutoResponder is a great tool to mock API Responses when you're testing front end logic. It's simple but provides some powerful testing options. This is a short post to show you how.
How I used R to collect and analyse all of the tweets made about Test Bash Manchester, a recent software testing conference.
I was lucky enough to attend Test Bash Manchester recently. This is my first hand report of the experience. Find out what happened when testers from around the world all came together to talk about testing.
Having never given a technical talk before, I agreed to speak in public then found myself figuring out how I was going to do this.
I developed a web application to enable exploration of the data collected by a survey of software testers. I explain how R and Shiny can be used to create reactive web applications which make data accessible to a wider audience.
Continuing my research into Software Testers I examine how and why people are getting into testing careers and present a snapshot of testers in 2016
Custom locators are great for when you need to roll your own, but they can require some tweaking when an application starts to get more complex. Here I'll look at how to chain custom locators.
I decided to do some research into testers and the challenges we face in the work place to find some answers. These are some my findings.
Test metrics have for too long been the 'Holy Grail' of determining quality. This blog post looks at the reason why the metric of 'defect density' should perhaps have a second thought before use to determine software and tester quality.
WebdriverIO is a great addition to your automation toolkit. This 2-part post first walks through configuring WebdriverIO and automating the test process using Gulp, before taking a look at the tests themselves and abstracting using the page-object model in part 2.
This is part 2 of the Using WebdriverIO guide where we'll be taking a closer look at the tests and implementing the page-object model.
Automation of user interactions in browsers can be difficult. Even more so when you have to hunt for elements in a single page application. How can we ensure reliable location of these and reduce flaky checking?
How to stay fresh, focused and super effective when testing alone
Some of the biggest challenges when testing software can be getting the software into some very specific states...
When automating end to end browser verification, how do you keep it simple, make it robust and enable flexibility within your automated checks. One way is to use helpers.
Six annoyingly awkward bug patterns that every tester should know...
Web testing, in simple terms, is checking your web application for potential bugs before the system is revealed to the public. When testing web applications, there are many different resources you can use to help your testing. But a great resource is browser developer tools which can help in many ways. Here are some of the ones I find most useful.
This is the second post in a series of simple and short tutorials for automating tests using Protractor. In this post we will look at the difference between isPresent and isDisplayed, and we will use getText and the matchers toContain and toEqual to create some tests.
This is the first post in a series of simple and short tutorials for automating tests using Protractor. In this post we will look at how to find page elements using the Chrome developer tools, and writing a simple test using the Jasmine matcher isDisplayed.
Testers by themselves can't find all the bugs. Nor identify all the problems. So how do you get non-testers to look critically at the software and organise them to be effective at it. At least for day. This post explores the bug hunt. Asking the questions, giving some tips.
When deciding which tests to automate, one criteria commonly used is to identify simple repetitive tasks that are performed often. This morning while completing my bacon sandwich order form I realised that this was a relatively simple task that I repeat each Friday morning.
How we develop software has changed dramatically, more so in the last 8 years since smartphones came to prominence. How software is tested, arguably hasn’t. Or has changed so much, that some don’t see the need for testers at all.
When Malcolm Gladwell wrote a book called Blink about the power of the subconscious in 2005, a heuristic was named for it. Read on for how blink testing works, and some further thoughts on how other ideas the book contained can influence your testing.
There are many ways of testing software within an Agile methodology, here are 7 things I learned.
It has become generally accepted that a good project has a set of automated tests behind it - whether they be unit tests, integration tests or end-to-end tests. However I don't often hear people talking about the benefits vs cost and how much should be spent on particular projects.
Should there be testing standards. If so, who should define them, and how should you access them?
Which school, which certificate? It’s a minefield for testers. Are any certifications worthwhile?
This is the start of a testing journey for Scott Logic, where we will share some testing experiences, expertise and examples.