/clj-webdriver

Clojure API for Selenium-WebDriver

Primary LanguageClojure

Clojure API for Selenium-WebDriver

This is a Clojure library for driving a web browser using Selenium-WebDriver.

You must add the Selenium-WebDriver JAR's you need explicitly in your project's dependencies. This library does not ship with runtime dependencies on any version of Selenium-WebDriver to allow compatibility with Selenium-WebDriver's upstream releases.

Please see the Wiki for prose documentation or generate API docs using lein doc inside this project.

Latest stable coordinates:

Clojars Project

clj-webdriver Resources

External Resources

Please join the Google group if you use this library. I regularly post announcements about upcoming releases, and although I ensure all tests are passing and try to maintain good test coverage before releases, user testing is invaluable. Thank you!

Contributing

The master branch of clj-webdriver houses code intended for the next minor-version release. If you want to propose new features for the next release, you're welcome to fork, make a topic branch and issue a pull request against the master branch.

If you want to fix a bug in the current release, please pull against the appropriate branch for the current minor version, 0.7.x.

Running Tests

To run the default suite:

lein test

To run the test suite for an existing hub/node setup:

./script/grid-hub start
./script/grid-node start
lein test :manual-setup

To run the test suite for Saucelabs, first visit the test app on Heroku to make sure it's "awake" and then run:

lein test :saucelabs

Release

There's a Ruby script at script/release. It was written using version 2.2.2, no promises that it works with any other.

./script/release --release-version 8.8.8 --new-version 9.0.0-SNAPSHOT

The --release-version can be -r and the --new-version can be -n. Further, the new version must end with -SNAPSHOT.

Acknowledgements

Credits to mikitebeka/webdriver-clj for the initial code for this project and many of the low-level wrappers around the Selenium-WebDriver API.

Many thanks to those who have contributed so far (in nick-alphabetical order):

See Github for an up-to-date list of contributors

Open Source Tools

I would like to thank the following companies for providing their tools free of charge to clj-webdriver developers as part of their contribution to the Open Source community.

JetBrains: Intellij IDEA

When I need to do Java, Scala, or even JRuby development, I rely on Intellij IDEA's excellent support for JVM languages. I would like to thank JetBrains for granting clj-webdriver developers a free license to Intellij IDEA Ultimate, now for two years running.

Intellij IDEA: Java IDE with advanced HTML/CSS/JS editor for hardcore web-developers

YourKit

YourKit is kindly supporting open source projects with its full-featured Java Profiler. YourKit, LLC is the creator of innovative and intelligent tools for profiling Java and .NET applications. Take a look at YourKit's leading software products: YourKit Java Profiler and YourKit .NET Profiler.

License

Clj-webdriver is distributed under the Eclipse Public License, the same as Clojure.