forked from SeleniumHQ/selenium
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
127 lines (83 loc) · 4.32 KB
/
README
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
======================
Selenium Client Driver
======================
Introduction
============
Python language bindings for Selenium WebDriver.
The `selenium` package is used automate web browser interaction from Python.
+-----------+-----------------------------------------------------------------------------------+
| **Home**: | http://www.seleniumhq.org |
+-----------+-----------------------------------------------------------------------------------+
| **Docs**: | `selenium package API <http://selenium.googlecode.com/git/docs/api/py/api.html>`_ |
+-----------+-----------------------------------------------------------------------------------+
| **Dev**: | https://code.google.com/p/selenium/ |
+-----------+-----------------------------------------------------------------------------------+
| **PyPI**: | https://pypi.python.org/pypi/selenium |
+-----------+-----------------------------------------------------------------------------------+
| **IRC**: | **#selenium** channel on freenode |
+-----------+-----------------------------------------------------------------------------------+
Several browsers/drivers are supported (Firefox, Chrome, Internet Explorer, PhantomJS), as well as the Remote protocol.
Supported Python Versions
=========================
* Python 2.6, 2.7
* Python 3.2, 3.3
Installing
==========
If you have `pip <http://www.pip-installer.org>`_ on your system, you can simply install or upgrade the Python bindings::
pip install -U selenium
Alternately, you can download the source distribution from `PyPI <http://pypi.python.org/pypi/selenium>`_ (e.g. selenium-2.42.tar.gz), unarchive it, and run::
python setup.py install
Note: both of the methods described above install `selenium` as a system-wide package That will require administrative/root access to ther machine. You may consider using a `virtualenv <http://www.virtualenv.org/>`_ to create isolated Python environments instead.
Example 0:
==========
* open a new Firefox browser
* load the page at the given URL
::
from selenium import webdriver
browser = webdriver.Firefox()
browser.get('http://seleniumhq.org/')
Example 1:
==========
* open a new Firefox browser
* load the Yahoo homepage
* search for "seleniumhq"
* close the browser
::
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
browser = webdriver.Firefox()
browser.get('http://www.yahoo.com')
assert 'Yahoo!' in browser.title
elem = browser.find_element_by_name('p') # Find the search box
elem.send_keys('seleniumhq' + Keys.RETURN)
browser.quit()
Example 2:
==========
Selenium WebDriver is often used as a basis for testing web applications. Here is a simple example uisng Python's standard `unittest <http://docs.python.org/3/library/unittest.html>`_ library:
::
import unittest
class GoogleTestCase(unittest.TestCase):
def setUp(self):
self.browser = webdriver.Firefox()
self.addCleanup(self.browser.quit)
def testPageTitle(self):
self.browser.get('http://www.google.com')
self.assertIn('Google', self.browser.title)
if __name__ == '__main__':
unittest.main(verbosity=2)
Selenium Server (optional)
==========================
For normal WebDriver scripts (non-Remote), the Java server is not needed.
However, to use Selenium Webdriver Remote or the legacy Selenium API (Selenium-RC), you need to also run the Selenium server. The server requires a Java Runtime Environment (JRE).
Download the server separately, from: http://selenium-release.storage.googleapis.com/2.42/selenium-server-standalone-2.42.0.jar
Run the server from the command line::
java -jar selenium-server-standalone-2.42.0.jar
Then run your Python client scripts.
Use The Source Luke!
====================
View source code online:
+-----------+-------------------------------------------------------+
| official: | https://code.google.com/p/selenium/source/browse/py |
+-----------+-------------------------------------------------------+
| mirror: | https://github.com/SeleniumHQ/selenium/tree/master/py |
+-----------+-------------------------------------------------------+