forked from SeleniumHQ/docs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
179 lines (158 loc) · 7.9 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
<!DOCTYPE html><meta charset=utf-8>
<title>Selenium documentation</title>
<link rel=icon type="image/vnd.microsoft.icon" href=favicon.ico>
<link rel="shortcut icon" type="image/vnd.microsoft.icon" href=favicon.ico>
<link rel=stylesheet href=se.css>
<link rel=next title="Quick Tour" href=quick.html>
<script src=docs.js></script>
<body class=front>
<h1>The Selenium Browser Automation Project</h1>
<p>Selenium is an umbrella project for a range of tools and libraries
that enable and support the automation of web browsers.
<p>It provides extensions to emulate user interaction with browsers,
a distribution server for scaling browser allocation,
and the infrastructure for implementations of the
<a href="//www.w3.org/TR/webdriver/">W3C WebDriver specification</a>
that lets you write interchangeable code for all major web browsers.
<p>This project is made possible by volunteer contributors
who have put in thousands of hours of their own time,
and made the source code <a href=attr.html#license>freely available</a>
for anyone to use, enjoy, and improve.
<p>Selenium brings together browser vendors, engineers, and enthusiasts
to further an open discussion around automation of the web platform.
The project organises <a href="http://seleniumconf.com/">an annual conference</a>
to teach and nurture the community.
<p>At the core of Selenium is <em><a href=wd.html>WebDriver</a></em>,
an interface to write instruction sets
that can be run interchangeably in many browsers.
Here is one of the simplest instructions you can make:
<!-- TODO(ato): We should find a better example. Perhaps Todo list? -->
<pre><code class=python>from selenium import webdriver
driver = webdriver.Firefox()
driver.get("http://google.com/?hl=en")
search_box = driver.find_element_by_id("q")
search_box.send_keys("cheese")
search_box.submit()</code></pre>
<p>See the <em><a href=quick.html>Quick Tour</a></em>
for a full explanation
of what goes on behind the scenes when you run this code.
You should continue on to the <a href=#narrative>narrative documentation</a>
to understand how you can <a href=install.html>install</a> and
successfully use Selenium as a test automation tool,
and scaling simple tests like this to run
in large, distributed environments on multiple browsers,
on several different operating systems.
<h2>Getting started</h2>
<p>If you are new to Selenium,
we have a few resources that can help you
get up to speed right away.
<div id=gettingstarted><ul>
<li><a href=quick.html#quick_tour>Quick tour</a>
<ul>
<li><a href=quick.html#webdriver>WebDriver</a>
<li><a href=quick.html#selenium_remote_control>Selenium Remote Control</a>
<li><a href=quick.html#selenium_ide>Selenium IDE</a>
<li><a href=quick.html#selenium_grid>Selenium Grid</a>
</ul></li>
</ul>
</div>
<h2>Narrative documentation</h2>
<p>Narrative documentation in chapter form
explaining how to use Selenium in detail, from bottom up.
<div id=narrative><ul>
<li><a href=intro.html#introduction>Introduction</a>
<ul>
<li><a href=intro.html#the_selenium_project_and_tools>The Selenium project and tools</a>
<li><a href=intro.html#on_test_automation>On test automation</a>
<li><a href=intro.html#types_of_testing>Types of testing</a>
<li><a href=intro.html#about_this_documentation>About this documentation</a>
</ul></li>
<li><a href=install.html#selenium_installation>Selenium installation</a>
<ul>
<li><a href=install.html#using_browser_specific_jar>Using browser specific JAR</a>
<li><a href=install.html#using_non_browser_specific_jar>Using non browser specific JAR</a>
<li><a href=install.html#using_standalone_jar>Using standalone JAR</a>
</ul></li>
<li><a href=start.html#getting_started_with_webdriver>Getting started with WebDriver</a>
<ul>
<li><a href=start.html#consumer_browsers>Consumer browsers</a>
<li><a href=start.html#specialised_browsers>Specialised browsers</a>
<li><a href=start.html#other_third_party_drivers_and_plugins>Other third party drivers and plugins</a>
<li><a href=start.html#locating_elements>Locating elements</a>
<li><a href=start.html#performing_actions_on_the_aut>Performing actions on the AUT</a>
</ul></li>
<li><a href=wd.html#webdriver>WebDriver</a>
<ul>
<li><a href=wd.html#driver_requirements>Driver requirements</a>
<li><a href=wd.html#browser_launching_and_manipulation>Browser launching and manipulation</a>
<li><a href=wd.html#waits>Waits</a>
<li><a href=wd.html#support_classes>Support classes</a>
<li><a href=wd.html#http_proxies>HTTP proxies</a>
<li><a href=wd.html#page_loading_strategy>Page loading strategy</a>
<li><a href=wd.html#web_elements>Web elements</a>
<li><a href=wd.html#keyboard>Keyboard</a>
<li><a href=wd.html#mouse>Mouse</a>
</ul></li>
<li><a href=remote.html#remote_webdriver>Remote WebDriver</a>
<ul>
<li><a href=remote.html#the_remotewebdriver_server>The RemoteWebDriver server</a>
<li><a href=remote.html#running_remotewebdriver_client>Running RemoteWebDriver client</a>
</ul></li>
<li><a href=guidelines.html#guidelines_and_recommendations>Guidelines and Recommendations</a>
<ul>
<li><a href=guidelines.html#page_object_models>Page object models</a>
<li><a href=guidelines.html#domain_specific_language>Domain Specific Language</a>
<li><a href=guidelines.html#generating_application_state>Generating application state</a>
<li><a href=guidelines.html#mock_external_services>Mock external services</a>
<li><a href=guidelines.html#improved_reporting>Improved reporting</a>
<li><a href=guidelines.html#avoid_sharing_state>Avoid sharing state</a>
<li><a href=guidelines.html#test_independency>Test independency</a>
<li><a href=guidelines.html#consider_using_a_fluent_api>Consider using a fluent API</a>
<li><a href=guidelines.html#fresh_browser_per_test>Fresh browser per test</a>
</ul></li>
<li><a href=worst.html#worst_practices>Worst Practices</a>
<ul>
<li><a href=worst.html#captchas>Captchas</a>
<li><a href=worst.html#file_downloads>File downloads</a>
<li><a href=worst.html#http_response_codes>HTTP response codes</a>
<li><a href=worst.html#gmail_email_and_facebook_logins>Gmail, email, and Facebook logins</a>
<li><a href=worst.html#test_dependency>Test dependency</a>
<li><a href=worst.html#performance_testing>Performance testing</a>
<li><a href=worst.html#link_spidering>Link spidering</a>
</ul></li>
<li><a href=grid.html#selenium_grid>Selenium Grid</a>
<ul>
<li><a href=grid.html#pros_and_cons>Pros and cons</a>
<li><a href=grid.html#what_is_a_hub_and_node>What is a hub and node?</a>
<li><a href=grid.html#rolling_your_own_grid>Rolling your own grid</a>
</ul></li>
<li><a href=drivers.html#driver_idiosyncrasies>Driver idiosyncrasies</a>
<ul>
<li><a href=drivers.html#shared_capabilities>Shared capabilities</a>
<li><a href=drivers.html#driver_specific_capabilities>Driver specific capabilities</a>
</ul></li>
<li><a href=java.html#the_java_support_package>The Java support package</a>
<ul>
<li><a href=java.html#browser_navigation>Browser navigation</a>
<li><a href=java.html#working_with_colours>Working with colours</a>
<li><a href=java.html#working_with_select_elements>Working with select elements</a>
<li><a href=java.html#mouse_and_keyboard_actions_in_detail>Mouse and keyboard actions in detail</a>
<li><a href=java.html#working_with_web_elements>Working with web elements</a>
</ul></li>
</ul>
</div>
<h2>Front matter</h2>
<div id=frontmatter><ul>
<li><a href=attr.html#copyright_and_attributions>Copyright and attributions</a>
<ul>
<li><a href=attr.html#attributions>Attributions</a>
<li><a href=attr.html#html_version_and_source_code>HTML version and source code</a>
<li><a href=attr.html#license>License</a>
</ul></li>
<li><a href=typo.html#typographical_conventions>Typographical conventions</a>
<ul>
<li><a href=typo.html#capitalisation_of_titles>Capitalisation of titles</a>
<li><a href=typo.html#line_length>Line length</a>
</ul></li>
</ul>
</div>