Clone this repo:

Branches

  1. 99f36c9 Update README.md by Federico Sogaro · 2 weeks ago master
  2. 6f14c44 Merge pull request #2 from wirepair/master by Federico Sogaro · 3 years, 6 months ago
  3. 4cabc8a fix FocusOnFrame and add FocusParentFrame by wirepair · 3 years, 7 months ago
  4. 5d331fd README markdown by Federico Sogaro · 5 years ago
  5. 0371efd readme updated by Federico Sogaro · 5 years ago

This project is not maintained and it is effectively abandoned, if you have interest in this code you should probably clone it.

webdriver

The package implements a WebDriver that communicate with a browser using the JSON Wire Protocol (See https://code.google.com/p/selenium/wiki/JsonWireProtocol). This is a pure go library and doesn't require a running Selenium driver. It currently supports Firefox (using the WebDriver extension) and Chrome (using the standalone server chromedriver). It should be fairly easy to add other browser that directly implement the wire protocol.

Version: 0.1
Tests are partial and have been run only on Linux (with firefox webdriver 2.32.0 and chromedriver 2.1).

Install:
$ go get github.com/fedesog/webdriver

Requires:

Example:

chromeDriver := webdriver.NewChromeDriver("/path/to/chromedriver")
err := chromeDriver.Start()
if err != nil {
	log.Println(err)
}
desired := webdriver.Capabilities{"Platform": "Linux"}
required := webdriver.Capabilities{}
session, err := chromeDriver.NewSession(desired, required)
if err != nil {
	log.Println(err)
}
err = session.Url("http://golang.org")
if err != nil {
	log.Println(err)
}
time.Sleep(10 * time.Second)
session.Delete()
chromeDriver.Stop()