SeleniumBase/examples
Michael Mintz d1ee47cc34 Update the example of basic_test_info 2020-09-02 19:20:18 -04:00
..
boilerplates Update the boilerplate example by adding "has_exception()" 2020-08-26 00:28:45 -04:00
capabilities Update the docs 2020-05-19 14:13:17 -04:00
chart_maker Update the docs 2020-08-26 19:11:39 -04:00
example_logs Update the example of basic_test_info 2020-09-02 19:20:18 -04:00
master_qa Update examples 2020-06-14 01:17:02 -04:00
offline_examples Add another example that works offline 2020-08-28 01:38:22 -04:00
presenter Update the docs 2020-08-26 19:11:39 -04:00
tour_examples Update the docs 2020-08-26 19:11:39 -04:00
translations Update the examples 2020-08-08 01:21:28 -04:00
visual_testing Update names of tests 2020-08-10 23:57:20 -04:00
ReadMe.md Update the docs 2020-07-26 11:27:47 -04:00
__init__.py Fresh Copy 2015-12-04 16:11:53 -05:00
basic_test.py Add and update example tests 2020-08-13 03:41:09 -04:00
custom_settings.py Refactoring custom settings 2020-08-08 01:05:37 -04:00
decryption_test.py Update a test 2020-08-20 23:30:08 -04:00
edge_test.py Update tests 2020-04-16 21:55:52 -04:00
example_config.cfg Update example config files 2018-03-05 17:33:07 -05:00
github_test.py Update examples 2020-08-14 20:32:45 -04:00
gui_test_runner.py Update examples 2020-05-28 03:37:44 -04:00
handle_alert_test.py Update examples 2020-05-28 03:37:44 -04:00
image_test.py Add image test to save an element screenshot to a file 2019-04-06 01:21:03 -04:00
ip_cow_test.py Add the ip_cow test 2019-03-17 02:09:30 -04:00
locale_code_test.py Update example tests 2020-08-22 18:16:34 -04:00
my_first_test.py Add and update example tests 2020-08-13 03:41:09 -04: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 2019-08-06 01:39:32 -04:00
rate_limiting_test.py Make it easier to import SeleniumBase decorators 2018-03-03 19:09:18 -05:00
raw_parameter_script.py Add option: "--enable-ws" to enable Chrome's Web Security 2020-08-29 21:34:00 -04:00
setup.cfg Python 3 compatibility (remove semicolons from .cfg files) 2017-07-19 18:41:59 -04:00
swag_labs_suite.py Update examples 2020-08-17 21:40:48 -04:00
test_agent.py Add and update user agent tests 2020-04-13 04:05:09 -04:00
test_apple_site.py Update an example 2020-08-15 21:20:10 -04: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 Add a test to detect if using an out-of-date ChromeDriver 2020-08-20 23:30:50 -04:00
test_deferred_asserts.py Update the examples 2020-08-02 19:52:32 -04:00
test_demo_site.py Update a test 2020-08-05 15:31:35 -04:00
test_double_click.py Update an example test 2020-01-07 00:35:42 -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 2020-06-14 01:17:02 -04: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_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 Add an example that pulls in the sb fixture during a test 2020-08-28 01:40:40 -04:00
test_sb_fixture.py Update examples 2020-06-14 01:17:02 -04:00
test_skype_site.py Update the Skype site mobile test 2020-07-30 11:01:34 -04:00
test_suite.py Update the examples 2020-08-08 01:21:28 -04:00
test_swag_labs.py Update examples 2020-08-17 21:40:48 -04:00
test_tinymce.py Update examples 2020-08-14 20:32:45 -04:00
test_usefixtures.py Update example tests 2020-07-28 12:04:01 -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 an example test 2020-08-28 01:35:09 -04: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

SeleniumBase

Running Example Tests:

SeleniumBase tests are run with pytest. Chrome is the default browser if not specifed. During test failures, logs and screenshots from the latest run are saved to the latest_logs/ folder.

Example tests are located in SeleniumBase/examples.

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

Here are some example run commands to help get you 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 -v -n=4

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

pytest parameterized_test.py -v

Run a test suite and generate a pytest report: (pytest-only)

pytest test_suite.py -v --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 -v

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-only)

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

Run an example test using a nosetest configuration file: (nosetests-only)

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