bok-choy
Introduction
Installation
Tutorial
Folder structure
Round 1 - The framework of a test
Round 2 - Interacting with a page
Round 3 - Search and verify results
Take it from here!
Test-Design Guidelines
Put browser interactions in the page object, not the test
Put assertions in the test, not the page object
Never use
time.sleep()
Always make pages wait for actions to complete
Wait for JavaScript to load
Performing Accessibility Audits
Define the Accessibility Rules to Check for a Page
(Optional) Define the Scope of Accessibility Auditing for a Page
Trigger an Audit Actively and Assert on the Results Returned
Leverage Your Existing Tests and Fail on Accessibility Errors
Visual Diff Testing
Write Your Page Object and Test Case Code to Navigate the System Under Test
Add the Call to assertScreenshot
Create the Initial Baseline Screenshot
Execute Your Test Cases After Changes to the System Under Test
Advanced Features
Performing XSS Vulnerability Audits
Trigger XSS Vulnerability Audits in Existing Tests
Browser Customization
Firefox Profile Preferences
Firefox Profile Directory
Testing Environment Configuration
Testing via TravisCI
Testing via tox
API Reference
browser
javascript
page_object
accessibility
promise
query
web_app_test
bok-choy
Table of Contents
»
Index
Give Doc Feedback
Index
A
|
B
|
C
|
D
|
E
|
F
|
G
|
H
|
I
|
J
|
M
|
N
|
P
|
Q
|
R
|
S
|
T
|
U
|
V
|
W
|
X
A
a11y_audit (bok_choy.page_object.PageObject attribute)
A11yAudit (class in bok_choy.a11y.a11y_audit)
A11yAuditConfig (class in bok_choy.a11y.a11y_audit)
A11yAuditConfigError
AccessibilityError
add_profile_customizer() (in module bok_choy.browser)
attrs() (bok_choy.query.BrowserQuery method)
AuditResults (class in bok_choy.a11y.axs_ruleset)
AxeCoreAudit (class in bok_choy.a11y.axe_core_ruleset)
AxeCoreAuditConfig (class in bok_choy.a11y.axe_core_ruleset)
AxsAudit (class in bok_choy.a11y.axs_ruleset)
AxsAuditConfig (class in bok_choy.a11y.axs_ruleset)
B
bok_choy.a11y.a11y_audit (module)
bok_choy.a11y.axe_core_ruleset (module)
bok_choy.a11y.axs_ruleset (module)
bok_choy.browser (module)
bok_choy.javascript (module)
bok_choy.page_object (module)
bok_choy.promise (module)
bok_choy.query (module)
bok_choy.web_app_test (module)
BrokenPromise
browser() (in module bok_choy.browser)
BrowserConfigError
BrowserQuery (class in bok_choy.query)
C
check_for_accessibility_errors() (bok_choy.a11y.a11y_audit.A11yAudit method)
clear_profile_customizers() (in module bok_choy.browser)
click() (bok_choy.query.BrowserQuery method)
customize_ruleset() (bok_choy.a11y.a11y_audit.A11yAuditConfig method)
(bok_choy.a11y.axe_core_ruleset.AxeCoreAuditConfig method)
(bok_choy.a11y.axs_ruleset.AxsAuditConfig method)
D
default_config (bok_choy.a11y.a11y_audit.A11yAudit attribute)
(bok_choy.a11y.axe_core_ruleset.AxeCoreAudit attribute)
(bok_choy.a11y.axs_ruleset.AxsAudit attribute)
do_audit() (bok_choy.a11y.a11y_audit.A11yAudit method)
E
EmptyPromise (class in bok_choy.promise)
errors (bok_choy.a11y.axs_ruleset.AuditResults attribute)
execute() (bok_choy.query.Query method)
F
fill() (bok_choy.query.BrowserQuery method)
filter() (bok_choy.query.Query method)
first (bok_choy.query.Query attribute)
focused (bok_choy.query.BrowserQuery attribute)
format_errors() (bok_choy.a11y.axe_core_ruleset.AxeCoreAudit static method)
fulfill() (bok_choy.promise.Promise method)
G
get_errors() (bok_choy.a11y.axe_core_ruleset.AxeCoreAudit static method)
(bok_choy.a11y.axs_ruleset.AxsAudit static method)
get_web_driver() (bok_choy.web_app_test.WebAppTest method)
H
handle_alert() (bok_choy.page_object.PageObject method)
html (bok_choy.query.BrowserQuery attribute)
I
invisible (bok_choy.query.BrowserQuery attribute)
is_browser_on_page() (bok_choy.page_object.PageObject method)
is_focused() (bok_choy.query.BrowserQuery method)
is_present() (bok_choy.query.Query method)
J
js_defined() (in module bok_choy.javascript)
M
map() (bok_choy.query.Query method)
N
no_error() (in module bok_choy.query)
no_selenium_errors() (in module bok_choy.page_object)
nth() (bok_choy.query.Query method)
P
PageLoadError
PageObject (class in bok_choy.page_object)
pre_verify() (in module bok_choy.page_object)
present (bok_choy.query.Query attribute)
Promise (class in bok_choy.promise)
Q
q() (bok_choy.page_object.PageObject method)
Query (class in bok_choy.query)
quit_browser() (bok_choy.web_app_test.WebAppTest method)
R
replace() (bok_choy.query.Query method)
report_errors() (bok_choy.a11y.a11y_audit.A11yAudit static method)
(bok_choy.a11y.axe_core_ruleset.AxeCoreAudit static method)
(bok_choy.a11y.axs_ruleset.AxsAudit static method)
requirejs() (in module bok_choy.javascript)
results (bok_choy.query.Query attribute)
S
save_driver_logs() (in module bok_choy.browser)
save_screenshot() (in module bok_choy.browser)
save_source() (in module bok_choy.browser)
scroll_to_element() (bok_choy.page_object.PageObject method)
selected (bok_choy.query.BrowserQuery attribute)
set_rules() (bok_choy.a11y.a11y_audit.A11yAuditConfig method)
(bok_choy.a11y.axe_core_ruleset.AxeCoreAuditConfig method)
(bok_choy.a11y.axs_ruleset.AxsAuditConfig method)
set_rules_file() (bok_choy.a11y.a11y_audit.A11yAuditConfig method)
set_scope() (bok_choy.a11y.a11y_audit.A11yAuditConfig method)
(bok_choy.a11y.axe_core_ruleset.AxeCoreAuditConfig method)
(bok_choy.a11y.axs_ruleset.AxsAuditConfig method)
set_viewport_size() (bok_choy.web_app_test.WebAppTest method)
setUp() (bok_choy.web_app_test.WebAppTest method)
setUpClass() (bok_choy.web_app_test.WebAppTest class method)
T
tearDownClass() (bok_choy.web_app_test.WebAppTest class method)
text (bok_choy.query.BrowserQuery attribute)
transform() (bok_choy.query.Query method)
U
unguarded() (in module bok_choy.page_object)
unique_id (bok_choy.web_app_test.WebAppTest attribute)
url (bok_choy.page_object.PageObject attribute)
V
validate_url() (bok_choy.page_object.PageObject class method)
visible (bok_choy.query.BrowserQuery attribute)
visit() (bok_choy.page_object.PageObject method)
W
wait_for() (bok_choy.page_object.PageObject method)
wait_for_ajax() (bok_choy.page_object.PageObject method)
wait_for_element_absence() (bok_choy.page_object.PageObject method)
wait_for_element_invisibility() (bok_choy.page_object.PageObject method)
wait_for_element_presence() (bok_choy.page_object.PageObject method)
wait_for_element_visibility() (bok_choy.page_object.PageObject method)
wait_for_js() (in module bok_choy.javascript)
wait_for_page() (bok_choy.page_object.PageObject method)
warning() (bok_choy.page_object.PageObject method)
warnings (bok_choy.a11y.axs_ruleset.AuditResults attribute)
WebAppTest (class in bok_choy.web_app_test)
WrongPageError
X
XSSExposureError