/selenium

Selenium/Webdriver client for Go

Primary LanguageGoMIT LicenseMIT

selenium - Selenium Client For Go

About

This is a Selenium client for Go. Currently it supports only the remote WebDriver client, so you'll need a selenium server running.

Installing

Run

go get bitbucket.org/tebeka/selenium

Docs

Docs are at godoc.org.

AppEngine

GetHTTPClient exposes the HTTP client used by the driver. You can access it to add the request context.

func myRequestHandler(w http.ResponseWriter, r *http.Request) {
    selenium.GetHTTPClient().Transport = &urlfetch.Transport{
        Context:  appengine.NewContext(r),
        Deadline: 30 * time.Second,
    }
    ...
}

Thanks to bthomson for this one.

Changes

See here.

TODO

  • Support Firefox profiles
  • Finish full Selenium API.
  • More testing
  • Selenium 1 client
  • Our own server for testing (getting out takes too much time)
  • SauceLabs integration

Hacking

  • You'll need a Selenium server to run the tests, run selenium.sh download to get it and selenium.sh start to run it.
  • Test with ./run-tests.sh.
  • I (Miki) work on dev branch since go get pull from default.

License

MIT