You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<p><ahref="https://github.com/seleniumbase/SeleniumBase/"><btranslate="no">SeleniumBase</b></a> is an all-in-one Python framework for making browser automation, scraping, and testing significantly easier. Stealth options (like <atranslate="no"href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/ReadMe.md"><btranslate="no">CDP Mode</b></a>) let you avoid bot-detection. Includes <ahref="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/playwright/ReadMe.md"><b><spantranslate="no">Stealthy Playwright Mode</span></b>.</p>
55
+
📊 <ahref="https://github.com/seleniumbase/SeleniumBase/"><btranslate="no">SeleniumBase</b></a> is a complete framework for browser automation, testing, and web-scraping with Python. Includes multiple advanced modes and tools.
56
56
57
-
--------
57
+
🐙 Stealth modes: <atranslate="no"href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/uc_mode.md">UC Mode</a> and <atranslate="no"href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/ReadMe.md"><b>CDP Mode</b></a> can bypass bot-detection, solve CAPTCHAs, and call methods from the <ahref="https://chromedevtools.github.io/devtools-protocol/"translate="no">Chrome Devtools Protocol</a>. Includes <ahref="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/playwright/ReadMe.md"><b><spantranslate="no">Stealthy Playwright Mode</span></b></a>, which makes Playwright stealthy via CDP Mode.
58
58
59
-
📚 Learn from [**over 200 examples** in the **SeleniumBase/examples/** folder](https://github.com/seleniumbase/SeleniumBase/tree/master/examples).
59
+
ℹ️ Some <ahref="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/syntax_formats.md">Syntax Formats</a> use <ahref="https://docs.pytest.org/en/latest/how-to/usage.html"translate="no"><b>pytest</b></a> (a Python unit-testing framework included with SeleniumBase that can discover, collect, and run tests automatically).
60
60
61
-
🐙 Stealth modes: <atranslate="no"href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/uc_mode.md"><b>UC Mode</b></a> and <atranslate="no"href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/ReadMe.md"><b>CDP Mode</b></a> can bypass bot-detection, solve CAPTCHAs, and call advanced methods from the <ahref="https://chromedevtools.github.io/devtools-protocol/"translate="no">Chrome Devtools Protocol</a>.
61
+
📚 Example scripts & tests are located in [**SeleniumBase/examples/**](https://github.com/seleniumbase/SeleniumBase/tree/master/examples).
62
62
63
-
ℹ️ Some <ahref="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/syntax_formats.md">Syntax Formats</a> use <ahref="https://docs.pytest.org/en/latest/how-to/usage.html"translate="no"><b>pytest</b></a> (a Python unit-testing framework included with SeleniumBase that can discover, collect, and run tests automatically).
63
+
👤 The stealthy examples are located in [**SeleniumBase/examples/cdp_mode/**](https://github.com/seleniumbase/SeleniumBase/tree/master/examples).
64
64
65
65
--------
66
66
@@ -188,9 +188,7 @@ pytest test_demo_site.py
188
188
189
189
<palign="left">📓 Here's a high-level stealthy architecture overview of SeleniumBase:</p>
(For maximum stealth, use <atranslate="no"href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/ReadMe.md">CDP Mode</a>, which is used by <atranslate="no"href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/cdp_mode/playwright/ReadMe.md">Stealthy Playwright Mode</a>)
* <b>SeleniumBase</b> tests are run with <b>pytest</b>.
7
+
* <b>SeleniumBase</b> "tests" are run with <b>pytest</b>.
8
8
* Chrome is the default browser if not specified.
9
9
* Tests are structured using [25 unique syntax formats](https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/syntax_formats.md).
10
-
* Logs from test failures are saved to ``./latest_logs/``.
10
+
* Logs from test failures are saved to `./latest_logs/`.
11
11
* Tests can be run with [multiple command-line options](https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/customizing_test_runs.md).
12
-
* Examples can be found in: **[SeleniumBase/examples/](https://github.com/seleniumbase/SeleniumBase/tree/master/examples)**.
12
+
* Examples can be found in [SeleniumBase/examples/](https://github.com/seleniumbase/SeleniumBase/tree/master/examples).
13
+
* For stealthy examples, see [SeleniumBase/examples/cdp_mode/](https://github.com/seleniumbase/SeleniumBase/tree/master/examples/cdp_mode).
13
14
14
15
(NOTE: Some example tests fail on purpose to demonstrate [logging features](https://github.com/seleniumbase/SeleniumBase/blob/master/examples/example_logs/ReadMe.md).)
15
16
@@ -19,7 +20,7 @@
19
20
20
21
--------
21
22
22
-
Run an [example test](https://github.com/seleniumbase/SeleniumBase/blob/master/examples/my_first_test.py): (Default option: ``--chrome``)
23
+
Run an [example test](https://github.com/seleniumbase/SeleniumBase/blob/master/examples/my_first_test.py): (Default option: `--chrome`)
23
24
24
25
```zsh
25
26
pytest my_first_test.py
@@ -47,7 +48,7 @@ pytest test_demo_site.py
47
48
48
49
--------
49
50
50
-
Run an example test in ``--demo`` mode: (highlight assertions)
51
+
Run an example test in `--demo` mode: (highlight assertions)
51
52
52
53
```zsh
53
54
pytest test_swag_labs.py --demo
@@ -77,7 +78,7 @@ pytest wordle_test.py
77
78
78
79
--------
79
80
80
-
Run an example test in ``--headless`` mode: (invisible browser)
81
+
Run an example test in `--headless` mode: (invisible browser)
Run a test suite and generate a ``pytest`` report:
141
+
Run a test suite and generate a `pytest` report:
141
142
142
143
```zsh
143
144
pytest test_suite.py --html=report.html
144
145
```
145
146
146
147
--------
147
148
148
-
Run a [failing test](https://github.com/seleniumbase/SeleniumBase/blob/master/examples/test_fail.py): (See the ``latest_logs/`` folder for logs and screenshots)
149
+
Run a [failing test](https://github.com/seleniumbase/SeleniumBase/blob/master/examples/test_fail.py): (See the `latest_logs/` folder for logs and screenshots)
149
150
150
151
```zsh
151
152
pytest test_fail.py
152
153
```
153
154
154
155
--------
155
156
156
-
Run a failing test that activates ``pdb`` debug mode on failure:
157
+
Run a failing test that activates `pdb` debug mode on failure:
Run a test suite that demonstrates the use of ``pytest`` markers:
167
+
Run a test suite that demonstrates the use of `pytest` markers:
167
168
168
169
```zsh
169
170
pytest -m marker_test_suite -v
@@ -179,7 +180,7 @@ pytest test_suite.py --rs
179
180
180
181
--------
181
182
182
-
Run an [example test](https://github.com/seleniumbase/SeleniumBase/blob/master/examples/rate_limiting_test.py) demonstrating the ``rate_limited`` Python decorator:
183
+
Run an [example test](https://github.com/seleniumbase/SeleniumBase/blob/master/examples/rate_limiting_test.py) demonstrating the `rate_limited` Python decorator:
183
184
184
185
```zsh
185
186
pytest rate_limiting_test.py
@@ -195,7 +196,7 @@ pytest upload_file_test.py
195
196
196
197
--------
197
198
198
-
🎖️ **SeleniumBase Commander** is a GUI for ``pytest``:
199
+
🎖️ **SeleniumBase Commander** is a GUI for `pytest`:
199
200
200
201
```zsh
201
202
sbase gui
@@ -205,23 +206,23 @@ sbase gui
205
206
206
207
--------
207
208
208
-
<b>SeleniumBase tests can also be run with ``pynose``:</b>
209
+
<b>SeleniumBase tests can also be run with `pynose`:</b>
209
210
210
211
```zsh
211
212
pynose my_first_test.py
212
213
```
213
214
214
215
--------
215
216
216
-
Run an example test suite and generate a ``pynose`` test report:
217
+
Run an example test suite and generate a `pynose` test report:
217
218
218
219
```zsh
219
220
pynose test_suite.py --report --show-report
220
221
```
221
222
222
223
--------
223
224
224
-
Run an example test using a ``pynose`` configuration file:
225
+
Run an example test using a `pynose` configuration file:
0 commit comments