Mohammad Faisal Khatri is a Software Testing Professional with 17+ years of experience in manual exploratory and automation testing. He currently works as a Senior Testing Specialist at Kafaat Business Solutions and has previously worked with Thoughtworks, HCL Technologies, and CrossAsyst Infotech. Faisal is skilled in tools like Selenium WebDriver, Rest Assured, SuperTest, Playwright, WebDriverIO, Appium, Postman, Docker, Jenkins, GitHub Actions, TestNG, and MySQL.
He has led QA teams of 5+ members, managing delivery across onshore and offshore models. Faisal holds a B.Com degree and is ISTQB Foundation Level certified. He has authored 100+ blogs on Medium, 40+ on TestMu AI, and built a community of 25K+ followers on LinkedIn. His GitHub repository “Awesome Learning” has earned 1K+ stars.
Published Articles: 57
Articles by Author

Selenium
How to Handle JavaScript Alerts in Selenium EffectivelyLearn how to handle JavaScript alerts in Selenium effectively, including simple, confirmation, and prompt alerts for robust test automation.
November 18, 2025

Automation
Appium Python: A Complete Tutorial for Mobile App AutomationLearn how to use Appium with Python, run and scale tests on real devices, fix common issues, and follow best practices for mobile automation.
March 8, 2026

Automation
CSS Selectors in Selenium: A Complete Guide to Locating Web ElementsLearn how to use CSS Selectors in Selenium to locate web elements efficiently with syntax, examples, and best practices for reliable test automation.
February 3, 2026

Automation
Cucumber Java Testing: A Step-by-Step TutorialLearn Cucumber Java with this tutorial covering keywords, hooks, and practical steps to start efficient BDD testing from scratch.
November 25, 2025

Automation
Gherkin Cucumber: A Definitive Guide for BDD‑Driven TestingLearn Gherkin and Cucumber, write clear test scenarios, use the right keywords, set up files, run tests, and follow best practices.
December 7, 2025

Software Testing
How To Retry Failed Tests Using IRetryAnalyzer In TestNGLearn to implement IRetryAnalyzer in TestNG for retrying failed tests and how this retry logic helps deal with flaky tests
January 29, 2026

Software Testing
JUnit Tutorial: Writing Nested Tests In JUnit 5This blog on JUnit 5 nested tests discusses the JUnit 5 feature - @Nested annotation, which allows creating an inner class within the main test class to break the complex logic and group all the tests using the inner class.
November 6, 2023

Automation
What Is Page Object Model (POM) Design PatternUnderstand the Page Object Model in detail, its purpose, structure, and how Page Factory helps build cleaner, maintainable, and scalable automated test suites.
November 30, 2025

Playwright
How to Use the Playwright Click() Method in Test AutomationLearn Playwright click() actions with best practices, debugging tips, and advanced interactions for reliable, scalable end-to-end web automation.
November 19, 2025

Software Testing
Test Execution: Its Features And Tools With ExamplesThe tutorial dives deep into Test execution tools to give you insights that will help you pick the right tool for your testing needs.
June 20, 2026

Automation
WebdriverIO Appium: Getting Started Tutorial | TestMu AI (Formerly LambdaTest)Learn to automate iOS and Android mobile apps using WebdriverIO with Appium. Step-by-step setup, locators, Page Object Model, and cloud execution on real devices.
April 24, 2026
![AI Agent to Generate Selenium Java Tests [2026 Guide] | TestMu AI (Formerly LambdaTest)](https://assets.testmuai.com/resources/images/meta/ai-agent-generate-selenium-java-tests.webp)
Selenium
AI Agent to Generate Selenium Java Tests [2026 Guide] | TestMu AI (Formerly LambdaTest)Use an AI agent to generate Selenium Java tests from plain English scenarios. Step-by-step guide using OpenAI and Ollama to automate test script creation fast.
June 3, 2026

Automation
Handling Alerts and Popups in Appium | TestMu AI (Formerly LambdaTest)In this tutorial, understand what are alerts and popups and how to handle alerts and popups in Appium for mobile automation testing.
December 26, 2025
![Complete Tutorial On Appium Parallel Testing [With Examples] | TestMu AI (Formerly LambdaTest)](https://assets.testmuai.com/resources/uploads/2022/07/Complete-Tutorial-On-Appium-Parallel-Testing-With-Examples.png)
Software Testing
Complete Tutorial On Appium Parallel Testing [With Examples] | TestMu AI (Formerly LambdaTest)This Appium testing tutorial takes you through the journey of running automation tests while performing Appium parallel testing.
December 8, 2025

Selenium
How to Use Assert and Verify in SeleniumGet the most out of assert and verify in Selenium. This blog offers key concepts for improving your test automation and ensuring accuracy.
December 25, 2025

Automation
A Complete Tutorial on Using assertTrue() in Java | TestMu AI (Formerly LambdaTest)assertTrue() method is used for performing assertions in automated tests. This JUnit tutorial demonstrates using the assertTrue() in Java to perform assertions and check specific conditions.
June 7, 2024

Selenium
Automating Login Page Using Selenium WebDriver: A Detailed GuideExplore seamless login automation with Selenium for diverse testing scenarios and effortlessly navigate the complexity of automating login pages.
February 24, 2026

Software Testing
Generating Automated Test Reports After Each App Release Using Jenkins | TestMu AI (Formerly LambdaTest)Learn to integrate Appium with Jenkins for test reports that validate app functionality and provide actionable insights with each new release.
February 28, 2025

Automation
Automating Flutter Apps Using Appium Flutter Driver With Java | TestMu AI (Formerly LambdaTest)Learn to test Flutter mobile applications in this detailed tutorial on using Appium Flutter Driver with Java.
February 18, 2026

Automation
How To Automate ServiceNow With Appium | TestMu AI (Formerly LambdaTest)Learn how to automate the ServiceNow mobile application using Service Desk Agent’s persona using Appium by running the tests on the TestMu AI (Formerly LambdaTest) real device cloud.
December 8, 2025

Selenium
How To Automate ServiceNow With Selenium | TestMu AI (Formerly LambdaTest)Learn how to test ServiceNow using Selenium WebDriver to ensure the workflows and applications are working as expected, ultimately improving the overall efficiency and quality of the testing process.
April 15, 2024

Automation
How to Test Biometric Authentication With Appium | TestMu AI (Formerly LambdaTest)Learn how to test biometric authentication with Appium on a real device cloud like TestMu AI (Formerly LambdaTest) and emulators.
December 8, 2025

Software Testing
How to Create TestNG.xml File in Eclipse | TestMu AI (Formerly LambdaTest)This TestNG guide will help you in creating a TestNG.xml file and then executing multiple test cases in parallel on a Selenium Grid.
November 18, 2025

Automation
Fix "Element Not Clickable at Point" in Selenium | TestMu AI (Formerly LambdaTest)Fix the "Element Not Clickable at Point" error in Selenium. Learn causes like overlaps, delays, and proven solutions with examples.
April 16, 2026

Selenium
How to Handle ElementClickInterceptedException in Selenium Java | TestMu AI (Formerly LambdaTest)This Selenium Java tutorial discusses the nitty-gritty of ElementClickInterceptedException in Selenium and ways to mitigate the exception.
January 21, 2026
![ExpectedConditions in Selenium: Python & Java Examples [2026] | TestMu AI (Formerly LambdaTest)](https://assets.testmuai.com/resources/uploads/2021/04/ExpectedConditions-In-Selenium-Types-And-Examples.png)
Selenium
ExpectedConditions in Selenium: Python & Java Examples [2026] | TestMu AI (Formerly LambdaTest)ExpectedConditions let you wait for elements to be clickable, visible, or present before interacting. See examples for elementToBeClickable, alertIsPresent, and more.
March 16, 2026

Selenium
A Complete Guide to Using @FindBy Annotation in Selenium Java | TestMu AI (Formerly LambdaTest)@FindBy is an annotation used in Java to locate and identify web elements on a web page. This Selenium Java tutorial discusses using @FindBy annotation along with @FindBys, @FindAll, and @CacheLookup in Selenium Java.
December 25, 2025

Automation
Fluent Interface Design Pattern in Automation Testing | TestMu AI (Formerly LambdaTest)This blog on the fluent interface design pattern discusses writing Selenium web automation tests in a fluent way.
December 26, 2025

Automation
GPS Geolocation vs IP Geolocation: How To Test Them On Real Devices? | TestMu AI (Formerly LambdaTest)This blog covers the differences between GPS and IP geolocation, and explores manual and automated testing techniques by manipulating geolocation settings.
May 9, 2024

Selenium
How to Handle Dynamic Dropdowns in Selenium WebDriver Using Java | TestMu AI (Formerly LambdaTest)Learn how to effectively manage dynamic dropdowns in Selenium WebDriver using Java. Master the art of automated testing for dynamic web elements.
March 16, 2026

Selenium
How to Handle StaleElementReferenceException in SeleniumLearn how to handle StaleElementReferenceException in Selenium with effective strategies to ensure stable and reliable test automation.
December 25, 2025

Selenium
How to Handle File Upload in Selenium | TestMu AI (Formerly LambdaTest)Learn how to handle file upload in Selenium. Explore techniques and examples to automate file uploads and streamline your testing processes.
March 23, 2026

Selenium
How to Use Breakpoints for Debugging in Selenium WebDriverIn this blog, learn how to use breakpoints to perform debugging in Selenium WebDriver.
February 14, 2025

Selenium
How to Use JavaScriptExecutor in Selenium | TestMu AI (Formerly LambdaTest)Learn how to use JavaScriptExecutor in Selenium to execute JavaScript commands, enhance test scripts, and handle complex WebElements efficiently.
May 3, 2026
![How To Use JUnit Ignore Test Annotation [With Examples] | TestMu AI (Formerly LambdaTest)](https://assets.testmuai.com/resources/uploads/2023/05/JUnit2040Ignore20Test20Annotation20with20Example201200px201-1.png)
Software Testing
How To Use JUnit Ignore Test Annotation [With Examples] | TestMu AI (Formerly LambdaTest)This blog on JUnit Ignore Test annotation will provide valuable inputs and practical advice on how to disable/skip tests using different annotations.
November 10, 2025

Software Testing
How to Write JUnit Test Cases: Step-by-Step Guide | TestMu AI (Formerly LambdaTest)Learn how to write JUnit test cases with this step-by-step guide. Master test annotations, assertions, and best practices to ensure robust and reliable testing.
December 8, 2025

Selenium
Selenium Locators Made Easy: Types & Examples for Reliable TestsLearn Selenium locators the easy way. Explore types, real examples, and best practices to avoid flaky tests.
May 1, 2026

Selenium
Mouse Actions in Selenium: Examples Using the Actions Class | TestMu AI (Formerly LambdaTest)Learn how to handle mouse actions in Selenium using the Actions class: click, double-click, right-click, hover, and drag-and-drop, with working Java code.
June 22, 2026

Software Testing
ExpectedConditions In Selenium: Types And Examples | TestMu AI (Formerly LambdaTest)Learn how ExpectedConditions in Selenium enhance automation testing with precise waits for dynamic elements, improving reliability and reducing flakiness.
March 5, 2026

Playwright
How to Use Playwright Fixtures for Cleaner and Reusable Tests | TestMu AI (Formerly LambdaTest)Learn how to use Playwright fixtures for scalable automation. Explore built-in and custom fixtures, and more.
March 16, 2026

Selenium
How To Take Full Page Screenshots In Selenium WebDriver | TestMu AI (Formerly LambdaTest)Learn how to take full page screenshots in Selenium WebDriver, including various approaches such as viewable area, WebElements full page screenshots, and more.
February 24, 2026

Selenium
Selenium 4 WebDriver Hierarchy: A Detailed Explanation | TestMu AI (Formerly LambdaTest)Explore the new Selenium 4 WebDriver hierarchy and learn how the main interfaces have been redesigned and simplified for better automation of web browsers.
April 15, 2024
![Selenium AI Tutorial: AI-Powered Automation Guide [2026] | TestMu AI (Formerly LambdaTest)](https://assets.testmuai.com/resources/images/meta/selenium-ai-tutorial.webp)
Selenium
Selenium AI Tutorial: AI-Powered Automation Guide [2026] | TestMu AI (Formerly LambdaTest)Learn how Selenium AI uses self-healing locators, visual testing & smart automation to reduce flaky tests, cut maintenance & boost test reliability.
May 25, 2026
![How to Click on a Button in Selenium [With Examples]](https://assets.testmuai.com/resources/images/meta/how-to-click-on-a-button-in-selenium-og.webp)
Selenium
How to Click on a Button in Selenium [With Examples]Learn how to click on a button in Selenium with working Java, Python, and JavaScript examples covering left-click, right-click, double-click, drag-and-drop, JavascriptExecutor fallback, and explicit waits.
May 23, 2026

Selenium
Selenium Grid Setup: Basics and Getting Started Tutorial | TestMu AI (Formerly LambdaTest)Discover how to configure a Selenium Grid setup for improved test automation. Get the complete setup guide here.
February 25, 2026

Selenium
What’s New in Selenium Manager: Features and Improvements | TestMu AI (Formerly LambdaTest)Discover what’s new in Selenium Manager in Selenium 4, including Chrome compatibility, Automated Chrome, and ChromeDriver Management endpoints.
April 15, 2024

Selenium
Selenium Pagination Tutorial: How to Handle Page Navigation | TestMu AI (Formerly LambdaTest)In this Selenium pagination tutorial, learn about paginated websites, their importance, and how to automate pagination using Selenium Java on the TestMu AI (Formerly LambdaTest) cloud grid.
March 28, 2025

Selenium
How To Perform Visual Regression Testing With Selenium And Smart UI | TestMu AI (Formerly LambdaTest)Selenium visual regression testing focuses on detecting unintended visual changes or regressions in a web application's user interface over time. This blog discusses visual regression testing and how to perform it with Selenium and TestMu AI (Formerly LambdaTest)’s SmartUI.
April 15, 2024

Selenium
Automating Shadow DOM in Selenium WebDriver | TestMu AI (Formerly LambdaTest)Learn about Shadow DOM in Selenium, how to find elements using getShadowRoot(), JavaScriptExecuter and automate Shadow DOM with Selenium.
April 29, 2026

Selenium
How to Handle Shadow Root Selenium Java | TestMu AI (Formerly LambdaTest)In this tutorial, learn how to handle Shadow root in Selenium Java using the getShadowRoot() method and JavaScriptExecuter.
February 22, 2026

Automation
Thread.sleep() Method in Java - Complete Tutorial With Example | TestMu AI (Formerly LambdaTest)This Selenium Java tutorial discusses Thread.sleep() in Java to pause the code execution for some time and best practices of using Selenium’s implicit, explicit and fluent waits in the code for saving the time in test automation code execution.
November 2, 2023

Software Testing
How to Perform React Native Testing on Android and iOSLearn about the React Native framework & how to perform React Native testing on Android & iOS apps using manual and automation testing approaches.
May 4, 2026

Selenium
How to Use Thread.sleep() in SeleniumEver wondered how to use Thread.sleep in Java? Learn everything there is to know about the method and using it in Selenium. Read more.
February 19, 2026

Playwright
Vibe Testing with Playwright MCP: Testing UX with AI Agents | TestMu AI (Formerly LambdaTest)Learn how to perform vibe testing with Playwright MCP and Claude to validate user experience. Run AI-driven browser tests, generate scripts, and use Kane AI.
June 25, 2026

Selenium
Vibe Testing with Selenium: Evaluating Real User Experience | TestMu AI (Formerly LambdaTest)Explore vibe testing with Selenium using Cursor AI to generate, execute, and validate real user experience through AI-assisted test automation.
May 4, 2026

Automation
How to Run WebdriverIO Tests: Getting Started Tutorial | TestMu AI (Formerly LambdaTest)WebdriverIO is a JavaScript automation framework written in NodeJS. In this tutorial, learn how to run WebdriverIO tests.
November 15, 2025

Software Testing
What is Continuous Testing? | TestMu AI (Formerly LambdaTest)Continuous Testing helps us with building the right product by implementing testing at every phase of the Software Development Life Cycle.
November 27, 2023

Automation
What's New in JUnit 6: Features & Enhancements | TestMu AI (Formerly LambdaTest)JUnit 6 raises the Java baseline to 17, unifies module versioning, adds native Kotlin coroutine support, and removes legacy modules. See what's new in JUnit 6.
June 28, 2026