SeleniumBase/examples
Michael Mintz 709d2d70e0 Update the Italian test 2020-05-15 01:49:46 -04:00
..
boilerplates Update an example 2020-04-25 16:50:00 -04:00
capabilities Update the docs 2020-04-21 15:39:44 -04:00
example_logs Update the docs 2020-05-06 22:59:07 -04:00
master_qa Update MasterQA docs 2020-05-07 10:51:14 -04:00
offline_examples Update example tests 2020-04-28 23:50:17 -04:00
tour_examples Update the Tours ReadMe 2020-05-07 13:06:25 -04:00
translations Update the Italian test 2020-05-15 01:49:46 -04:00
visual_testing Update the docs 2020-05-07 23:48:07 -04:00
ReadMe.md Update the docs 2020-05-12 19:58:43 -04:00
__init__.py Fresh Copy 2015-12-04 16:11:53 -05:00
basic_test.py Simplify the URL format in tests 2020-04-21 02:39:00 -04:00
custom_settings.py Add option to change the default MySQL port 2020-02-19 03:42:00 -05: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 a test 2019-07-14 01:02:45 -04:00
gui_test_runner.py Update the GUI test runner 2019-09-16 05:14:57 -04:00
handle_alert_test.py Update the alert test 2020-04-22 12:45:11 -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 Simplify the URL format in tests 2020-04-21 02:39:00 -04:00
parameterized_test.py Update a test selector 2020-03-18 15:42:14 -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 "--crumbs": Delete cookies between tests reusing sessions 2020-05-03 15:58:49 -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 the Swag Labs tests 2020-05-07 19:14:44 -04:00
test_agent.py Add and update user agent tests 2020-04-13 04:05:09 -04:00
test_apple_site.py Update a test 2020-04-25 10:49:51 -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_delayed_asserts.py Rename a test 2019-09-16 05:04:40 -04:00
test_demo_site.py Update example tests 2020-04-28 23:50:17 -04:00
test_double_click.py Update an example test 2020-01-07 00:35:42 -05:00
test_event_firing.py Add an example to demonstrate EventFiringWebDriver 2019-11-29 22:42:08 -05: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_hack_search.py Add test demonstrating set_attribute() and set_attributes() 2019-12-24 18:43:08 -05: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 test file spelling 2019-11-27 01:52:25 -05:00
test_sb_fixture.py Add tests around the "sb" pytest fixture 2019-08-02 02:21:51 -04:00
test_skype_site.py Update tests 2020-04-16 21:55:52 -04:00
test_suite.py Update example tests 2018-12-11 02:01:57 -05:00
test_swag_labs.py Update the Swag Labs test 2020-05-07 19:27:25 -04:00
test_usefixtures.py Add tests around the "sb" pytest fixture 2019-08-02 02:21:51 -04:00
timeout_test.py Add the --time-limit=s feature to fail long-running tests 2020-01-15 03:16:04 -05:00
upload_file_test.py Update an example test 2019-12-11 02:34:27 -05:00
user_agent_test.py Add and update user agent tests 2020-04-13 04:05:09 -04:00
xpath_test.py Add an example test with XPath selectors 2019-10-25 01:19:58 -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 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 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