Attach Screenshots on Test Failure — WebdriverIO

https://youtu.be/BzIIUV9Z0cQ

Wouldn’t it be nice to know the exact state of the application you are testing whenever a test failed to help debug your tests?
Well, with WebdriverIO, you can easily take screenshots of the application on test failure and can attach it with your reporter.

Let’s take a look at how we can do that with Allure reporter -

Prerequisite

Need to have the Allure reporting setup already with your tests. You can watch this video to see how to do that.

Setup

You’ll need to edit the hook in the file

afterTest: function (
test,
context,
{ error, result, duration, passed, retries }
) {
// take a screenshot anytime a test fails and throws an error
if (error) {
browser.takeScreenshot();
}
},

Now just run your tests normally and when a test will fail you’ll see an attachment in your Allure report 🙌 -

Check out this video to see a detailed explanation on how to attach screenshots on test failure:

https://youtu.be/BzIIUV9Z0cQ

To learn more about WebdriverIO, check out my free tutorial series here -

https://www.youtube.com/watch?v=e8goAKb6CC0&list=PL6AdzyjjD5HBbt9amjf3wIVMaobb28ZYN.

I hope this post helped you out, let me know in the comments below!

Happy testing! 😄

Follow @automationbro on Twitter
Subscribe to my YouTube channel

SDET Architect | YouTuber | Tech Blogger | Love to explore new tools and technologies. Check out my YouTube channel — https://youtube.com/automationbro

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store