Skip to content

Commit 4e973b7

Browse files
authored
Merge pull request #992 from seleniumbase/recorder-mode-updates-and-more
Recorder Mode updates and more
2 parents ca4f5a5 + af2f2a7 commit 4e973b7

19 files changed

+325
-202
lines changed

README.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,12 @@
4747
</p>
4848

4949
<p align="left">
50-
✅ Smart-waiting code prevents flaky tests.<br />
51-
✅ Can run on <a href="https://seleniumbase.io/integrations/github/workflows/ReadMe/">GHA</a>, <a href="https://seleniumbase.io/integrations/google_cloud/ReadMe/">GCP</a>, <a href="https://seleniumbase.io/integrations/azure/jenkins/ReadMe/">Azure</a>, & <a href="https://seleniumbase.io/integrations/docker/ReadMe/">Docker</a>.<br />
50+
✅ Get set up in minutes. Deploy anywhere.<br />
51+
✅ Build reliable tests with a <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/method_summary.md">complete API</a>.<br />
52+
✅ Learn from 100s of real-world <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/ReadMe.md">examples</a>.<br />
53+
✅ Includes <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/example_logs/ReadMe.md">dashboards and reporting tools</a>.<br />
5254
✅ Supports Chromium, Firefox, IE, & Safari.<br />
53-
Includes <a href="https://github.com/seleniumbase/SeleniumBase/blob/master/examples/example_logs/ReadMe.md">dashboards and reporting tools</a>.
55+
Can run on <a href="https://seleniumbase.io/integrations/github/workflows/ReadMe/">GHA</a>, <a href="https://seleniumbase.io/integrations/google_cloud/ReadMe/">GCP</a>, <a href="https://seleniumbase.io/integrations/azure/jenkins/ReadMe/">Azure</a>, & <a href="https://seleniumbase.io/integrations/docker/ReadMe/">Docker</a>.<br />
5456
</p>
5557

5658
--------

docs/requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ keyring==23.2.1;python_version>="3.6"
1111
pkginfo==1.7.1;python_version>="3.6"
1212
Jinja2==3.0.1;python_version>="3.6"
1313
click==8.0.1;python_version>="3.6"
14-
zipp==3.5.0;python_version>="3.6"
14+
zipp==3.5.1;python_version>="3.6"
1515
readme-renderer==29.0
1616
pymdown-extensions==8.2;python_version>="3.6"
1717
importlib-metadata==4.8.1;python_version>="3.6"

examples/ReadMe.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@
77

88
* <b>SeleniumBase</b> tests are run with <b>pytest</b>.
99
* Chrome is the default browser if not specified.
10-
* Example tests are located in: <b>[SeleniumBase/examples/](https://github.com/seleniumbase/SeleniumBase/tree/master/examples)</b>.
11-
* During test failures, logs and screenshots from the latest test run are saved to the ``latest_logs/`` folder.
12-
* Tests can be structured using [17 unique syntax formats](https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/syntax_formats.md).
10+
* Tests are structured using [17 unique syntax formats](https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/syntax_formats.md).
11+
* Logs from test failures are saved to ``./latest_logs/``.
12+
* Tests can be run with [multiple command-line options](https://github.com/seleniumbase/SeleniumBase/blob/master/help_docs/customizing_test_runs.md).
13+
* Example tests are found in: **[SeleniumBase/examples/](https://github.com/seleniumbase/SeleniumBase/tree/master/examples)**.
1314

1415
(NOTE: Some example tests fail on purpose to demonstrate [logging features](https://github.com/seleniumbase/SeleniumBase/blob/master/examples/example_logs/ReadMe.md).)
1516

examples/test_hack_search.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,16 @@ def test_hack_search(self):
1212
self.assert_element('input[title="Search"]')
1313
self.set_attribute('[action="/search"]', "action", "//bing.com/search")
1414
self.set_attributes('[value="Google Search"]', "value", "Bing Search")
15-
self.type('input[title="Search"]', "SeleniumBase GitHub")
15+
self.type('input[title="Search"]', "SeleniumBase GitHub Docs Install")
1616
self.sleep(0.5)
1717
self.js_click('[value="Bing Search"]')
1818
self.highlight("h1.b_logo")
1919
help_docs_install_link = 'a[href*="seleniumbase.io/help_docs/install"]'
2020
if self.is_element_visible(help_docs_install_link):
2121
self.highlight_click(help_docs_install_link)
22-
self.switch_to_newest_window()
2322
self.assert_text("Install SeleniumBase", "h1")
2423
self.click_link_text("GitHub branch")
2524
self.highlight_click('a[href*="github.com/seleniumbase/SeleniumBase"]')
26-
self.switch_to_newest_window()
2725
self.assert_element('[href="/seleniumbase/SeleniumBase"]')
2826
self.assert_true("seleniumbase/SeleniumBase" in self.get_current_url())
2927
self.click('a[title="examples"]')

examples/translations/pytest.ini

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@ python_files = test_*.py *_test.py *_tests.py *_suite.py *_test_*.py
1818
python_classes = Test* *Test* *Test *Tests *Suite
1919
python_functions = test_*
2020

21-
# Here are the pytest markers used in the example tests:
21+
# Here are some common pytest markers:
22+
# (Some are used in the example tests.)
2223
# (pytest v4.5.0 and newer requires marker registration to prevent warnings.)
2324
# (Future versions of pytest may turn those marker warnings into errors.)
2425
markers =
@@ -32,7 +33,11 @@ markers =
3233
offline: custom marker
3334
develop: custom marker
3435
qa: custom marker
36+
ci: custom marker
37+
e2e: custom marker
3538
ready: custom marker
39+
smoke: custom marker
40+
deploy: custom marker
3641
active: custom marker
3742
master: custom marker
3843
release: custom marker

help_docs/js_package_manager.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
[<img src="https://seleniumbase.io/cdn/img/super_logo_sb.png" title="SeleniumBase" width="290">](https://github.com/seleniumbase/SeleniumBase/blob/master/README.md)
1+
[<img src="https://seleniumbase.io/cdn/img/sb_logo_10t.png" title="SeleniumBase" width="220">](https://github.com/seleniumbase/SeleniumBase/)
22

33
<h2><img src="https://seleniumbase.io/img/logo6.png" title="SeleniumBase" width="32" /> JS Package Manager</h2>
44

@@ -90,6 +90,8 @@ def add_css_link(driver, css_link):
9090

9191
--------
9292

93+
[<img src="https://seleniumbase.io/cdn/img/super_logo_sb.png" title="SeleniumBase" width="220">](https://github.com/seleniumbase/SeleniumBase/)
94+
9395
<div>To learn more about SeleniumBase, check out the Docs Site:</div>
9496
<a href="https://seleniumbase.io">
9597
<img src="https://img.shields.io/badge/docs-%20%20SeleniumBase.io-11BBDD.svg" alt="SeleniumBase.io Docs" /></a>

help_docs/method_summary.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -224,9 +224,9 @@ self.switch_to_driver(driver)
224224

225225
self.switch_to_default_driver()
226226

227-
self.save_screenshot(name, folder=None)
227+
self.save_screenshot(name, folder=None, selector=None, by=By.CSS_SELECTOR)
228228

229-
self.save_screenshot_to_logs(name=None)
229+
self.save_screenshot_to_logs(name=None, selector=None, by=By.CSS_SELECTOR)
230230

231231
self.save_page_source(name, folder=None)
232232

help_docs/recorder_mode.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22

33
<h2><img src="https://seleniumbase.io/img/logo6.png" title="SeleniumBase" width="32" /> Recorder Mode</h2>
44

5-
🔴 SeleniumBase <b>Recorder Mode</b> gives you the power to create automation scripts from manual browser actions.<br>(<i>Only Chromium browsers such as Chrome and Edge are supported.</i>)
5+
🔴 <b>SeleniumBase Recorder Mode</b> lets you record & export browser actions into automation scripts.<br>
66

77
<img src="https://seleniumbase.io/cdn/img/sb_recorder_notification.png" title="SeleniumBase" width="380">
88

9-
🔴 To activate Recorder Mode, add ``--recorder`` to your ``pytest`` run command when running an existing test: (Also add ``-s`` to allow breakpoints, unless you already have a ``pytest.ini`` file present with ``--capture=no`` in it.)
9+
🔴 To activate Recorder Mode, add ``--recorder`` to your ``pytest`` run command when running an existing test on Chrome or Edge. (Also add ``-s`` to allow breakpoints, unless you already have a ``pytest.ini`` file present with ``addopts = --capture=no`` in it.)
1010

1111
```bash
1212
pytest TEST_NAME.py --recorder -s
@@ -60,6 +60,8 @@ class RecorderTest(BaseCase):
6060

6161
<p>🔴 SeleniumBase <code>1.66.3</code> improves the algorithm for generating efficient selectors. Additionally, single and double quotes in selectors will now be properly escaped with backslashes as needed.</p>
6262

63+
<p>🔴 SeleniumBase <code>1.66.4</code> adds better error-handling when using The Recorder, as well as a few other improvements.</p>
64+
6365
--------
6466

6567
<div>To learn more about SeleniumBase, check out the Docs Site:</div>

requirements.txt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ msedge-selenium-tools==3.141.3
3636
more-itertools==5.0.0;python_version<"3.5"
3737
more-itertools==8.10.0;python_version>="3.5"
3838
cssselect==1.1.0
39-
filelock==3.0.12
39+
filelock==3.1.0
4040
fasteners==0.16;python_version<"3.5"
4141
fasteners==0.16.3;python_version>="3.5"
4242
execnet==1.9.0
@@ -69,8 +69,6 @@ beautifulsoup4==4.10.0;python_version>="3.5"
6969
cryptography==2.9.2;python_version<"3.5"
7070
cryptography==3.2.1;python_version>="3.5" and python_version<"3.6"
7171
cryptography==3.4.8;python_version>="3.6"
72-
pyopenssl==19.1.0;python_version<"3.5"
73-
pyopenssl==20.0.1;python_version>="3.5"
7472
pygments==2.5.2;python_version<"3.5"
7573
pygments==2.10.0;python_version>="3.5"
7674
traitlets==4.3.3;python_version<"3.7"

seleniumbase/__version__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
# seleniumbase package
2-
__version__ = "1.66.3"
2+
__version__ = "1.66.4"

0 commit comments

Comments
 (0)