SeleniumBase/examples
Michael Mintz c8ce11b6f3 Update the docs 2021-03-05 17:58:08 -05:00
..
boilerplates Update example tests 2021-03-05 17:56:02 -05:00
capabilities Update examples 2021-01-25 14:40:13 -05:00
chart_maker Update the docs 2021-01-28 22:28:00 -05:00
example_logs Update the docs 2021-03-05 17:58:08 -05:00
master_qa Update examples 2020-06-14 01:17:02 -04:00
offline_examples Update example tests 2021-02-25 02:34:07 -05:00
presenter Update the docs 2021-01-28 22:28:00 -05:00
tour_examples Update examples 2021-01-25 14:40:13 -05:00
translations Update example tests 2021-03-05 17:56:02 -05:00
unit_tests Update the unit tests 2020-12-05 10:39:57 -05:00
visual_testing Update the docs 2021-01-31 15:25:41 -05:00
ReadMe.md Update the docs 2021-02-05 23:26:25 -05:00
__init__.py Fresh Copy 2015-12-04 16:11:53 -05:00
basic_test.py Update examples 2021-01-25 14:40:13 -05:00
custom_settings.py Refactoring custom settings 2020-08-08 01:05:37 -04:00
decryption_test.py Update examples 2020-12-18 01:25:31 -05:00
edge_test.py Update the tests 2020-11-18 20:28:52 -05:00
example_config.cfg Update example config files 2018-03-05 17:33:07 -05:00
github_test.py Update examples 2020-12-18 01:25:31 -05:00
gui_test_runner.py Update examples 2020-05-28 03:37:44 -04:00
handle_alert_test.py Update example tests 2021-02-25 02:34:07 -05:00
image_test.py Add the option to include overlay text on saved images 2020-11-27 14:48:09 -05:00
ip_cow_test.py Update an example test 2021-02-16 23:48:07 -05:00
locale_code_test.py Update example tests 2020-08-22 18:16:34 -04:00
my_first_test.py Update examples 2021-01-25 14:40:13 -05:00
nth_child_test.py Update examples 2020-08-14 02:07:57 -04:00
parameterized_test.py Update examples 2020-06-14 01:17:02 -04:00
proxy_test.py Update example tests 2021-02-25 02:34:07 -05:00
pytest.ini Update examples 2021-01-24 02:51:00 -05:00
rate_limiting_test.py Update examples 2020-12-18 01:25:31 -05:00
raw_parameter_script.py Update examples 2021-01-25 14:40:13 -05:00
setup.cfg Python 3 compatibility (remove semicolons from .cfg files) 2017-07-19 18:41:59 -04:00
swag_labs_suite.py Update an example test 2021-03-04 16:45:06 -05:00
test_agent.py Add and update user agent tests 2020-04-13 04:05:09 -04:00
test_apple_site.py Update examples 2020-12-18 01:25:31 -05:00
test_checkboxes.py Add a test for checkboxes and radio buttons 2020-03-29 16:26:13 -04:00
test_chinese_pdf.py Add a test for verifying PDF testing with Chinese characters 2019-11-29 00:15:24 -05:00
test_chromedriver.py Make sure to initialize "colorama" before using it 2020-09-09 17:20:21 -04:00
test_contains_selector.py Add an example test for the ":contains()" selector 2020-11-24 22:47:01 -05:00
test_deferred_asserts.py Update the examples 2020-08-02 19:52:32 -04:00
test_demo_site.py Update a comment 2021-02-13 08:34:50 -05:00
test_double_click.py Update an example test 2020-01-07 00:35:42 -05:00
test_download_files.py Update examples 2021-02-25 15:08:04 -05:00
test_drag_and_drop.py Update the examples 2020-08-08 01:21:28 -04:00
test_error_page.py Update examples 2020-05-31 14:46:15 -04:00
test_event_firing.py Update examples 2020-06-14 01:17:02 -04:00
test_fail.py Update test comments 2019-10-25 01:19:11 -04:00
test_get_locale_code.py Update example tests 2020-08-22 18:16:34 -04:00
test_get_pdf_text.py Update a test 2019-11-29 00:14:05 -05:00
test_get_user_agent.py Update examples 2020-06-04 03:17:06 -04:00
test_hack_search.py Update examples 2021-01-24 02:51:00 -05:00
test_inspect_html.py Update a test comment 2019-11-21 00:19:57 -05:00
test_login.py Update examples 2020-08-17 21:40:48 -04:00
test_markers.py Update pytest marker test suite 2019-05-16 00:25:26 -04:00
test_null.py Add the minimum test example 2020-02-18 02:11:20 -05:00
test_parse_soup.py Update the examples 2020-12-03 23:31:49 -05:00
test_pdf_asserts.py Add a test for asserting text in a PDF file 2019-11-22 02:16:24 -05:00
test_pytest_parametrize.py Update examples 2020-06-14 01:17:02 -04:00
test_request_sb_fixture.py Update examples 2020-11-21 14:50:02 -05:00
test_sb_fixture.py Update examples 2020-11-21 14:50:02 -05:00
test_skype_site.py Fix typos 2020-12-24 11:03:53 +08:00
test_suite.py Update the examples 2020-08-08 01:21:28 -04:00
test_swag_labs.py Update example tests 2021-03-03 15:53:47 -05:00
test_tinymce.py Update the examples 2020-12-03 23:31:49 -05:00
test_usefixtures.py Update example tests 2020-09-18 16:51:53 -04:00
test_xfail.py Update the examples 2020-08-02 19:52:32 -04:00
timeout_test.py Update the examples 2020-08-02 19:52:32 -04:00
upload_file_test.py Update example tests 2021-03-03 15:53:47 -05:00
user_agent_test.py Add and update user agent tests 2020-04-13 04:05:09 -04:00
xpath_test.py Update the examples 2020-08-08 01:21:28 -04:00

ReadMe.md

Running Example Tests:

SeleniumBase

  • SeleniumBase tests are run with pytest.
  • Chrome is the default browser if not specified.
  • Example tests are located in: SeleniumBase/examples/.
  • During test failures, logs and screenshots from the latest test run are saved to the latest_logs/ folder.
  • Tests can be structured using 15 unique syntax formats.

(NOTE: Some example tests fail on purpose to demonstrate logging features.)

Example tests with run commands to help you get started:

Run an example test in Chrome: (Default: --browser=chrome)

pytest my_first_test.py

Run an example test in Firefox:

pytest my_first_test.py --browser=firefox

Run an example test in Demo Mode: (highlight assertions)

pytest my_first_test.py --demo


Run a different example in Demo Mode:

pytest test_swag_labs.py --demo


Run an example test in Headless Mode: (invisible browser)

pytest my_first_test.py --headless

Run an example test using Chrome's mobile device emulator: (default settings)

pytest test_swag_labs.py --mobile


Run tests with verbose output: (includes more details)

pytest test_suite.py -v

Run a test on the Demo Site to try many SeleniumBase methods:

pytest test_demo_site.py


Run tests multi-threaded using [n] threads:

pytest test_suite.py -n=4

Run a parameterized test: (Generates multiple tests from one)

pytest parameterized_test.py -v

Run a test suite and generate a SeleniumBase Dashboard:

pytest test_suite.py --dashboard

Run a test suite and generate a pytest report:

pytest test_suite.py --html=report.html

Run a failing test: (See the latest_logs/ folder for logs and screenshots)

pytest test_fail.py

Run a failing test with Debug-mode enabled: (pdb activates on failures)

pytest test_fail.py --pdb -s

Run an example test suite that demonstrates the use of pytest markers:

pytest -m marker_test_suite -v

Run an example test suite that reuses the browser session between tests:

pytest test_suite.py --reuse-session

Run an example test demonstrating the rate_limited Python decorator:

pytest rate_limiting_test.py

Run an example test that demonstrates how to upload a file to a website:

pytest upload_file_test.py

SeleniumBase tests can also be run with nosetests:

Run an example test with nosetests:

nosetests my_first_test.py

Run an example test suite and generate a nosetest report:

nosetests test_suite.py --report --show-report

Run an example test using a nosetest configuration file:

nosetests my_first_test.py --config=example_config.cfg

For more advanced run commands, such as using a proxy server, see ../help_docs/customizing_test_runs.md


To make things easier, here's a simple GUI program that allows you to run a few example tests by pressing a button:

python gui_test_runner.py

Tested with SeleniumBase