SeleniumBase/examples
Michael Mintz 866df4f010 Update the Google Tour example 2018-08-12 17:24:47 -04:00
..
boilerplates Update example test 2018-08-12 17:23:55 -04:00
example_logs Update the docs 2018-08-01 21:04:00 -04:00
master_qa Add a ReadMe file to the MasterQA examples folder 2018-08-07 22:15:01 -04:00
tour_examples Update the Google Tour example 2018-08-12 17:24:47 -04:00
ReadMe.md Update multiple ReadMe files 2018-07-31 14:47:10 -04:00
__init__.py Fresh Copy 2015-12-04 16:11:53 -05:00
basic_script.py Update example tests 2018-07-25 00:58:56 -04:00
delayed_assert_test.py Update "delayed asserts" examples 2018-03-04 10:27:41 -05:00
example_config.cfg Update example config files 2018-03-05 17:33:07 -05:00
github_test.py Don't trigger GitHub's automation-detection system 2018-04-17 03:08:28 -04:00
gui_test_runner.py Update the GUI_test_runner 2018-03-04 17:53:52 -05:00
my_first_test.py Update comments in the example test 2018-07-31 14:33:42 -04:00
my_test_suite.py Python 3 compatibility ("xrange" becomes "range") 2017-07-19 18:38:55 -04:00
proxy_test.py Update proxy_test 2018-06-17 14:42:12 -04:00
rate_limiting_test.py Make it easier to import SeleniumBase decorators 2018-03-03 19:09:18 -05:00
run_my_first_test_in_chrome.sh Update example tests. 2018-02-08 15:17:31 -05:00
run_my_first_test_in_firefox.sh Update example tests. 2018-02-08 15:17:31 -05:00
run_rate_limiting_test.sh Update the rate-limiting example test 2016-01-11 20:15:38 -05:00
run_test_fail_with_logging.sh Update example tests. 2018-02-08 15:17:31 -05:00
setup.cfg Python 3 compatibility (remove semicolons from .cfg files) 2017-07-19 18:41:59 -04:00
test_fail.py Update test that fails on purpose. 2018-03-04 14:58:57 -05:00

ReadMe.md

Running SeleniumBase Scripts

To run tests, make sure you've already installed SeleniumBase using pip install seleniumbase OR pip install -r requirements.txt + python setup.py develop from the top-level directory.

You can interchange pytest with nosetests, but using pytest is strongly recommended because developers stopped supporting nosetests. Chrome is the default browser if not specified.

During test failures, logs and screenshots from the most recent test run will get saved to the latest_logs/ folder. Those logs will get moved to archived_logs/ if you have ARCHIVE_EXISTING_LOGS set to True in settings.py

(NOTE: Many tests in this folder fail on purpose to demonstrate the built-in logging, screenshots, and reporting features.)

Here are some example run commands to help get you started:

Run the example test in Chrome:

pytest my_first_test.py --browser=chrome

Run the example test in Firefox:

pytest my_first_test.py --browser=firefox

Run the example test in Demo Mode (highlights page objects being acted on):

pytest my_first_test.py --browser=chrome --demo_mode

Run the example test suite and generate an pytest report: (pytest-only)

pytest basic_script.py --html=report.html

Run the example test suite and generate a nosetest report: (nosetests-only)

nosetests my_test_suite.py --report --show_report

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

nosetests my_first_test.py --config=example_config.cfg

Run a test demonstrating the use of SeleniumBase Python decorators available:

pytest rate_limiting_test.py

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

pytest test_fail.py --browser=chrome

Run a failing test with Debugging-mode enabled: (If a test failure occurs, pdb activates)

pytest test_fail.py --browser=chrome --pdb --pdb-failures -s

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


To makes things easier, here's a simple GUI program that allows you to kick off a few example scripts by pressing a button:

python gui_test_runner.py

(NOTE: If you see any *.pyc files appear as you run tests, that's perfectly normal. Compiled bytecode is a natural result of running Python code.)