Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

An AngularJS extension to Robotframework's Selenium2Library

Project Description

AngularJSLibrary - robotframework-angularjs
An AngularJS extension to Robotframework's Selenium2Library

What is included
AngularJSLibrary provides keywords for finding elements by binding, model, and repeater. The library also provides a keyword for waiting on angular.

To install **AngularJSLibrary**, run:

.. code:: bash

pip install robotframework-angularjs

Alternatively, to install from source:

.. code:: bash

python install

Keyword Usage
In order to use the keywords you have to include AngularJSLibrary in the settings section of your test. Note will will need to include the Selenium2Library **before** you import the AngularJSLibrary.

.. code:: robotframework

*** Settings ***
Library Selenium2Library
Library AngularJSLibrary

*** Test Cases ***
Go To localhost:8080
Wait for Angular

The new locator strategies include

.. code::


For example, you can look for an Angular ng-binding using

.. code:: robotframework

Get Text binding={{greeting}}

or by using partial match

.. code:: robotframework

Get Text binding=greet

or by simply using the binding {{…}} notation

.. code:: robotframework

Get Text {{greeting}}

One can also find elements by model

.. code:: robotframework

Input Text model=aboutbox Something else to write about

.. role:: rf(code)
:language: robotframework

Finally there is the strategy of find by repeat. This takes the general form of :rf:`repeater=some ngRepeat directive@row[n]@column={{ngBinding}}`. Here we specify the directive as well as the row, an zero-based index, and the column, an ngBinding. Using this full format will return, if exists the element matching the directive, row and column binding. One does not need to specify the row and column but can specify either both, one or the other or neither. In such cases the locator may return list of elements or even a list of list of elements. Also the ordering of row and column does not matter; using :rf:`repeater=baz in days@row[0]@column=b` is the same as :rf:`repeater=baz in days@column=b @row[0]`.

Getting Help
If you need help with AngularJSLibrary, Selenium2Library, or Robot Framework usage, please post to the `user group for Robot Framework <!forum/robotframework-users>`_.

For information on how we test the AngularJSLibrary see the `Testing.rst`_ file.


`Selenium2Library <>`_: Web testing library for Robot Framework

`Protractor <>`_: E2E test framework for Angular apps

Release History

This version
History Node


History Node


History Node


History Node


History Node


History Node


Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Hash SHA256 Hash Help Version File Type Upload Date
(14.0 kB) Copy SHA256 Hash SHA256
2.7 Egg Jun 12, 2017
(9.8 kB) Copy SHA256 Hash SHA256
py2 Wheel Jun 12, 2017
(7.6 kB) Copy SHA256 Hash SHA256
Source Jun 12, 2017

Supported By

Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Google Google Cloud Servers DreamHost DreamHost Log Hosting