Skip to content

Added a new FAQ#872

Merged
bharathk08 merged 1 commit intodevfrom
DOC-721
Dec 12, 2025
Merged

Added a new FAQ#872
bharathk08 merged 1 commit intodevfrom
DOC-721

Conversation

@Nandhini4501
Copy link
Contributor

@Nandhini4501 Nandhini4501 commented Dec 12, 2025

Added a new FAQ - "Why Can’t Selenium ChromeDriver Interact With 3DS Authentication Pages?" to the docs as per the ticket https://testsigma.atlassian.net/browse/DOC-721

image

Summary by CodeRabbit

  • Documentation
    • Added FAQ explaining why Selenium ChromeDriver cannot interact with 3DS authentication pages
    • Provided configuration guidance using pageLoadStrategy capability to prevent indefinite waiting during test execution
    • Included step-by-step instructions with images for test configuration

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 12, 2025

Walkthrough

A new documentation page has been added explaining why Selenium ChromeDriver cannot interact with 3DS authentication pages due to third-party iframes with long-running scripts, and providing a configuration workaround using the pageLoadStrategy capability.

Changes

Cohort / File(s) Summary
Documentation: 3DS Authentication Guide
src/pages/docs/FAQs/web-apps/why-can't-selenium-chromedriver-interact-with-3ds-authentication-pages.md
New FAQ page documenting the root cause of ChromeDriver incompatibility with 3DS authentication pages and providing configuration steps to prevent indefinite waiting by setting pageLoadStrategy to "none" in Ad-Hoc Run Desired Capabilities. Includes front matter metadata and instructional content with image references.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Verify technical accuracy of the 3DS authentication explanation and ChromeDriver behavior
  • Validate the provided configuration workaround and pageLoadStrategy guidance
  • Check for consistent formatting, metadata structure, and image reference correctness

Suggested reviewers

  • bharathk08

Poem

🐰 A curious question now answered with care,
Why ChromeDriver stumbles on pages so rare,
Three-D-S security standing so tall,
With pageLoadStrategy, we'll conquer it all! 🎯

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Title check ❓ Inconclusive The title 'Added a new FAQ' is vague and generic, failing to specify which FAQ was added or what it addresses. Use a more descriptive title that indicates the specific topic, such as 'Add FAQ on Selenium ChromeDriver 3DS authentication issues' or similar.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch DOC-721

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🧹 Nitpick comments (1)
src/pages/docs/FAQs/web-apps/why-can’t-selenium-chromedriver-interact-with-3ds-authentication-pages.md (1)

39-60: Simplify the section heading and tighten step phrasing.

  • ## **Steps to Add...** (Line 39) doesn’t need bold inside a heading; use ## Steps to add....
  • Step 4 ends with “enter the following:” but doesn’t explicitly say it’s a key/value pair; consider “add the following capability:”.

Proposed change:

-## **Steps to Add the Desired Capability to the Test Case**
+## Steps to add the desired capability to the test case
...
-4. In the **Ad-Hoc Run** overlay, expand the **Desired Capabilities** section, enter the following:
+4. In the **Ad-Hoc Run** overlay, expand **Desired Capabilities**, and add:

Optional: add a one-liner note that pageLoadStrategy: none may require explicit waits after navigation (since WebDriver won’t wait for full load).

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 435271a and 7570d70.

📒 Files selected for processing (1)
  • src/pages/docs/FAQs/web-apps/why-can’t-selenium-chromedriver-interact-with-3ds-authentication-pages.md (1 hunks)
🧰 Additional context used
🪛 LanguageTool
src/pages/docs/FAQs/web-apps/why-can’t-selenium-chromedriver-interact-with-3ds-authentication-pages.md

[uncategorized] ~33-~33: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...stops ChromeDriver from waiting for the full page load. This article discusses how to ad...

(EN_COMPOUND_ADJECTIVE_INTERNAL)


[style] ~50-~50: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...es/projects/faq/selenium_faq_3.png) 4. In the Ad-Hoc Run overlay, expand the ...

(ENGLISH_WORD_REPEAT_BEGINNING_RULE)

🪛 markdownlint-cli2 (0.18.1)
src/pages/docs/FAQs/web-apps/why-can’t-selenium-chromedriver-interact-with-3ds-authentication-pages.md

19-19: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


24-24: Unordered list indentation
Expected: 0; Actual: 3

(MD007, ul-indent)


25-25: Unordered list indentation
Expected: 0; Actual: 3

(MD007, ul-indent)


26-26: Unordered list indentation
Expected: 0; Actual: 3

(MD007, ul-indent)


29-29: Unordered list indentation
Expected: 0; Actual: 3

(MD007, ul-indent)


30-30: Unordered list indentation
Expected: 0; Actual: 3

(MD007, ul-indent)


31-31: Unordered list indentation
Expected: 0; Actual: 3

(MD007, ul-indent)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: CI

Comment on lines +1 to +16
---
title: "Why Can’t Selenium ChromeDriver Interact With 3DS Authentication Pages?"
metadesc: "Learn why Selenium hangs on 3DS payment pages and how a simple desired capability prevents ChromeDriver from waiting indefinitely."
order: 24.20
page_id: "why-cant-selenium-chromedriver-interact-with-3ds-authentication-pages?"
warning: false
contextual_links:
- type: section
name: "Contents"
- type: link
name: "Steps to Add the Desired Capability to the Test Case"
url: "#steps-to-add-the-desired-capability-to-the-test-case"
---

---

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Remove redundant horizontal rules (---) to avoid confusing front matter vs separators.
You have front matter already (Line 1-13). The additional --- blocks at Line 15-16 and Line 37-38 (and trailing --- at Line 61) are likely unnecessary and can render oddly depending on the markdown pipeline.

Proposed change:

 ---
 title: "Why Can’t Selenium ChromeDriver Interact With 3DS Authentication Pages?"
 metadesc: "Learn why Selenium hangs on 3DS payment pages and how a simple desired capability prevents ChromeDriver from waiting indefinitely."
 order: 24.20
 page_id: "why-cant-selenium-chromedriver-interact-with-3ds-authentication-pages?"
 warning: false
 contextual_links:
 - type: section
   name: "Contents"
 - type: link
   name: "Steps to Add the Desired Capability to the Test Case"
   url: "#steps-to-add-the-desired-capability-to-the-test-case"
 ---
-
----
-

…and delete the later standalone --- lines unless your docs styleguide explicitly requires them.

Also applies to: 37-38, 61-61

🤖 Prompt for AI Agents
In
src/pages/docs/FAQs/web-apps/why-can’t-selenium-chromedriver-interact-with-3ds-authentication-pages.md
around lines 1-16, remove the redundant standalone '---' horizontal-rule lines
(specifically delete the extra '---' at lines 15-16 and also remove the similar
extraneous separators at lines 37-38 and 61), leaving only the single YAML front
matter block at the top; verify the file still starts and ends the front matter
correctly and contains no other isolated '---' lines.

Comment on lines +17 to +36
When you navigate to 3D Secure (3DS) authentication pages such as Visa or Mastercard, Selenium on Chrome or Edge may freeze or time out during execution.

**Why This Happens**

3DS authentication screens load a third-party iframe that runs continuous background scripts from the payment gateway.

Inside these iframes:
- Long-running JavaScript and postMessage listeners are always active.
- Messages are continuously exchanged with the payment provider.
- The browser keeps processing events and never reaches a fully loaded state.

As a result:
- ChromeDriver waits indefinitely for the page to finish loading
- The pageLoad event never completes
- Selenium becomes unresponsive after navigation

To prevent Selenium from waiting indefinitely, you need to add a desired capability to your test case that stops ChromeDriver from waiting for the full page load.

This article discusses how to add the desired capability to the test case.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Use real headings + fix list indentation (markdownlint MD036/MD007).

  • Why This Happens” (Line 19-19) should be a heading (e.g., ## Why this happens) rather than bold-as-heading.
  • The unordered lists under “Inside these iframes:” and “As a result:” are indented (Line 24-26, 29-31); markdownlint expects no leading spaces.

Proposed change:

-**Why This Happens**
+## Why this happens
 ...
 Inside these iframes:
-   - Long-running JavaScript and postMessage listeners are always active.
-   - Messages are continuously exchanged with the payment provider.
-   - The browser keeps processing events and never reaches a fully loaded state.
+- Long-running JavaScript and `postMessage` listeners are always active.
+- Messages are continuously exchanged with the payment provider.
+- The browser keeps processing events and never reaches a fully loaded state.
 ...
 As a result:
-   - ChromeDriver waits indefinitely for the page to finish loading
-   - The pageLoad event never completes
-   - Selenium becomes unresponsive after navigation
+- ChromeDriver waits indefinitely for the page to finish loading.
+- The page load event never completes.
+- Selenium becomes unresponsive after navigation.

Also consider hyphenating “full-page load” (Line 33-35) if you keep it as an adjective (“…waiting for the full-page load”).

🧰 Tools
🪛 LanguageTool

[uncategorized] ~33-~33: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...stops ChromeDriver from waiting for the full page load. This article discusses how to ad...

(EN_COMPOUND_ADJECTIVE_INTERNAL)

🪛 markdownlint-cli2 (0.18.1)

19-19: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)


24-24: Unordered list indentation
Expected: 0; Actual: 3

(MD007, ul-indent)


25-25: Unordered list indentation
Expected: 0; Actual: 3

(MD007, ul-indent)


26-26: Unordered list indentation
Expected: 0; Actual: 3

(MD007, ul-indent)


29-29: Unordered list indentation
Expected: 0; Actual: 3

(MD007, ul-indent)


30-30: Unordered list indentation
Expected: 0; Actual: 3

(MD007, ul-indent)


31-31: Unordered list indentation
Expected: 0; Actual: 3

(MD007, ul-indent)

🤖 Prompt for AI Agents
In
src/pages/docs/FAQs/web-apps/why-can’t-selenium-chromedriver-interact-with-3ds-authentication-pages.md
around lines 17 to 36, replace the bold-as-heading "**Why This Happens**" with a
proper markdown heading (e.g., "## Why this happens"), remove the extra leading
spaces on the unordered list items under "Inside these iframes:" and "As a
result:" so they are left-aligned list items (no leading spaces), and optionally
hyphenate "full-page load" if you intend it as a compound adjective (change
"full page load" to "full-page load") in the sentence about ChromeDriver waiting
for the full page load.

@bharathk08 bharathk08 merged commit 0f1c403 into dev Dec 12, 2025
3 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants