diff --git a/README.md b/README.md index eed7aa0a..13757d7c 100755 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ + + @@ -14,7 +16,7 @@

PyPI version GitHub version SeleniumBase Docs SeleniumBase GitHub Actions SeleniumBase

-๐Ÿš€ Start | +๐Ÿ„ Start | ๐Ÿฐ Features | ๐Ÿ“š Examples | ๐ŸŽ›๏ธ Options | @@ -202,7 +204,7 @@ Feature: SeleniumBase scenarios for the RealWorld App **You can install ``seleniumbase`` from [GitHub](https://github.com/seleniumbase/SeleniumBase) or [PyPI](https://pypi.org/project/seleniumbase/):** -๐Ÿ”ต Installing ``seleniumbase`` from a GitHub clone: +๐Ÿ”ต **Installing ``seleniumbase`` from a GitHub clone:** ```bash git clone https://github.com/seleniumbase/SeleniumBase.git @@ -210,14 +212,14 @@ cd SeleniumBase/ pip install -e . ``` -To upgrade an existing install from a GitHub clone: +**To upgrade an existing install from a GitHub clone:** ```bash git pull pip install -e . ``` -๐Ÿ”ต Installing ``seleniumbase`` from PyPI: +๐Ÿ”ต **Installing ``seleniumbase`` from PyPI:** ```bash pip install seleniumbase @@ -227,7 +229,7 @@ pip install seleniumbase * (Add ``--force-reinstall`` to upgrade indirect libraries.) * (Use ``pip3`` if multiple versions of Python are present.) -To upgrade an existing install from PyPI: +**To upgrade an existing install from PyPI:** ```bash pip install -U seleniumbase @@ -283,7 +285,7 @@ COMMANDS:

Downloading web drivers:

-โœ… SeleniumBase automatically downloads web drivers as needed, such as ``chromedriver`` and ``geckodriver`` (Firefox). +โœ… SeleniumBase automatically downloads web drivers as needed, such as ``chromedriver``, ``edgedriver``, and ``geckodriver``. โœ… To manually download a webdriver, see [Console Scripts](https://seleniumbase.io/seleniumbase/console_scripts/ReadMe/) OR [Webdriver Installation](https://seleniumbase.io/help_docs/webdriver_installation/). diff --git a/examples/ReadMe.md b/examples/ReadMe.md index 0883378d..7d630ae1 100755 --- a/examples/ReadMe.md +++ b/examples/ReadMe.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) Example Tests:

SeleniumBase Demo Page

diff --git a/examples/behave_bdd/ReadMe.md b/examples/behave_bdd/ReadMe.md index 9c3e72a9..6e302663 100755 --- a/examples/behave_bdd/ReadMe.md +++ b/examples/behave_bdd/ReadMe.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) ๐Ÿ Behave test runner for SeleniumBase ๐Ÿ ๐Ÿ (Utilizes the [Behave BDD Python library](https://github.com/behave/behave). For more info, see the [Behave tutorial](https://behave.readthedocs.io/en/stable/tutorial.html) and read about [Behave's Gherkin model](https://behave.readthedocs.io/en/stable/gherkin.html).) diff --git a/examples/boilerplates/ReadMe.md b/examples/boilerplates/ReadMe.md index 757b461f..786d18bf 100755 --- a/examples/boilerplates/ReadMe.md +++ b/examples/boilerplates/ReadMe.md @@ -1,3 +1,5 @@ + +

Example Boilerplates:

diff --git a/examples/capabilities/ReadMe.md b/examples/capabilities/ReadMe.md index bc753553..9f1c1df4 100755 --- a/examples/capabilities/ReadMe.md +++ b/examples/capabilities/ReadMe.md @@ -1,3 +1,5 @@ + +

Using Desired Capabilities

You can specify browser capabilities when running SeleniumBase tests on a remote Selenium Grid server such as BrowserStack, Sauce Labs, or another. diff --git a/examples/chart_maker/ReadMe.md b/examples/chart_maker/ReadMe.md index 51d39e63..cd4bafc9 100755 --- a/examples/chart_maker/ReadMe.md +++ b/examples/chart_maker/ReadMe.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) ๐Ÿ“Š ChartMaker ๐Ÿ“ถ

SeleniumBase ChartMaker lets you use Python to generate HTML charts.

diff --git a/examples/dialog_boxes/ReadMe.md b/examples/dialog_boxes/ReadMe.md index 076ad090..0fa3d989 100755 --- a/examples/dialog_boxes/ReadMe.md +++ b/examples/dialog_boxes/ReadMe.md @@ -1,15 +1,17 @@ -## [](https://github.com/seleniumbase/SeleniumBase/) ๐Ÿ›‚ Dialog Boxes ๐Ÿ›‚ + + +

๐Ÿ›‚ Dialog Boxes ๐Ÿ›‚

SeleniumBase Dialog Boxes let your users provide input in the middle of automation scripts. * This feature utilizes the [jquery-confirm](https://craftpip.github.io/jquery-confirm/) library. * A Python API is used to call the JavaScript API. -SeleniumBase +SeleniumBase

โ†•๏ธ (Example: dialog_box_tour.py) โ†•๏ธ

-SeleniumBase +SeleniumBase

Here's how to run that example:

@@ -175,4 +177,4 @@ self.activate_jquery_confirm() # Automatic for jqc methods --------

โœ… ๐Ÿ›‚ Automated/Manual Hybrid Mode (MasterQA)

-

MasterQA uses SeleniumBase Dialog Boxes to speed up manual testing by having automation perform all the browser actions while the manual tester handles validation. See the MasterQA GitHub page for examples.

+

MasterQA uses SeleniumBase Dialog Boxes to speed up manual testing by having automation perform all the browser actions while the manual tester handles validation. See the MasterQA GitHub page for examples.

diff --git a/examples/example_logs/ReadMe.md b/examples/example_logs/ReadMe.md index c45254e9..f247338e 100755 --- a/examples/example_logs/ReadMe.md +++ b/examples/example_logs/ReadMe.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) Logs, The Dashboard, and Reports: diff --git a/examples/master_qa/ReadMe.md b/examples/master_qa/ReadMe.md index a246ebc3..dfc6ea36 100755 --- a/examples/master_qa/ReadMe.md +++ b/examples/master_qa/ReadMe.md @@ -1,3 +1,5 @@ + + ![](https://seleniumbase.io/cdn/img/masterqa_logo.png "MasterQA")

MasterQA combines automation with manual verification steps.

diff --git a/examples/migration/raw_selenium/ReadMe.md b/examples/migration/raw_selenium/ReadMe.md index 851847f0..4ef9d69a 100644 --- a/examples/migration/raw_selenium/ReadMe.md +++ b/examples/migration/raw_selenium/ReadMe.md @@ -1,3 +1,5 @@ + + ## โœ… Support for migrating from raw Selenium to SeleniumBase diff --git a/examples/presenter/ReadMe.md b/examples/presenter/ReadMe.md index ef14b545..575ff31e 100755 --- a/examples/presenter/ReadMe.md +++ b/examples/presenter/ReadMe.md @@ -1,10 +1,12 @@ -## [](https://github.com/seleniumbase/SeleniumBase/) ๐Ÿ“‘ Presenter ๐ŸŽž๏ธ + + +## [](https://github.com/seleniumbase/SeleniumBase/) ๐Ÿ“‘ Presenter ๐ŸŽž๏ธ

SeleniumBase Presenter (slide-maker) lets you use Python to generate HTML presentations.

Here's a sample presentation: -
+
([Click on the image/GIF for the actual presentation](https://seleniumbase.io/other/presenter.html)) @@ -21,7 +23,7 @@ pytest my_presentation.py **Here's a presentation with a chart:** -
+
([Click on the image/GIF for the actual presentation](https://seleniumbase.io/other/core_presentation.html)) @@ -35,7 +37,7 @@ pytest core_presentation.py ``` -

Creating a new presentation:

+

Creating a new presentation:

```python self.create_presentation(name=None, theme="serif", transition="default") @@ -58,7 +60,7 @@ Notes are disabled by default. You can enable notes by specifying: ``show_notes=True`` -

Adding a slide to a presentation:

+

Adding a slide to a presentation:

```python self.add_slide(content=None, image=None, code=None, iframe=None, @@ -81,7 +83,7 @@ self.add_slide(content=None, image=None, code=None, iframe=None, """ ``` -

Running a presentation:

+

Running a presentation:

```python self.begin_presentation( @@ -104,7 +106,7 @@ Before the presentation is run, the full HTML is saved to the ``saved_presentati All methods have the optional ``name`` argument, which is only needed if you're creating multiple presentations at once. -

Here's an example of using SeleniumBase Presenter:

+

Here's an example of using SeleniumBase Presenter:

```python from seleniumbase import BaseCase @@ -229,7 +231,7 @@ That example is from [my_presentation.py](https://github.com/seleniumbase/Seleni pytest my_presentation.py ``` -

Saving a presentation:

+

Saving a presentation:

If you want to save the presentation you created as an HTML file, use: @@ -245,4 +247,4 @@ self.begin_presentation(show_notes=True) -------- -

SeleniumBase

+

SeleniumBase

diff --git a/examples/tour_examples/ReadMe.md b/examples/tour_examples/ReadMe.md index ca879c01..cdd1dab1 100755 --- a/examples/tour_examples/ReadMe.md +++ b/examples/tour_examples/ReadMe.md @@ -1,4 +1,6 @@ -

SeleniumBase Tour

+ + +

SeleniumBase Tour

## [](https://github.com/seleniumbase/SeleniumBase/) Interactive Product Tours ๐ŸšŽ @@ -10,7 +12,7 @@ A tour demo: (with autoplay) -
+
[SeleniumBase maps_introjs_tour.py](https://github.com/seleniumbase/SeleniumBase/blob/master/examples/tour_examples/maps_introjs_tour.py) @@ -21,7 +23,7 @@ pytest maps_introjs_tour.py --interval=1 Here's a longer version: -
+
[SeleniumBase google_tour.py](https://github.com/seleniumbase/SeleniumBase/blob/master/examples/tour_examples/google_tour.py) @@ -142,6 +144,6 @@ OR -------- -
+
-

SeleniumBase

+

SeleniumBase

diff --git a/examples/unit_tests/ReadMe.md b/examples/unit_tests/ReadMe.md index ec4a60b4..3cc6d231 100755 --- a/examples/unit_tests/ReadMe.md +++ b/examples/unit_tests/ReadMe.md @@ -1,3 +1,5 @@ -### pytest-specific unit tests + + +### pytest-specific unit tests The tests in this folder are for basic verification of the SeleniumBase framework with pytest. diff --git a/examples/visual_testing/ReadMe.md b/examples/visual_testing/ReadMe.md index 7dd19d0a..3218963c 100755 --- a/examples/visual_testing/ReadMe.md +++ b/examples/visual_testing/ReadMe.md @@ -1,3 +1,5 @@ + +

SeleniumBase

## [](https://github.com/seleniumbase/SeleniumBase/) Automated Visual Regression Testing diff --git a/help_docs/ReadMe.md b/help_docs/ReadMe.md index 9b014b8e..8b47ddc6 100755 --- a/help_docs/ReadMe.md +++ b/help_docs/ReadMe.md @@ -1,20 +1,21 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) Help Docs

-๐Ÿš Start | -๐Ÿ“Š Dashboard +๐Ÿ„ Start | +๐Ÿ“Š Dashboard
๐Ÿฐ Features | ๐ŸŽ›๏ธ Options
-๐Ÿ“– Examples | +๐Ÿ“š Examples | ๐Ÿ“ฑ Mobile
-๐Ÿ“ Syntax Formats | +๐Ÿ”ก Syntax Formats | ๐Ÿค– CI/CD
-๐Ÿ“™ APIs | -๐Ÿ“Š Reports | +๐Ÿ“— Methods / APIs | ๐ŸšŽ Tours
๐Ÿ”ฎ Console Scripts | @@ -29,11 +30,11 @@ ๐Ÿ”ด Recorder | ๐Ÿš‰ Node GUI
-๐Ÿˆบ Translator | +๐ŸŒ Translator | ๐Ÿ›‚ Dialog Boxes
๐ŸŽž๏ธ Slides | -๐Ÿ“Š Charts +๐Ÿ“ถ Charts

-------- diff --git a/help_docs/behave_gui.md b/help_docs/behave_gui.md index ae051bf9..88bda21a 100755 --- a/help_docs/behave_gui.md +++ b/help_docs/behave_gui.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) SeleniumBase Behave GUI / Commander ๐Ÿ๐ŸŽ–๏ธ ๐Ÿ๐ŸŽ–๏ธ The SeleniumBase Behave GUI lets you run behave scripts from a Desktop GUI.
diff --git a/help_docs/case_plans.md b/help_docs/case_plans.md index d8a8fd73..6b2a04c6 100755 --- a/help_docs/case_plans.md +++ b/help_docs/case_plans.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) SeleniumBase Case Plans ๐Ÿ—‚๏ธ diff --git a/help_docs/chart_maker.md b/help_docs/chart_maker.md index 51d39e63..cd4bafc9 100755 --- a/help_docs/chart_maker.md +++ b/help_docs/chart_maker.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) ๐Ÿ“Š ChartMaker ๐Ÿ“ถ

SeleniumBase ChartMaker lets you use Python to generate HTML charts.

diff --git a/help_docs/chinese.md b/help_docs/chinese.md index ae545c64..2a111d78 100644 --- a/help_docs/chinese.md +++ b/help_docs/chinese.md @@ -1,3 +1,5 @@ + + @@ -116,20 +118,28 @@ pytest my_first_test.py --demo from seleniumbase import BaseCase class MyTestClass(BaseCase): - - def test_basics(self): - self.open("https://store.xkcd.com/search") - self.type('input[name="q"]', "xkcd book") - self.click('input[value="Search"]') - self.assert_text("xkcd: volume 0", "h3") - self.open("https://xkcd.com/353/") - self.assert_title("xkcd: Python") - self.assert_element('img[alt="Python"]') - self.click('a[rel="license"]') - self.assert_text("free to copy and reuse") - self.go_back() - self.click_link("About") - self.assert_exact_text("xkcd.com", "h2") + def test_swag_labs(self): + self.open("https://www.saucedemo.com") + self.type("#user-name", "standard_user") + self.type("#password", "secret_sauce\n") + self.assert_element("div.inventory_list") + self.assert_text("PRODUCTS", "span.title") + self.click('button[name*="backpack"]') + self.click("#shopping_cart_container a") + self.assert_text("YOUR CART", "span.title") + self.assert_text("Backpack", "div.cart_item") + self.click("button#checkout") + self.type("#first-name", "SeleniumBase") + self.type("#last-name", "Automation") + self.type("#postal-code", "77123") + self.click("input#continue") + self.assert_text("CHECKOUT: OVERVIEW") + self.assert_text("Backpack", "div.cart_item") + self.click("button#finish") + self.assert_exact_text("THANK YOU FOR YOUR ORDER", "h2") + self.assert_element('img[alt="Pony Express"]') + self.js_click("a#logout_sidebar_link") + self.assert_element("div#login_button_container") ``` * ้ป˜่ฎคๆƒ…ๅ†ตไธ‹, **[CSS Selectors](https://www.w3schools.com/cssref/css_selectors.asp)** ็”จๆฅๆŸฅๆ‰พ้กต้ขๅ…ƒ็ด . @@ -167,23 +177,23 @@ self.save_screenshot(FILE_NAME) # ไฟๅญ˜ๅฝ“ๅ‰้กต้ข็š„ๆˆชๅ›พ from seleniumbase.translate.chinese import ็ก’ๆต‹่ฏ•็”จไพ‹ class ๆˆ‘็š„ๆต‹่ฏ•็ฑป(็ก’ๆต‹่ฏ•็”จไพ‹): - def test_ไพ‹ๅญ1(self): - self.ๅผ€ๅฏ็ฝ‘ๅ€("https://xkcd.in/comic?lg=cn&id=353") - self.ๆ–ญ่จ€ๆ ‡้ข˜("Python - XKCDไธญๆ–‡็ซ™") - self.ๆ–ญ่จ€ๅ…ƒ็ด ("#content div.comic-body") - self.ๆ–ญ่จ€ๆ–‡ๆœฌ("ไธŠๆผซ็”ป") - self.ๅ•ๅ‡ป("div.nextLink") - self.ๆ–ญ่จ€ๆ–‡ๆœฌ("่€ๅฆˆ็š„้€†่ขญ", "#content h1") - self.ๅ•ๅ‡ป้“พๆŽฅๆ–‡ๆœฌ("ไธ‹ไธ€็ฏ‡") - self.ๆ–ญ่จ€ๆ–‡ๆœฌ("ๆ•ฒๆกŒๅญ", "#content h1") - self.ๆ–ญ่จ€ๆ–‡ๆœฌ("ๆœ‰ๆ—ถๅ€™ๆ— ่Šๅฐฑๆ˜ฏๆœ€ๆฃ’็š„ไน่ถฃ") - self.ๅ›žๅŽป() - self.ๅ•ๅ‡ป้“พๆŽฅๆ–‡ๆœฌ("ๅ…ฐๅพทๅฐ”ยท้—จ็ฝ—") - self.ๆ–ญ่จ€ๆ–‡ๆœฌ("ๅ…ฐๅพทๅฐ”ยท้—จ็ฝ—", "#firstHeading") - self.ๆ›ดๆ–ฐๆ–‡ๆœฌ("#searchInput", "็จ‹ๅผ่ฎพ่ฎก") + self.ๅผ€ๅฏ("https://zh.wikipedia.org/wiki/") + self.ๆ–ญ่จ€ๆ ‡้ข˜("็ปดๅŸบ็™พ็ง‘๏ผŒ่‡ช็”ฑ็š„็™พ็ง‘ๅ…จไนฆ") + self.ๆ–ญ่จ€ๅ…ƒ็ด ('a[title="้ฆ–้กต"]') + self.ๆ–ญ่จ€ๆ–‡ๆœฌ("ๆ–ฐ้—ปๅŠจๆ€", "span#ๆ–ฐ้—ปๅŠจๆ€") + self.่พ“ๅ…ฅๆ–‡ๆœฌ("#searchInput", "่ˆž้พ") self.ๅ•ๅ‡ป("#searchButton") - self.ๆ–ญ่จ€ๆ–‡ๆœฌ("็จ‹ๅบ่ฎพ่ฎก", "#firstHeading") + self.ๆ–ญ่จ€ๆ–‡ๆœฌ("่ˆž้พ", "#firstHeading") + self.ๆ–ญ่จ€ๅ…ƒ็ด ('img[src*="Chinese_draak.jpg"]') + self.่พ“ๅ…ฅๆ–‡ๆœฌ("#searchInput", "้บปๅฉ†่ฑ†่…") + self.ๅ•ๅ‡ป("#searchButton") + self.ๆ–ญ่จ€ๆ–‡ๆœฌ("้บปๅฉ†่ฑ†่…", "#firstHeading") + self.ๆ–ญ่จ€ๅ…ƒ็ด ('div.thumb div:contains("ไธ€ๅฎถไธญ้ค้คจ็š„้บปๅฉ†่ฑ†่…")') + self.่พ“ๅ…ฅๆ–‡ๆœฌ("#searchInput", "็ฒพๆญฆ่‹ฑ้›„") + self.ๅ•ๅ‡ป("#searchButton") + self.ๆ–ญ่จ€ๅ…ƒ็ด ('img[src*="Fist_of_legend.jpg"]') + self.ๆ–ญ่จ€ๆ–‡ๆœฌ("ๆŽ่ฟžๆฐ", 'li a[title="ๆŽ่ฟžๆฐ"]') ``` ``from seleniumbase.translate.chinese import ็ก’ๆต‹่ฏ•็”จไพ‹``: @@ -334,64 +344,108 @@ pytest my_first_test.py --pdb -s ไธ‹้ขๆ˜ฏPytest้™„ๅธฆ็š„ไธ€ไบ›ๆœ‰็”จ็š„ๅ‘ฝไปค่กŒ้€‰้กน: ```bash --v # Prints the full test name for each test. --q # Prints fewer details in the console output when running tests. +-v # Verbose mode. Prints the full name of each test run. +-q # Quiet mode. Print fewer details in the console output when running tests. -x # Stop running the tests after the first failure is reached. --html=report.html # Creates a detailed pytest-html report after tests finish. ---collect-only # Show what tests would get run without actually running them. +--collect-only | --co # Show what tests would get run. (Without running them) -n=NUM # Multithread the tests using that many threads. (Speed up test runs!) -s # See print statements. (Should be on by default with pytest.ini present.) --junit-xml=report.xml # Creates a junit-xml report after tests finish. ---pdb # If a test fails, pause run and enter debug mode. (Don't use with CI!) --m=MARKER # Only run tests that are marked with the specified pytest marker. +--pdb # If a test fails, enter Post Mortem Debug Mode. (Don't use with CI!) +--trace # Enter Debug Mode at the beginning of each test. (Don't use with CI!) +-m=MARKER # Run tests with the specified pytest marker. ``` SeleniumBase ไธบๆต‹่ฏ•ๆไพ›้ขๅค–็š„Pytestๅ‘ฝไปค่กŒ้€‰้กน: ```bash ---browser=BROWSER # (The web browser to use.) +--browser=BROWSER # (The web browser to use. Default: "chrome".) +--chrome # (Shortcut for "--browser=chrome". On by default.) +--edge # (Shortcut for "--browser=edge".) +--firefox # (Shortcut for "--browser=firefox".) +--safari # (Shortcut for "--browser=safari".) --cap-file=FILE # (The web browser's desired capabilities to use.) --cap-string=STRING # (The web browser's desired capabilities to use.) ---settings-file=FILE # (Overrides SeleniumBase settings.py values.) ---env=ENV # (Set a test environment. Use "self.env" to use this in tests.) ---data=DATA # (Extra data to pass to tests. Use "self.data" in tests.) ---var1=DATA # (Extra data to pass to tests. Use "self.var1" in tests.) ---var2=DATA # (Extra data to pass to tests. Use "self.var2" in tests.) ---var3=DATA # (Extra data to pass to tests. Use "self.var3" in tests.) +--settings-file=FILE # (Override default SeleniumBase settings.) +--env=ENV # (Set the test env. Access with "self.env" in tests.) +--account=STR # (Set account. Access with "self.account" in tests.) +--data=STRING # (Extra test data. Access with "self.data" in tests.) +--var1=STRING # (Extra test data. Access with "self.var1" in tests.) +--var2=STRING # (Extra test data. Access with "self.var2" in tests.) +--var3=STRING # (Extra test data. Access with "self.var3" in tests.) +--variables=DICT # (Extra test data. Access with "self.variables".) --user-data-dir=DIR # (Set the Chrome user data directory to use.) ---server=SERVER # (The server / IP address used by the tests.) ---port=PORT # (The port that's used by the test server.) ---proxy=SERVER:PORT # (This is the proxy server:port combo used by tests.) ---agent=STRING # (This designates the web browser's User Agent to use.) ---mobile # (The option to use the mobile emulator while running tests.) ---metrics=STRING # ("CSSWidth,Height,PixelRatio" for mobile emulator tests.) ---extension-zip=ZIP # (Load a Chrome Extension .zip file, comma-separated.) +--protocol=PROTOCOL # (The Selenium Grid protocol: http|https.) +--server=SERVER # (The Selenium Grid server/IP used for tests.) +--port=PORT # (The Selenium Grid port used by the test server.) +--proxy=SERVER:PORT # (Connect to a proxy server:port for tests.) +--proxy=USERNAME:PASSWORD@SERVER:PORT # (Use authenticated proxy server.) +--proxy-bypass-list=STRING # (";"-separated hosts to bypass, Eg "*.foo.com") +--proxy-pac-url=URL # (Connect to a proxy server using a PAC_URL.pac file.) +--proxy-pac-url=USERNAME:PASSWORD@URL # (Authenticated proxy with PAC URL.) +--agent=STRING # (Modify the web browser's User-Agent string.) +--mobile # (Use the mobile device emulator while running tests.) +--metrics=STRING # (Set mobile metrics: "CSSWidth,CSSHeight,PixelRatio".) +--chromium-arg="ARG=N,ARG2" # (Set Chromium args, ","-separated, no spaces.) +--firefox-arg="ARG=N,ARG2" # (Set Firefox args, comma-separated, no spaces.) +--firefox-pref=SET # (Set a Firefox preference:value set, comma-separated.) +--extension-zip=ZIP # (Load a Chrome Extension .zip|.crx, comma-separated.) --extension-dir=DIR # (Load a Chrome Extension directory, comma-separated.) ---headless # (The option to run tests headlessly. The default on Linux OS.) ---headed # (The option to run tests with a GUI on Linux OS.) +--sjw # (Skip JS Waits for readyState to be "complete" or Angular to load.) +--pls=PLS # (Set pageLoadStrategy on Chrome: "normal", "eager", or "none".) +--headless # (Run tests in headless mode. The default arg on Linux OS.) +--headless2 # (Use the new headless mode, which supports extensions.) +--headed # (Run tests in headed/GUI mode on Linux OS, where not default.) +--xvfb # (Run tests using the Xvfb virtual display server on Linux OS.) +--locale=LOCALE_CODE # (Set the Language Locale Code for the web browser.) +--interval=SECONDS # (The autoplay interval for presentations & tour steps) --start-page=URL # (The starting URL for the web browser when tests begin.) ---archive-logs # (Archive old log files instead of deleting them.) ---time-limit=SECONDS # (Safely fail any test that exceeds the limit limit.) ---slow # (The option to slow down the automation.) ---demo # (The option to visually see test actions as they occur.) ---demo-sleep=SECONDS # (The option to wait longer after Demo Mode actions.) +--archive-logs # (Archive existing log files instead of deleting them.) +--archive-downloads # (Archive old downloads instead of deleting them.) +--time-limit=SECONDS # (Safely fail any test that exceeds the time limit.) +--slow # (Slow down the automation. Faster than using Demo Mode.) +--demo # (Slow down and visually see test actions as they occur.) +--demo-sleep=SECONDS # (Set the wait time after Slow & Demo Mode actions.) --highlights=NUM # (Number of highlight animations for Demo Mode actions.) --message-duration=SECONDS # (The time length for Messenger alerts.) ---check-js # (The option to check for JavaScript errors after page loads.) ---ad-block # (The option to block some display ads after page loads.) +--check-js # (Check for JavaScript errors after page loads.) +--ad-block # (Block some types of display ads from loading.) +--block-images # (Block images from loading during tests.) +--do-not-track # (Indicate to websites that you don't want to be tracked.) --verify-delay=SECONDS # (The delay before MasterQA verification checks.) ---disable-csp # (This disables the Content Security Policy of websites.) ---enable-sync # (The option to enable "Chrome Sync".) ---use-auto-ext # (The option to use Chrome's automation extension.) ---incognito # (The option to enable Chrome's Incognito mode.) ---guest # (The option to enable Chrome's Guest mode.) ---devtools # (The option to open Chrome's DevTools when the browser opens.) ---reuse-session # (The option to reuse the browser session between tests.) ---crumbs # (Option to delete all cookies between tests reusing a session.) ---maximize-window # (The option to start with the web browser maximized.) ---save-screenshot # (The option to save a screenshot after each test.) +--recorder # (Enables the Recorder for turning browser actions into code.) +--rec-behave # (Same as Recorder Mode, but also generates behave-gherkin.) +--rec-sleep # (If the Recorder is enabled, also records self.sleep calls.) +--rec-print # (If the Recorder is enabled, prints output after tests end.) +--disable-js # (Disable JavaScript on websites. Pages might break!) +--disable-csp # (Disable the Content Security Policy of websites.) +--disable-ws # (Disable Web Security on Chromium-based browsers.) +--enable-ws # (Enable Web Security on Chromium-based browsers.) +--enable-sync # (Enable "Chrome Sync" on websites.) +--use-auto-ext # (Use Chrome's automation extension.) +--uc | --undetected # (Use undetected-chromedriver to evade bot-detection.) +--uc-sub | --uc-subprocess # (Use undetected-chromedriver as a subprocess.) +--remote-debug # (Enable Chrome's Remote Debugger on http://localhost:9222) +--final-debug # (Enter Debug Mode after each test ends. Don't use with CI!) +--dashboard # (Enable the SeleniumBase Dashboard. Saved at: dashboard.html) +--dash-title=STRING # (Set the title shown for the generated dashboard.) +--swiftshader # (Use Chrome's "--use-gl=swiftshader" feature.) +--incognito # (Enable Chrome's Incognito mode.) +--guest # (Enable Chrome's Guest mode.) +--devtools # (Open Chrome's DevTools when the browser opens.) +--reuse-session | --rs # (Reuse the browser session between tests.) +--crumbs # (Delete all cookies between tests reusing a session.) +--disable-beforeunload # (Disable the "beforeunload" event on Chrome.) +--window-size=WIDTH,HEIGHT # (Set the browser's starting window size.) +--maximize # (Start tests with the browser window maximized.) +--screenshot # (Save a screenshot at the end of each test.) +--no-screenshot # (No screenshots saved unless tests directly ask it.) --visual-baseline # (Set the visual baseline for Visual/Layout tests.) +--wire # (Use selenium-wire's webdriver for replacing selenium webdriver.) +--external-pdf # (Set Chromium "plugins.always_open_pdf_externally":True.) --timeout-multiplier=MULTIPLIER # (Multiplies the default timeout values.) +--list-fail-page # (After each failing test, list the URL of the failure.) ``` (ๆœ‰ๅ…ณ่ฏฆ็ป†ไฟกๆฏ๏ผŒ่ฏทๅ‚่งๅ‘ฝไปค่กŒ้€‰้กน็š„ๅฎŒๆ•ดๅˆ—่กจ **[็‚นๅ‡ป่ฟ™้‡Œ](https://github.com/seleniumbase/SeleniumBase/blob/master/seleniumbase/plugins/pytest_plugin.py)**.) diff --git a/help_docs/commander.md b/help_docs/commander.md index 32b46c01..8ae395b0 100755 --- a/help_docs/commander.md +++ b/help_docs/commander.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) SeleniumBase Commander ๐ŸŽ–๏ธ ๐ŸŽ–๏ธ SeleniumBase Commander lets you run pytest scripts from a Desktop GUI.
diff --git a/help_docs/customizing_test_runs.md b/help_docs/customizing_test_runs.md index b5518731..e7a4b274 100755 --- a/help_docs/customizing_test_runs.md +++ b/help_docs/customizing_test_runs.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) pytest options for SeleniumBase ๐ŸŽ›๏ธ SeleniumBase's [pytest plugin](https://github.com/seleniumbase/SeleniumBase/blob/master/seleniumbase/plugins/pytest_plugin.py) lets you customize test runs from the CLI (Command-Line Interface), which adds options for setting/enabling the browser type, Dashboard Mode, Demo Mode, Headless Mode, Mobile Mode, Multi-threading Mode, Recorder Mode, reuse-session mode, proxy config, user agent config, browser extensions, html-report mode, and more. diff --git a/help_docs/demo_mode.md b/help_docs/demo_mode.md index e1cff939..6bca980c 100755 --- a/help_docs/demo_mode.md +++ b/help_docs/demo_mode.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) Demo Mode ๐ŸŽฆ

SeleniumBase Example

diff --git a/help_docs/desired_capabilities.md b/help_docs/desired_capabilities.md index e53e86a0..a45b7558 100755 --- a/help_docs/desired_capabilities.md +++ b/help_docs/desired_capabilities.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) Using Desired Capabilities You can specify browser capabilities when running SeleniumBase tests on a remote Selenium Grid server such as BrowserStack, LambdaTest, or Sauce Labs. diff --git a/help_docs/features_list.md b/help_docs/features_list.md index 81be7d49..bda99c33 100755 --- a/help_docs/features_list.md +++ b/help_docs/features_list.md @@ -1,9 +1,11 @@ + +

(Watch the tutorial on YouTube)

-## [](https://github.com/seleniumbase/SeleniumBase/) SeleniumBase Features: ๐Ÿฅ‚ +## [](https://github.com/seleniumbase/SeleniumBase/) SeleniumBase Features: ๐Ÿฐ * A powerful Python framework for browser automation and E2E UI testing. * Includes [Recorder Mode](https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/recorder_mode.md) for instantly generating browser tests in Python. diff --git a/help_docs/happy_customers.md b/help_docs/happy_customers.md index 26ac6fb3..04c23dc1 100755 --- a/help_docs/happy_customers.md +++ b/help_docs/happy_customers.md @@ -1,3 +1,5 @@ + +

SeleniumBase

Here are some organizations that have grown their automation with SeleniumBase:

diff --git a/help_docs/hidden_files_info.md b/help_docs/hidden_files_info.md index a70d65f8..bf3d6bfb 100755 --- a/help_docs/hidden_files_info.md +++ b/help_docs/hidden_files_info.md @@ -1,3 +1,5 @@ + + ## Showing hidden files on macOS Depending on your macOS settings, some files may be hidden from view in your Finder window, such as ``.gitignore``. diff --git a/help_docs/how_it_works.md b/help_docs/how_it_works.md index 3f961c0f..35c1727d 100755 --- a/help_docs/how_it_works.md +++ b/help_docs/how_it_works.md @@ -1,4 +1,6 @@ -## [](https://github.com/seleniumbase/SeleniumBase/) How SeleniumBase Works ๐Ÿ‘๏ธ + + +## [](https://github.com/seleniumbase/SeleniumBase/) How SeleniumBase Works ๐Ÿ‘๏ธ @@ -77,5 +79,5 @@ pytest -k agent -------- -

SeleniumBase

+

SeleniumBase

diff --git a/help_docs/html_inspector.md b/help_docs/html_inspector.md index 88171280..71c0b4d0 100755 --- a/help_docs/html_inspector.md +++ b/help_docs/html_inspector.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) The HTML Inspector ๐Ÿ”Ž ๐Ÿ”Ž HTML Inspector provides useful info about a web page. diff --git a/help_docs/install.md b/help_docs/install.md index 05469e10..5488f543 100755 --- a/help_docs/install.md +++ b/help_docs/install.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) SeleniumBase Installation

If installing SeleniumBase directly from PyPI, (the Python Package Index), use:

@@ -6,7 +8,7 @@ pip install seleniumbase ``` -To upgrade an existing ``seleniumbase`` install from PyPI: +

To upgrade an existing ``seleniumbase`` install from PyPI:

```bash pip install -U seleniumbase @@ -28,7 +30,7 @@ cd SeleniumBase/ pip install -e . ``` -To upgrade an existing ``seleniumbase`` install from GitHub: +

To upgrade an existing ``seleniumbase`` install from GitHub:

```bash git pull # To pull the latest version diff --git a/help_docs/install_python_pip_git.md b/help_docs/install_python_pip_git.md index b44973e5..31bb87b1 100755 --- a/help_docs/install_python_pip_git.md +++ b/help_docs/install_python_pip_git.md @@ -1,4 +1,6 @@ -## Installation instructions for Git, Python, and Pip + + +## Installation instructions for ``Git``, ``Python``, and ``pip`` ### [Git](http://www.git-scm.com) @@ -12,18 +14,11 @@ You can [download Git from here](http://git-scm.com/downloads). You can download Python from [https://www.python.org/downloads/](https://www.python.org/downloads/) if it's not already preinstalled on your machine. -### [Pip](https://en.wikipedia.org/wiki/Pip_%28package_manager%29) +### [pip](https://en.wikipedia.org/wiki/Pip_%28package_manager%29) -You probably already have pip and setuptools installed. If not: +**``pip`` already comes with Python!** (It lets you install packages, such as ``seleniumbase``.) -```bash -python -m easy_install -U pip -pip install -U setuptools -``` - -If that didn't work, here are some more commands you can try: - -On macOS / Windows / Linux, run the following command: +โš ๏ธ If something went wrong with your ``pip`` installation, try this: ```bash python -m ensurepip --default-pip diff --git a/help_docs/js_package_manager.md b/help_docs/js_package_manager.md index b32ce99e..76d188ab 100755 --- a/help_docs/js_package_manager.md +++ b/help_docs/js_package_manager.md @@ -1,10 +1,20 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) JS Package Manager and Code Generators

๐Ÿ•น๏ธ SeleniumBase lets you load JavaScript packages from any CDN link into any website via Python.

๐ŸŽจ The following SeleniumBase solutions utilize this feature: -๐ŸŽฆ (Demo Mode) - ๐ŸšŽ (Website Tours) - ๐ŸŽž๏ธ (Presenter) - ๐Ÿ“Š (Chart Maker / Dashboard) - ๐Ÿ›‚ (Dialog Boxes / MasterQA) +๐ŸŽฆ (Demo Mode) + +๐ŸšŽ (Website Tours) + +๐ŸŽž๏ธ (Presentation Maker) + +๐Ÿ“Š (Chart Maker / Dashboard) + +๐Ÿ›‚ (Dialog Boxes / MasterQA) -------- diff --git a/help_docs/locale_codes.md b/help_docs/locale_codes.md index 140adec7..bd569e2b 100755 --- a/help_docs/locale_codes.md +++ b/help_docs/locale_codes.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) Language Locale Codes You can specify a Language Locale Code to customize web pages on supported websites. With SeleniumBase, you can change the web browser's Locale on the command line by doing this: diff --git a/help_docs/method_summary.md b/help_docs/method_summary.md index b9e983da..0e549116 100755 --- a/help_docs/method_summary.md +++ b/help_docs/method_summary.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) SeleniumBase Methods (API Reference) diff --git a/help_docs/mobile_testing.md b/help_docs/mobile_testing.md index 24be42db..345ba6b6 100755 --- a/help_docs/mobile_testing.md +++ b/help_docs/mobile_testing.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) Mobile Testing Use ``--mobile`` to run SeleniumBase tests using Chrome's mobile device emulator with default values for Device Metrics and User-Agent. diff --git a/help_docs/mysql_installation.md b/help_docs/mysql_installation.md index bc8c65d5..a0bfbe99 100755 --- a/help_docs/mysql_installation.md +++ b/help_docs/mysql_installation.md @@ -1,3 +1,5 @@ + + ## MySQL Installation Instructions diff --git a/help_docs/recorder_mode.md b/help_docs/recorder_mode.md index 1e6bb894..9a5afa36 100755 --- a/help_docs/recorder_mode.md +++ b/help_docs/recorder_mode.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) Recorder Mode ๐Ÿ”ด diff --git a/help_docs/shadow_dom.md b/help_docs/shadow_dom.md index f51971be..4aecde0d 100755 --- a/help_docs/shadow_dom.md +++ b/help_docs/shadow_dom.md @@ -1,3 +1,5 @@ + +

SeleniumBase

## Shadow DOM support / Shadow-root interaction diff --git a/help_docs/syntax_formats.md b/help_docs/syntax_formats.md index d08509bb..016f6589 100755 --- a/help_docs/syntax_formats.md +++ b/help_docs/syntax_formats.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) The 23 Syntax Formats diff --git a/help_docs/thank_you.md b/help_docs/thank_you.md index 0a85fce5..ab1c95b0 100755 --- a/help_docs/thank_you.md +++ b/help_docs/thank_you.md @@ -1,3 +1,5 @@ + + [](https://github.com/seleniumbase/SeleniumBase/blob/master/README.md) ### Thank you for flying with SeleniumBase! ๐Ÿ›ธ diff --git a/help_docs/translations.md b/help_docs/translations.md index a07bb543..a42423a3 100755 --- a/help_docs/translations.md +++ b/help_docs/translations.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) ๐ŸŒ Translated Tests ๐Ÿˆบ diff --git a/help_docs/useful_grep_commands.md b/help_docs/useful_grep_commands.md index af80dbb1..5f354d20 100755 --- a/help_docs/useful_grep_commands.md +++ b/help_docs/useful_grep_commands.md @@ -1,3 +1,5 @@ + + ## Useful grep commands There are several useful **grep** commands for helping you find and/or replace text in multiple files. Examples: diff --git a/help_docs/using_safari_driver.md b/help_docs/using_safari_driver.md index 92a7adf6..df2cf282 100755 --- a/help_docs/using_safari_driver.md +++ b/help_docs/using_safari_driver.md @@ -1,3 +1,5 @@ + + ## Using Safari's WebDriver for running browser tests on macOS *(NOTE: Safari's WebDriver requires macOS 10.13 "High Sierra" or later.)* diff --git a/help_docs/verify_webdriver.md b/help_docs/verify_webdriver.md index ba9dec71..1a11a51a 100755 --- a/help_docs/verify_webdriver.md +++ b/help_docs/verify_webdriver.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) Verifying that web drivers are installed On newer versions of SeleniumBase, the driver is automatically downloaded to the ``seleniumbase/drivers`` folder as needed, and does not need to be on the System Path when running tests. diff --git a/help_docs/virtualenv_instructions.md b/help_docs/virtualenv_instructions.md index b3867bae..775c858c 100755 --- a/help_docs/virtualenv_instructions.md +++ b/help_docs/virtualenv_instructions.md @@ -1,3 +1,5 @@ + + ## Virtual Environment Tutorial There are multiple ways of creating a **[Python virtual environment](https://packaging.python.org/guides/installing-using-pip-and-virtual-environments/#creating-a-virtual-environment)**. This tutorial covers two of those: @@ -100,4 +102,28 @@ rmvirtualenv sbase_env -------- +If the ``python`` and ``python3`` versions don't match (*while in a virtualenv on macOS or Linux*), the following command will sync the versions: + +```bash +alias python=`which python3` +``` + +(To remove an alias, use: ``unalias NAME``) + +-------- + +To verify the ``python`` version, use: + +```bash +python --version +``` + +To see the PATH of your ``python`` (macOS/Linux), use: + +```bash +which python +``` + +-------- + > [python-guide.org/en/latest/dev/virtualenvs](http://docs.python-guide.org/en/latest/dev/virtualenvs/) has more information about Python virtual environments. For specific details about VirtualEnv and VirtualEnvWrapper, see [http://virtualenv.readthedocs.org/en/latest/](http://virtualenv.readthedocs.org/en/latest/) and [http://virtualenvwrapper.readthedocs.org/en/latest/](http://virtualenvwrapper.readthedocs.org/en/latest/). diff --git a/help_docs/webdriver_installation.md b/help_docs/webdriver_installation.md index c6aceb06..e35416a3 100755 --- a/help_docs/webdriver_installation.md +++ b/help_docs/webdriver_installation.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) Installing webdrivers To run web automation, you'll need webdrivers for each browser you plan on using. With SeleniumBase, drivers are downloaded automatically as needed into the SeleniumBase ``drivers`` folder. @@ -19,9 +21,9 @@ sbase get chromedriver latest * You can also get a specific version of chromedriver for a specific version of Chrome: ```bash -sbase get chromedriver 105.0.5195.52 +sbase get chromedriver 107.0.5304.62 -sbase get chromedriver 105 +sbase get chromedriver 107 ``` * On Linux, you can run the following two commands (once you've installed SeleniumBase) to automatically upgrade your Chromedriver to match your version of Chrome: (``wget`` downloads the file, and ``pytest`` runs it.) @@ -79,8 +81,8 @@ chmod +x /usr/local/bin/chromedriver ``` ```bash -wget https://github.com/mozilla/geckodriver/releases/download/v0.31.0/geckodriver-v0.31.0-linux64.tar.gz -tar xvfz geckodriver-v0.31.0-linux64.tar.gz +wget https://github.com/mozilla/geckodriver/releases/download/v0.32.0/geckodriver-v0.32.0-linux64.tar.gz +tar xvfz geckodriver-v0.32.0-linux64.tar.gz mv geckodriver /usr/local/bin/ chmod +x /usr/local/bin/geckodriver ``` diff --git a/mkdocs_build/prepare.py b/mkdocs_build/prepare.py index f32b1d2d..5c2842ea 100644 --- a/mkdocs_build/prepare.py +++ b/mkdocs_build/prepare.py @@ -124,7 +124,7 @@ def main(*args, **kwargs): if ' href="' in line and '.md"' in line: changed = True line = line.replace('.md"', '/"') - if "" in line: + if "" in line: changed = True new_lines = [] new_lines.append("---") diff --git a/seleniumbase/common/ReadMe.md b/seleniumbase/common/ReadMe.md index 8fc32d3d..f8193129 100755 --- a/seleniumbase/common/ReadMe.md +++ b/seleniumbase/common/ReadMe.md @@ -1,16 +1,18 @@ + + ## Using [seleniumbase/common](https://github.com/seleniumbase/SeleniumBase/blob/master/seleniumbase/common) methods. ### Part 1: Decorators - (from [decorators.py](https://github.com/seleniumbase/SeleniumBase/blob/master/seleniumbase/common/decorators.py)) #### Use these Python decorators with your test methods as needed: -* @print_runtime(description=None, limit=None) +* ``@print_runtime(description=None, limit=None)`` -* @runtime_limit(limit, description=None) +* ``@runtime_limit(limit, description=None)`` -* @retry_on_exception(tries=6, delay=1, backoff=2, max_delay=32) +* ``@retry_on_exception(tries=6, delay=1, backoff=2, max_delay=32)`` -* @rate_limited(max_per_second) +* ``@rate_limited(max_per_second)`` Example demonstrating a rate-limited printing functionality: @@ -18,7 +20,6 @@ Example demonstrating a rate-limited printing functionality: import unittest from seleniumbase import decorators - class MyTestClass(unittest.TestCase): @decorators.rate_limited(3.5) # The arg is max calls per second diff --git a/seleniumbase/console_scripts/ReadMe.md b/seleniumbase/console_scripts/ReadMe.md index 78b8bc95..0bce6d8d 100755 --- a/seleniumbase/console_scripts/ReadMe.md +++ b/seleniumbase/console_scripts/ReadMe.md @@ -1,3 +1,5 @@ + + ## [](https://github.com/seleniumbase/SeleniumBase/) ๐Ÿ”ฎ Console Scripts ๐Ÿ”ฎ โญ SeleniumBase console scripts help you get things done, such as getting web drivers, creating a test directory with useful files, activating the SeleniumBase Recorder, launching the SeleniumBase Commander, translating tests into other languages, running a Selenium Grid, and more. @@ -57,16 +59,15 @@ sbase install [DRIVER] [OPTIONS] * Examples: ```bash -sbase get chromedriver # (Default: 72.0.3626.69 - Tries to detect first.) +sbase get chromedriver sbase get geckodriver sbase get edgedriver -sbase get chromedriver 106 -sbase get chromedriver 106.0.5249.61 +sbase get chromedriver 107 +sbase get chromedriver 107.0.5304.62 sbase get chromedriver latest sbase get chromedriver latest-1 # (Latest minus one) sbase get chromedriver -p sbase get chromedriver latest -p -sbase get edgedriver 106.0.1370.42 ``` (Drivers: ``chromedriver``, ``geckodriver``, ``edgedriver``, @@ -80,12 +81,10 @@ sbase get edgedriver 106.0.1370.42 * Output: -Downloads the chosen webdriver to ``seleniumbase/drivers/``. -(``chromedriver`` is required for Google Chrome automation) -(``geckodriver`` is required for Mozilla Firefox automation) -(``edgedriver`` is required for Microsoft Edge automation) -(``iedriver`` is required for InternetExplorer automation) -(``operadriver`` is required for Opera Browser automation) +Downloads the webdriver to ``seleniumbase/drivers/`` +(``chromedriver`` is required for Chrome automation) +(``geckodriver`` is required for Firefox automation) +(``edgedriver`` is required for MS__Edge automation)

methods

diff --git a/seleniumbase/extensions/ReadMe.md b/seleniumbase/extensions/ReadMe.md index e5a958f5..eef83ccd 100755 --- a/seleniumbase/extensions/ReadMe.md +++ b/seleniumbase/extensions/ReadMe.md @@ -1,6 +1,8 @@ -[](https://github.com/seleniumbase/SeleniumBase) + -

SeleniumBase browser extension storage

+[](https://github.com/seleniumbase/SeleniumBase) + +

SeleniumBase browser extension storage

The List: diff --git a/seleniumbase/masterqa/ReadMe.md b/seleniumbase/masterqa/ReadMe.md index a246ebc3..dfc6ea36 100755 --- a/seleniumbase/masterqa/ReadMe.md +++ b/seleniumbase/masterqa/ReadMe.md @@ -1,3 +1,5 @@ + + ![](https://seleniumbase.io/cdn/img/masterqa_logo.png "MasterQA")

MasterQA combines automation with manual verification steps.

diff --git a/seleniumbase/resources/ReadMe.md b/seleniumbase/resources/ReadMe.md index 7691d19a..3cf1ae20 100755 --- a/seleniumbase/resources/ReadMe.md +++ b/seleniumbase/resources/ReadMe.md @@ -1,4 +1,6 @@ -## [](https://github.com/seleniumbase/SeleniumBase/) Resource Files + + +## [](https://github.com/seleniumbase/SeleniumBase/) Resource Files SeleniumBase uses JavaScript libraries for bonus features such as the Website Tour Maker, Presentation Maker, Chart Maker, Demo Mode, HTML Inspector, and more. In general, SeleniumBase retrieves these resources via CDN link. diff --git a/seleniumbase/utilities/selenium_grid/ReadMe.md b/seleniumbase/utilities/selenium_grid/ReadMe.md index f2e1f547..00528feb 100755 --- a/seleniumbase/utilities/selenium_grid/ReadMe.md +++ b/seleniumbase/utilities/selenium_grid/ReadMe.md @@ -1,3 +1,5 @@ + + [](https://github.com/seleniumbase/SeleniumBase/blob/master/README.md)

The Selenium Grid Hub:

diff --git a/seleniumbase/utilities/selenium_ide/ReadMe.md b/seleniumbase/utilities/selenium_ide/ReadMe.md index f0e1458c..de10dbc2 100755 --- a/seleniumbase/utilities/selenium_ide/ReadMe.md +++ b/seleniumbase/utilities/selenium_ide/ReadMe.md @@ -1,3 +1,5 @@ + + ### Converting Katalon recordings into SeleniumBase test scripts ### (NOTE: **[SeleniumBase now has Recorder Mode](https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/recorder_mode.md)**, which is recommended over other record & playback tools.)