Hardware FixRecommendedDevice not working? Your driver may be the problemCheck updates for common hardware issues.Fix DriversOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix Now×
Skip to content
World desk7 min

24 Selenium Testing Scenarios You Shouldn’t Automate

Selenium’s official docs discourage eight categories of browser automation. This checklist expands them into 24 practical examples and explains when a unit, lower-level, or manual test is a better fit.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Selenium’s official documentation discourages eight kinds of browser-automation work, not a list of 24. The 24 examples below unpack those eight categories into practical cases where Selenium is usually the wrong tool—not a universal ban. Use a lower-level check, a controlled test setup, or manual testing when it answers the question more reliably.

How to use this checklist

Selenium’s test-practice guidance is contextual: the right choice depends on the test environment and what you need to prove. Its Discouraged behaviors page lists eight categories. The 24 items here are editorial examples grouped under those categories; Selenium does not publish a 24-scenario list.

As an Amazon Associate I earn from qualifying purchases.

For each case, ask whether a real browser interaction is essential. Browser-level functional tests cost more to run and require supporting infrastructure than unit or lower-level checks. Selenium’s Overview of Test Automation puts the principle plainly: “It is not always advantageous to automate test cases.”

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

CAPTCHA challenges

Selenium discourages CAPTCHA automation. A browser test should not become an attempt to defeat an anti-automation challenge.

  1. Solving a CAPTCHA to create a test account. Use a test-environment approach agreed with the product and security teams if account creation needs coverage.
  2. Retrying CAPTCHA challenges until one passes. Repeated attempts test the challenge’s defenses and can make the suite unreliable, rather than establishing that the application flow works.
  3. Automating CAPTCHA completion in a critical user journey. Keep the application-flow test focused on the behavior your team controls; do not build it around defeating a protective check.

File downloads

Selenium lists file downloads as discouraged browser-automation work. A browser may trigger a download, but it is often not the best place to verify the generated file or delivery behavior.

  1. Checking that a report contains the right data. Validate the report-generation logic or file contents through a more direct interface where possible.
  2. Verifying a file’s format or metadata. Test the produced file directly instead of relying on browser download handling to establish its properties.
  3. Checking that an export endpoint returns the expected file. Use an appropriate direct application or HTTP-level check if the requirement is the returned file itself; reserve browser automation for a user interaction that genuinely needs a browser.

HTTP response codes

Selenium discourages using browser automation to check HTTP response codes. A browser workflow is not the most direct evidence for a transport-level status.

  1. Checking whether an API returns a particular status. Make an HTTP-level test for the API response rather than infer it from what a browser displays.
  2. Confirming that a page endpoint returns an error status. Request the endpoint directly in a test suited to verifying its status code.
  3. Auditing status codes across many URLs. This is not a user workflow; check responses with a method built around HTTP requests instead of driving a browser for each link.

Gmail, email, and Facebook logins

Selenium’s discouraged list names Gmail, email, and Facebook logins. Tests of your application should not depend unnecessarily on a live third-party login flow that can change independently.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Signing into Gmail to retrieve a verification message. Avoid making a browser test depend on an external mailbox’s live login interface; test your application’s email-related behavior through a controlled setup.
  2. Logging into a live email provider to prove your app’s login works. Keep the test focused on the app’s own authentication flow rather than the provider’s changing pages and policies.
  3. Automating Facebook login as a prerequisite for an app test. If the app’s integration is in scope, isolate the behavior you control and avoid relying on a third party’s live login flow for every test run.

Dependent tests

Selenium discourages test dependencies and encourages independent tests. A test should not require an earlier test to pass or leave behind state.

  1. Test B can run only after Test A creates an account. Give Test B its own setup so it can run alone and reveal its own failure.
  2. A checkout test relies on a cart left by another test. Create or prepare the cart within the test’s own controlled setup rather than depending on execution order.
  3. A test assumes another test has already changed shared data. Make the required state explicit and independent; shared, order-sensitive state makes failures harder to diagnose.

Performance testing

Selenium lists performance testing as discouraged. Browser automation is meant to exercise user-facing behavior, not serve as the primary way to measure system load or response performance.

  1. Measuring server response time by timing a browser click. Browser rendering and other client-side work can affect the observation; use a performance-focused measurement suited to the question.
  2. Generating load by launching many Selenium sessions. Do not treat end-user browser automation as your main load-generation method.
  3. Using a long UI journey as a performance benchmark. A multi-step browser flow is difficult to interpret as a measure of system performance; separate performance questions from functional browser checks.

Link spidering

Selenium discourages link spidering. Crawling a site to inventory links is a different job from verifying a user-critical browser workflow.

  1. Opening every link on every page to build a site-wide inventory. Use a crawling or link-checking approach rather than turning a browser test suite into a general-purpose spider.
  2. Following every internal link to find broken destinations. Check links directly where possible; keep Selenium focused on the links and transitions central to a defined user task.
  3. Recursively crawling an entire site from one browser test. A single sprawling crawl is difficult to diagnose and does not establish a specific user behavior. Define discrete browser checks for important journeys instead.

Two-factor authentication

Selenium lists two-factor authentication (2FA) as discouraged. A live second-factor challenge or message delivery can make an end-to-end browser test fragile. If your application’s authentication behavior needs coverage, work with security stakeholders on a controlled test setup; do not weaken protections in production.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Waiting for a live SMS code during every test run. Delivery delays and external messaging behavior can derail the test without revealing whether the application’s own flow is correct.
  2. Opening a live authenticator app to read a rotating code. Avoid making a routine browser check depend on manually or indirectly accessing a live second factor.
  3. Requiring a live email one-time code to complete every browser test. Test the application’s relevant authentication behavior through a controlled approach designed with security stakeholders, not by relying on live delivery for each run.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

When Selenium is still the right choice

These examples are reasons to choose the test level carefully, not reasons to avoid Selenium altogether. Use it when the requirement depends on real browser interaction—such as proving that a user can complete a specific, important interface flow—and a lower-level test cannot establish the same behavior.

  • Prefer a unit or lower-level test when it can prove the required application logic without a browser.
  • Keep a browser test short with one discrete action and evaluation. Selenium’s documentation warns that long workflows take longer, risk rendering-timing problems, and make failures harder to diagnose. Its example of creating an account, configuring an item, checking out, paying, and leaving feedback is better split into smaller, speedy tests, each with one reason to exist. See Encouraged behaviors for its related guidance on test independence.
  • Consider manual testing for a short-term need when the interface is changing substantially or there is not enough time to build automation before a pressing test deadline. That is a trade-off, not a claim that manual testing is always preferable.

Choosing the right test approach

Before automating a scenario, compare the options against the actual requirement:

Question Selenium browser test Unit or lower-level test Manual test
Does the requirement depend on real browser interaction? Fits when browser behavior is essential. Fits when the relevant behavior can be established below the browser layer. Can cover an interface task when a short-term hands-on check is more practical.
What is the execution and infrastructure cost? Relatively costly to run and needs supporting infrastructure. Often a lighter option when it answers the same question. Requires a person to perform the check rather than automated browser infrastructure.
How exposed is the check to UI or external-service changes? A browser workflow can be affected by interface timing or third-party login changes. Can avoid UI dependencies when testing logic below that layer. May be practical while an interface is changing substantially.
How easy is it to diagnose a failure? Short, independent tests are easier to diagnose than a long workflow. Use when the lower-level test clearly identifies the behavior under test. A tester can investigate directly, but the check is not automated.
Is there enough time to build and maintain automation? Build when the value of repeatable browser coverage justifies the setup and upkeep. May be the lighter answer when browser coverage is unnecessary. Can be a reasonable short-term choice when a deadline is near or the interface is changing considerably.

The table is a practical decision aid, not a formal Selenium scoring framework. The Selenium project’s official pages describe recommendations as guidelines, and they were last modified September 16, 2026; their advice may change as the documentation is updated.

Or skip the browser setup

If your requirement is to capture a clean page image rather than test browser behavior, ScreenshotNeo is a website screenshot API and MCP server from Yorker Media. A single GET request can return a PNG, JPEG, WebP, or PDF. For example:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

See the ScreenshotNeo documentation for API options. Cookie banners, popups, and chat widgets are removed before the shot; bot checks, blank pages, and failed loads are never billed. Its MCP server lets AI agents take screenshots. The free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. Sign up for free.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
PC Slower Than It Used to Be?Free scan - under a minute

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.