Deserializing API Responses Into Java Records
Here is a recipe for deserializing API responses into the new Java construct: Record, and using it for easier verification....
Here is a recipe for deseriali...
Read MoreHere is a recipe for deserializing API responses into the new Java construct: Record, and using it for easier verification....
Here is a recipe for deseriali...
Read MoreA common frequently asked question is "what is the career ladder for a test automation engineer?". This is a great question, as this role is often perceived as a flat one which makes it difficult for managers and practitioners alike to determine how one can...
A common frequently asked ques...
Read MoreLearn 3 practical approaches to achieve in-sprint test automation to reduce risk and technical debt....
Learn 3 practical approaches t...
Read MoreThis recipe shows how to automate the playing of an online tic-tac-toe game using Selenium WebDriver and Java...
This recipe shows how to autom...
Read MoreWhile most people are still using Java 8 from six years ago, new versions of the language are being released every six months! The latest Java versions provide an abundance of new features, such as functional programming capabilities, switch expressions, local variable type inference, additions to...
While most people are still us...
Read MoreThis recipe demonstrates how to use Selenium 4 to mock geolocation of user within Chrome DevTools....
This recipe demonstrates how t...
Read MoreWhen using Cucumber, if you want to share state between multiple step definition files, you'll need to use dependency injection (DI). There are several options: PicoContainer, Spring, OpenEJB, etc. If you're not already using DI, then I recommend PicoContainer. Otherwise, use the one that's already...
When using Cucumber, if you wa...
Read MoreHere is a recipe for programmatically reading data from an Excel spreadsheet using Apache POI. Note that in this example, I'm using the spreadsheet to store test data. However, this is NOT an endorsement to manage your test data this way. This is just one practical...
Here is a recipe for programma...
Read MoreHere is the recipe for automating the task of selecting a date from a Date Picker component. I illustrate this recipe with Selenium WebDriver and Java, however, the recipe itself can be used with any automation tool and programming language. Recipe to Automate Date Picker Selection Ingredients ...
Here is the recipe for automat...
Read MoreFor the next couple of months, I’ll be live streaming every Wednesday at 12:00 PM PST. In each session, I’ll take a specific automation challenge and come up with a recipe for solving it....
For the next couple of months,...
Read MoreThe most popular design pattern used in web UI test codebases is the Page Object Model (POM) design pattern. These tips should help you design healthy classes that implement the Page Object Model design pattern. The use of this pattern promotes separation of concerns (e.g....
The most popular design patter...
Read MoreI joined a live Twitch session with Jason Lengstorf on his show "Learn with Jason". We paired as I showed him how to use Cypress for test automation, and also how to add visual testing to his suite, using Applitools. We had an absolute blast building...
I joined a live Twitch session...
Read MoreSelenium 4 brings Relative Locators (originally named Friendly Locators). This functionality was added to help you locate elements that are nearby other elements. The available options are above, below, toLeftOf, toRightOf, and near....
Selenium 4 brings Relative Loc...
Read MoreI've released a brand new course - completely free - on Selenium WebDriver with Java! The Test Automation University course takes you from zero to 100, covering introductory and advanced concepts in 3.5 hours! I cover all of the following in this free Selenium tutorial: How to...
I've released a brand new cour...
Read MoreBehavior Driven Development, also known as BDD, is an example-based methodology for developing software. The key to BDD is collaborative exercises between Business, Development, and Testers. These parties are collectively known as the Three Amigos. When beginning the work for a new feature, the three amigos...
Behavior Driven Development, a...
Read MoreMany teams struggle to automate their tests within the same sprint that the feature is developed, thus leading to technical debt. In my latest article, I've provided 3 techniques to help you close your sprints with tests in place! Read it on Techbeacon by clicking the...
Many teams struggle to automat...
Read MoreSince Java 8, there have been many cool features introduced. In fact, Java is releasing a new version every 6 months! With so many additions, it can be hard to keep up. Here’s how some of the newer features from Java 8 – 12 can...
Since Java 8, there have been ...
Read MoreMost people do a pretty lazy job of testing APIs. In my ABCs of APIs workshop, I ask people to manually test an API. When looking at a response, they typically glance at it, and maybe carefully review some of the key fields. Same goes...
Most people do a pretty lazy j...
Read MoreWith Java being the most popular language for test automation, I decided to create a FREE course that teaches core Java! This course is a self-paced, online video course which includes tons of practical examples and also exercises for you to try on your own. Many...
With Java being the most popul...
Read MoreA code smell is code that isn't technically wrong, meaning, it works; however, the implementation of said code is problematic in that it's difficult to manage and thus can lead to delayed development time and even the introduction of bugs. There are many writings about code...
A code smell is code that isn'...
Read MoreThere's been a resurgence of codeless test automation tools. I've been burned by these types of tools in the past, so have written an open letter to codeless tool vendors with a list of demands. Many have responded. There's also been lively discussion from community...
There's been a resurgence of c...
Read MoreI recently conducted research to determine the most widely used programming languages for UI test automation. A complete write-up of my findings, with percentage breakdowns, can be found on Applitools blog. But here's the results at a quick glance....
I recently conducted research ...
Read MoreThere’s two ways to invoke PDF test automation using this tool. In the first one, I'll show how to execute the PDF validation via the command line. In the second, how to execute it as part of an automated test....
There’s two ways to invoke PDF...
Read MoreDZone published a 2019 Guide to DevOps e-Book which contains a chapter that I've written called Testing in CI. In this chapter, I cover key considerations which are needed for your automated tests if you'd like them to be a part of your team's continuous...
DZone published a 2019 Guide ...
Read MoreI've published a free course on Test Automation University that walks you through how to define a successful test automation strategy and the many considerations you need to make to do so. This course is great for those who are starting a new test automation...
I've published a free course ...
Read MoreJoe Colantonio hosted Dave Haeffner, Gil Tayar, and myself for a roundtable to discuss 2019 trends in test automation. We discussed some side effects in tooling and automation practices we're seeing due to the continuous testing movement; the re-emergence of codeless test automation tools; which...
Joe Colantonio hosted Dave Hae...
Read MoreWhen automating scenarios, we have to be very careful to capture all of the various verification points that a tester would process when executing a test. I've written about this issue in Adding a Peripheral View to Test Automation, and stressed how important it is...
When automating scenarios, we ...
Read MoreThere is a great demand for software development engineers in test (SDETs), which is a hybrid role between Developer and Tester. However many employers are finding that simply finding a developer who writes test or a tester who writes code is not enough. There's so...
There is a great demand for ...
Read MoreFor many, Machine Learning and AI are nothing more than buzz words. However, machine learning is a realized form of AI that is currently being utilized by top tech companies in products that we use every day. For this reason, it’s important that we understand...
For many, Machine Learning and...
Read MoreI've been exploring some of the newer testing tools lately and this week I had a look at TestProject. This tool promotes itself as a free community-driven test automation application, which really piqued my interest. It works as a graphical interface to industry-standard test automation...
I've been exploring some of th...
Read MoreWith JavaMail API, I've been able to not only verify that an email was received, but also verify its contents, open links within the email, extract data sent (temp passwords, verification codes, etc). Someone recently asked me about email verification within automation, so I decided...
With JavaMail API, I've been a...
Read MoreDoes your application and test code live in separate repositories? If so, you may be missing out. I recently built an automation project inside of the development repository and realized some wonderful benefits. Read all about it in my Techbeacon article, 6 reasons to co-locate...
Does your application and test...
Read MoreI’ve seen (and written) several automation projects where each page class requires a constructor that takes a WebDriver object so that the page classes can access the current browser instance. There’s nothing particularly wrong with this, but I do find it a bit annoying to...
I’ve seen (and written) severa...
Read MoreBefore 2018 kicks in, 4 leading experts joined forces to share the test automation trends that will dominate our daily work procedures and processes in the upcoming year. Automation Guild Conference founder, Joe Colantonio, hosted a panel with three Dev/Test thought leaders: Angie Jones, Richard Bradshaw,...
Before 2018 kicks in, 4 leadin...
Read MoreAre you interested in becoming a test automation engineer? Do you lead a team you'd like to see transition toward test automation by learning the skills needed to do this role? Here's a 3-step guide on how to get started with the test automation career path. Simply...
Are you interested in becoming...
Read MoreWhen learning an object-oriented programming (OOP) language, we learn about key concepts in theory, but it's not always clear on how to apply those concepts to practical software development. And many automation engineers learn programming by taking the hands-on approach and jumping head first into scripting...
When learning an object-orient...
Read MoreAt Twitter, we currently have 14 automation engineers and more than a quarter of them are new college hires. All of us work on different projects which span various areas and platforms: web, iOS, android, web services, etc. In a shop like this, it's very...
At Twitter, we currently have ...
Read MoreI was recently featured in QASymphony's e-book, The Future of Software Testing: 12 Testing Experts Share Their Predictions discussing my thoughts on what's in store for the future of software testing, and how testers can prepare and adapt to this transformation. Here's an excerpt of...
I was recently featured in...
Read MoreTest Automation Engineers are in high demand, but that doesn’t mean companies are willing to lower the bar in hiring for these roles. With test automation projects failing left and right, flaky tests crippling continuous integration pipelines, and automated tests causing maintenance nightmares, managers feel...
Test Automation Engineers are ...
Read MoreWhen done properly, Behavior-Driven Development (BDD) can drastically improve the communication and understanding of requirements. An additional benefit is being able to utilize the domain-specific language of the requirements to drive test automation. However, like any other automation initiative, when done poorly, this too can...
When done properly, Behavior-D...
Read MoreMike Horn, a writer for Smartsheet, reached out to me and several other test automation practitioners for a piece he was writing on the basics of test automation. Mike, not being an automation engineer himself, didn't know what he was getting into when he opened...
Mike Horn, a writer for Smarts...
Read MoreIt's no secret that I've led several successful automation projects, however, to get to this point I had to learn quite a few painful lessons the hard way. As the saying goes, experience is the greatest teacher. Well hopefully, you can utilize my experiences to...
It's no secret that I've led s...
Read MoreI had the honor of contributing a chapter to Eran Kinsbruner's new book, The Digital Quality Handbook: Guide for Achieving Continuous Quality in a DevOps Reality. My chapter is titled "Actualizing Quality While Practicing Agile" and focuses on how to effectively perform mobile testing in...
I had the honor of contributin...
Read MoreOnce upon a time I needed to automate tests for machine learning...
Once upon a time I needed to a...
Read MoreAs someone who regularly interviews candidates for test automation roles, there are common mistakes I see companies making that drive their automation engineers away. On TechBeacon, I've written about the top five actions that may cause your automation engineers to bail. Review your practices and see if...
As someone who regularly inter...
Read MoreMike Cohn's Test Automation Pyramid is a guide that is frequently cited as a good practice to follow. It suggests that: the bulk of your automated tests should be unit tests the next largest group of tests should be developed to target the service layer...
Mike Cohn's Test Automation Py...
Read MoreIf you search online for articles on Behavior-Driven Development (BDD), you're likely to find more literature on how everyone is doing it wrong versus what it really is and practical success stories in using it. I've read article after article explaining how teams are claiming...
If you search online for artic...
Read MoreAs quality initiatives shift left in an agile world, software testing teams realize that they must rely on the fast feedback of automated scenarios for continuous integration and deployment. But even when people understand test automation basics, most automation initiatives fail. There are many reasons why test automation initiatives fall short,...
As quality initiatives shift l...
Read MoreOne reason why human testers are far better at finding bugs than automated scenarios is because testers aren't just validating the expected results. They are also able to recognize unexpected surprises and anomalies within the application. For example, take a look at this application and assume...
One reason why human testers a...
Read MoreWhen interviewing candidates for UI automation openings, I like to give them typical automation 'problems' to solve. Most of the problems provide them with a picture of a UI and the corresponding HTML, and ask how they would automate something given a tricky DOM. I'm...
When interviewing candidates f...
Read MoreBehavior Driven Development (BDD) has become a popular approach in communicating requirements between stakeholders of agile teams. In fact, it's so effective that it's also being adopted in automation strategies by using Cucumber to write test scenarios in Gherkin (a non-technical, human readable language) and...
Behavior Driven Development (B...
Read MoreDevelopers should not lead your automation efforts. I've never seen this succeed. In fact, many times I have been brought on to teams to clean up the mess that is left behind when developers try to lead this effort. The reason is simple. Developers are not...
Developers should not lead you...
Read MoreThere's quite a demand for automation engineers. Unfortunately, as the demand grows, so has the difficulty in finding testers with automation skills. As of late, I'm seeing more of a push from companies to transition their existing testers into more of an automation role, and I'm...
There's quite a demand for aut...
Read MoreTest cases are important. They provide step by step instructions on how to validate a feature. They are essential for cross-training and necessary for auditing. They also take quite a bit of time to write, do not seem to be testers' favorite activity, and instantly become outdated...
Test cases are important. They...
Read MoreI've been in Automation for more than 10 years. I consider myself a hardcore automation engineer, and have always thought that to truly get automation done you need programmers...
I've been in Automation for mo...
Read MoreMarlena Compton wrote a very interesting blog post on the power structure in tech and how she believes women and minorities are pushed into software testing roles. Marlena advises...
Marlena Compton wrote a very i...
Read More