SeleniumBase/examples
Michael Mintz 59263ce817 Add SeleniumBase branding to HTML code 2020-08-17 16:20:29 -04:00
..
boilerplates Update examples 2020-06-14 01:17:02 -04:00
capabilities Update the docs 2020-05-19 14:13:17 -04:00
chart_maker Update the docs 2020-08-05 15:31:58 -04:00
example_logs Update the docs 2020-05-19 17:22:07 -04:00
master_qa Update examples 2020-06-14 01:17:02 -04:00
offline_examples Add SeleniumBase branding to HTML code 2020-08-17 16:20:29 -04:00
presenter Add a presentation that talks about core areas 2020-08-15 21:21:09 -04:00
tour_examples Update the examples 2020-08-02 19:52:32 -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 Add a new example test 2019-09-16 05:13:20 -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
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 the "--swiftshader" command-line option 2020-07-10 21:17:19 -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 example tests 2020-07-28 12:04:01 -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_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_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_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_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 example tests 2020-07-28 12:04:01 -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 examples 2020-05-25 04:25:47 -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