Skip to content

A Selenium Remote WebDriver which allows Selenium to drive/automate native apps. Written in Python

Notifications You must be signed in to change notification settings

sglebs/webdriver-python

Repository files navigation

webdriver-python

This is an experiment to implement a Selenium Remote WebDriver in Python, to enable a remote client in Selenium to drive native Desktop apps (say the Calculator).

Under MacOS we use the atomac library.

Install

  • git clone ; cd webdriver-python
  • virtualenv env
  • source ./env/bin/activate
Then, if MacOS, do this
  • xcode-select --install
  • pip install -U pyobjc-core
  • pip install -U pyobjc
Then, if Windows, do this
Then, do this (all platforms)

Install the remaining requirements:

  • pip install -r requirements.txt

Run

Webdriver Server

You should be able to see something like this: {"time": "2015-05-07T12:21:30.208824"} Now you can use this server as a Remote Web Driver for your apps.

Testing with FitNesse

Build first:

./gradlew installDist

then run a FitNesse server (with the webdriver already running, per steps above):

./build/install/webdriver-python/bin/webdriver-python -p 7070

then run a test from FitNesse: http://localhost:7070/WebDriver

You should see test results like this:

FitNesse - Calculator

Testing with RobotFramework

Install first:

pip install robotframework
pip install robotframework-selenium2library

then run (with the webdriver already running, per steps above):

robot Robot/multiply.robot 

You should see test results like this:

Robot - Calculator

Thank you!

Special thanks to Softplan for sponsoring this project/experiment. In particular, the people below:

About

A Selenium Remote WebDriver which allows Selenium to drive/automate native apps. Written in Python

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published