Skip to content

Commit 424a454

Browse files
committed
Merge remote-tracking branch 'rtomac/master' into documentation-release
(Resolved) Conflicts: src/Selenium2Library/keywords/_element.py
2 parents ce85776 + 0c25caa commit 424a454

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

55 files changed

+1161
-476
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
.project
22
.pydevproject
3+
.idea
34
test/results
45
*.pyc
56
*.orig

.travis.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,10 @@ before_script:
1414
- "export DISPLAY=:99.0"
1515
- "sh -e /etc/init.d/xvfb start"
1616
script:
17-
- "python test/run_tests.py python $BROWSER --noncritical ignore_${BROWSER}_error"
17+
- "firefox --version"
18+
- "python test/run_tests.py python $BROWSER --noncritical known_issue_-_travisci"
1819
env:
1920
matrix:
2021
- BROWSER=firefox
2122
#- BROWSER=ie # will be added when we have completed SauceLabs CI
22-
#- BROWSER=safari # will be added after #247 merged
23+
#- BROWSER=safari # will be added after #247 merged

BUILD.rst

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,8 @@ tests with Robot Framework. This includes:
3737
`resources/testserver`
3838
- A collection of simple html files under 'resources/html' directory
3939
- Start-up scripts for executing the tests
40+
- A copy of statuschecker.py for checking logged messages after the
41+
execution, which requires the tests to run with log level DEBUG
4042

4143
To run unit and acceptance tests, run::
4244

CHANGES.rst

Lines changed: 87 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,89 @@
11
Release Notes
22
=============
33

4+
1.7 (unreleased)
5+
----------------
6+
- Fixed ‘NoSuchWindowException' issue. Running keyword 'Select Window' after 'Close Window'
7+
will trigger this issue if locator has prefix 'name=','title=' or 'url='. Also fixed same
8+
issue for keywords 'Get Window Ids', 'Get Window Titles' and 'Get Window Names'.
9+
[divfor]
10+
11+
- Corrected error message in new keyword 'Wait Until Element Is Not
12+
Visible' to reflect element being visible instead of not visible.
13+
[joepurdy]
14+
15+
- Stop using private browsing with default Firefox profile.
16+
[ombre42]
17+
18+
- Added new keyword 'Wait Until Element Is Not Visible'.
19+
[deiga]
20+
21+
- Added new keyword 'Element Should Not Contain'.
22+
[molsky]
23+
24+
- Added new keyword 'Wait Until Page Does Not Contain Element'.
25+
[molsky]
26+
27+
- Added new locator strategy, scLocator, for finding SmartClient and SmartGWT elements.
28+
[IlfirinPL]
29+
30+
- Edited acceptance test scripts to automatically make known issues for the currently
31+
known browser and python version noncritical. Also added a noncritical case to the
32+
travis config for situations where testing is failing on travis for an unknown reason.
33+
- 'Capture Screenshot' now attempts to create its containing directory if the directory
34+
specified in the filename does not exist.
35+
- 'Choose File' now fails if the file doesn't exist
36+
- Added new keywords 'Add Location Strategy' and 'Remove Location Strategy'
37+
[zephraph]
38+
39+
- Added 'Get Window Position' and 'Set Window Position' keywords matching the
40+
Selenium functionality.
41+
[ktarasz]
42+
43+
1.6
44+
---
45+
- Added examples to 'Execute Javascript' and 'Execute Async Javascript'
46+
keyword documentation.
47+
[ombre42]
48+
49+
- Added instructions to README.rst on how to manually install Selenium2Library.
50+
[pekkaklarck]
51+
52+
- Fixed issue where the browser failed to properly register if 'Open Browser'
53+
did not complete.
54+
[Mika Batsman][elizaleong][emanlove]
55+
56+
- Added support for negative indices for rows and columns in table-related
57+
keywords.
58+
[eweitz]
59+
60+
- Added strategy for locating elements by partial link text with locator
61+
prefix 'partial link'.
62+
[lina1]
63+
64+
- Added new keyword 'Clear Element Text' for clearing the text of text entry
65+
elements.
66+
[emanlove]
67+
68+
- Added new keyword 'Locator Should Match X Times' for validating number of
69+
times a given locator appears.
70+
[emanlove]
71+
72+
- Fixed issue where 'Select Window’ with url strategy fails to locate window
73+
[laulaz]
74+
75+
- Fixed issue where a non-string assigned to window.id caused
76+
'Select Window' and 'Get Window *' keywords to fail.
77+
[ombre42]
78+
79+
- Allow using key attributes (default strategy) when the locator contains
80+
a '=' by using the prefix 'default='. Also make locator prefixes
81+
space-insensitive.
82+
[ombre42]
83+
84+
A big thank you to [eweitz] and [HelioGuilherme66] for getting the
85+
continuous integration builds to go green by fixing internal tests.
86+
487
1.5
588
---
689
- Copy Desired Capabilities before modifying to prevent affecting future
@@ -38,7 +121,7 @@ Release Notes
38121
- Raise exception in selecting non-existing item in list. Error handling varies
39122
between single-select and multi-select lists. See keyword documentation for
40123
more information.
41-
[adwu73][emanlove]
124+
[adwu73][emanlove]
42125

43126
- Added 'Get Window Size' and 'Set Window Size' keywords matching the
44127
Selenium functionality.
@@ -51,11 +134,11 @@ Release Notes
51134

52135
- Beautified README.rst.
53136
[j1z0][emanlove]
54-
137+
55138
- Changed press key test to use Line Feed (\10) instead of
56139
Carriage Return (\13).
57140
[emanlove]
58-
141+
59142
- Added new keyword 'Click Element At Coordinates'.
60143
[aaltat][pierreroth64][ombre42][emanlove]
61144

@@ -106,7 +189,7 @@ Release Notes
106189
[emanlove]
107190

108191
- Use Selenium's Select class within Selenium2Library's "Select *" keywords.
109-
Optimization of certain "Select *" keywords to increase performance.
192+
Optimization of certain "Select *" keywords to increase performance.
110193
[emanlove] [schminitz]
111194
112195
- Replace maximize current browser window from JS to webdriver.

README.rst

Lines changed: 73 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,25 +11,88 @@ Selenium 2 (WebDriver) library for Robot Framework
1111
Introduction
1212
------------
1313

14-
Selenium2Library is a web testing library for Robot Framework
14+
Selenium2Library is a web testing library for `Robot Framework`_
1515
that leverages the `Selenium 2 (WebDriver)`_ libraries from the
1616
Selenium_ project.
1717

18-
It is modeled after (and forked from) the SeleniumLibrary_ library,
18+
It is modeled after (and forked from) the SeleniumLibrary_ library,
1919
but re-implemented to use Selenium 2 and WebDriver technologies.
2020

2121
- More information about this library can be found on the Wiki_ and in the `Keyword Documentation`_.
22-
- Installation information is found in the `INSTALL.rst` file.
23-
- Developer information is found in `BUILD.rst` file.
22+
- Installation information is found in the `INSTALL.rst`_ file.
23+
- Developer information is found in `BUILD.rst`_ file.
2424

2525

2626
Installation
2727
------------
2828

29-
You can install Selenium2Library using pip, with the following command
29+
Using ``pip``
30+
'''''''''''''
31+
32+
The recommended installation method is using
33+
`pip <http://pip-installer.org>`__::
3034

3135
pip install robotframework-selenium2library
3236

37+
The main benefit of using ``pip`` is that it automatically installs all
38+
dependencies needed by the library. Other nice features are easy upgrading
39+
and support for un-installation::
40+
41+
pip install --upgrade robotframework-selenium2library
42+
pip uninstall robotframework-selenium2library
43+
44+
Notice that using ``--upgrade`` above updates both the library and all
45+
its dependencies to the latest version. If you want, you can also install
46+
a specific version or upgrade only the Selenium tool used by the library::
47+
48+
pip install robotframework-selenium2library==1.4.1
49+
pip install --upgrade selenium
50+
pip install selenium==2.34
51+
52+
Proxy configuration
53+
'''''''''''''''''''
54+
55+
If you are behind a proxy, you can use ``--proxy`` command line option
56+
or set ``http_proxy`` and/or ``https_proxy`` environment variables to
57+
configure ``pip`` to use it. If you are behind an authenticating NTLM proxy,
58+
you may want to consider installing `CNTML <http://cntlm.sourceforge.net>`__
59+
to handle communicating with it.
60+
61+
For more information about ``--proxy`` option and using pip with proxies
62+
in general see:
63+
64+
- http://pip-installer.org/en/latest/usage.html
65+
- http://stackoverflow.com/questions/9698557/how-to-use-pip-on-windows-behind-an-authenticating-proxy
66+
- http://stackoverflow.com/questions/14149422/using-pip-behind-a-proxy
67+
68+
Manual installation
69+
'''''''''''''''''''
70+
71+
If you do not have network connection or cannot make proxy to work, you need
72+
to resort to manual installation. This requires installing both the library
73+
and its dependencies yourself.
74+
75+
1) Make sure you have `Robot Framework installed
76+
<http://code.google.com/p/robotframework/wiki/Installation>`__.
77+
78+
2) Download source distributions (``*.tar.gz``) for the library and its
79+
dependencies:
80+
81+
- https://pypi.python.org/pypi/robotframework-selenium2library
82+
- https://pypi.python.org/pypi/selenium
83+
- https://pypi.python.org/pypi/decorator
84+
85+
3) Extract each source distribution to a temporary location.
86+
87+
4) Go each created directory from the command line and install each project
88+
using::
89+
90+
python setup.py install
91+
92+
If you are on Windows, and there are Windows installers available for
93+
certain projects, you can use them instead of source distributions.
94+
Just download 32bit or 64bit installer depending on your system,
95+
double-click it, and follow the instructions.
3396

3497
Directory Layout
3598
----------------
@@ -47,7 +110,7 @@ src/
47110
Usage
48111
-----
49112

50-
To write tests with Robot Framework and Selenium2Library,
113+
To write tests with Robot Framework and Selenium2Library,
51114
Selenium2Library must be imported into your Robot test suite.
52115
See `Robot Framework User Guide`_ for more information.
53116

@@ -63,7 +126,7 @@ using Selenium2Library. To run the demo, run::
63126
E.g.::
64127

65128
python demo/rundemo.py demo/login_tests
66-
129+
67130
Getting Help
68131
------------
69132
The `user group for Robot Framework`_ is the best place to get help. Consider including in the post:
@@ -72,10 +135,13 @@ The `user group for Robot Framework`_ is the best place to get help. Consider in
72135
- Version number of Selenium2Library, Robot Framework, and Selenium
73136
- Traceback or other debug output containing error information
74137

138+
.. _Robot Framework: http://robotframework.org
75139
.. _Selenium: http://selenium.openqa.org
76140
.. _Selenium 2 (WebDriver): http://seleniumhq.org/docs/03_webdriver.html
77141
.. _SeleniumLibrary: http://code.google.com/p/robotframework-seleniumlibrary/
78142
.. _Wiki: https://github.com/rtomac/robotframework-selenium2library/wiki
79143
.. _Keyword Documentation: http://rtomac.github.com/robotframework-selenium2library/doc/Selenium2Library.html
144+
.. _INSTALL.rst: https://github.com/rtomac/robotframework-selenium2library/blob/master/INSTALL.rst
145+
.. _BUILD.rst: https://github.com/rtomac/robotframework-selenium2library/blob/master/BUILD.rst
80146
.. _Robot Framework User Guide: http://code.google.com/p/robotframework/wiki/UserGuide
81147
.. _user group for Robot Framework: http://groups.google.com/group/robotframework-users

0 commit comments

Comments
 (0)