Liking cljdoc? Tell your friends :D

etaoin.api

A wrapper over the W3C WebDriver Specification to automate popular browsers.

Tries to normalize differences across the various implementations.

See the User Guide for details and examples.

This is a rich API:

WebDriver

WebDriver Lower Level Comms

Driver Sessions

Querying/Selecting DOM Elements

Browser Navigation

Mouse/Pointer

Inputs/Forms

Cookies

Alerts

Scrolling

Scripting

Browser Windows

Frames

Page Info

Screenshots

Print to PDF

Browser Info

Waiting

Browser Timeouts

WebDriver Actions

Convenience

A wrapper over the [W3C WebDriver Specification](https://www.w3.org/TR/webdriver/) to automate popular browsers.

Tries to normalize differences across the various implementations.

See the [User Guide](/doc/01-user-guide.adoc) for details and examples.

This is a rich API:

**WebDriver**
- [[with-driver]] [[boot-driver]] [[defaults]] [[defaults-global]] [[when-not-drivers]]
- [[with-chrome]] [[with-chrome-headless]] [[chrome]] [[chrome-headless]] [[chrome?]] [[when-chrome]] [[when-not-chrome]]
- [[with-edge]] [[with-edge-headless]] [[edge]] [[edge-headless]] [[when-edge]] [[when-not-edge]]
- [[with-firefox]] [[with-firefox-headless]] [[firefox]] [[firefox-headless]] [[firefox?]] [[when-firefox]] [[when-not-firefox]]
- [[with-phantom]] [[phantom]] [[phantom?]] [[when-phantom]] [[when-not-phantom]]
- [[with-safari]] [[safari]] [[safari?]] [[when-safari]] [[when-not-safari]]
- [[driver?]] [[running?]] [[headless?]] [[when-headless]] [[when-not-headless]]
- [[disconnect-driver]] [[stop-driver]] [[quit]]

**WebDriver Lower Level Comms**
-  [[execute]] [[with-http-error]]

**Driver Sessions**
- [[get-status]] [[create-session]] [[delete-session]]

**Querying/Selecting DOM Elements**
- [[query]] [[query-all]] [[query-tree]]
- [[exists?]] [[absent?]]
- [[displayed?]] [[displayed-el?]] [[enabled?]] [[enabled-el?]] [[disabled?]] [[invisible?]] [[visible?]]
- [[child]] [[children]]
- [[get-element-tag]] [[get-element-tag-el]]
- [[get-element-attr]] [[get-element-attr-el]] [[get-element-attrs]]
- [[get-element-property]] [[get-element-property-el]] [[get-element-properties]]
- [[has-class?]] [[has-class-el?]] [[has-no-class?]]
- [[get-element-css]] [[get-element-css-el]] [[get-element-csss]]
- [[get-element-text]] [[get-element-text-el]] [[has-text?]]
- [[get-element-inner-html]] [[get-element-inner-html-el]]
- [[get-element-value]] [[get-element-value-el]]
- [[get-element-size]] [[get-element-size-el]] [[get-element-location]] [[get-element-location-el]] [[get-element-box]] [[intersects?]]
- [[use-css]] [[with-css]] [[use-xpath]] [[with-xpath]]

**Browser Navigation**
- [[go]] [[get-url]] [[get-hash]] [[set-hash]]
- [[back]] [[forward]]
- [[refresh]] [[reload]]

**Mouse/Pointer**
- [[click]] [[click-el]] [[click-single]] [[click-multi]]
- [[left-click]] [[left-click-on]]
- [[middle-click]] [[middle-click-on]]
- [[right-click]] [[right-click-on]]
- [[mouse-click]] [[mouse-move-to]] [[mouse-click-on]]
- [[double-click]] [[double-click-el]]
- [[drag-and-drop]] [[mouse-btn-down]] [[mouse-btn-up]]
- [[touch-down]] [[touch-move]] [[touch-tap]] [[touch-up]]

**Inputs/Forms**
- [[fill]] [[fill-active]] [[fill-el]] [[fill-multi]]
- [[fill-human]] [[fill-human-el]] [[fill-human-multi]]
- [[select]] [[selected?]] [[selected-el?]]
- [[upload-file]] [[remote-file]]
- [[disabled?]] [[enabled?]]
- [[clear]] [[clear-el]]
- [[submit]]

**Cookies**
- [[get-cookie]] [[get-cookies]]
- [[set-cookie]]
- [[delete-cookie]] [[delete-cookies]]

**Alerts**
- [[has-alert?]] [[has-no-alert?]]
- [[get-alert-text]]
- [[accept-alert]] [[dismiss-alert]]

**Scrolling**
- [[get-scroll]]
- [[scroll]] [[scroll-by]]
- [[scroll-bottom]] [[scroll-top]]
- [[scroll-down]] [[scroll-up]] [[scroll-left]] [[scroll-right]]
- [[scroll-offset]]
- [[scroll-query]]

**Scripting**
- [[js-execute]] [[js-async]] [[js-localstorage-clear]] [[el->ref]] [[add-script]]

**Browser Windows**
- [[get-window-handle]] [[get-window-handles]]
- [[get-window-position]] [[set-window-position]]
- [[get-window-size]] [[set-window-size]]
- [[maximize]]
- [[switch-window]] [[switch-window-next]]
- [[close-window]]

**Frames**
- [[switch-frame]] [[switch-frame-first]] [[switch-frame-parent]] [[switch-frame-top]] [[with-frame]]

**Page Info**
- [[get-source]] [[get-title]]

**Screenshots**
- [[screenshot]] [[screenshot-element]] [[with-screenshots]]

**Print to PDF**
- [[print-page]]

**Browser Info**
- [[supports-logs?]] [[get-log-types]] [[get-logs]]
- [[get-user-agent]]
- [[with-postmortem]]

**Waiting**
- [[doto-wait]] [[wait]] [[with-wait]]
- [[*wait-interval*]] [[*wait-timeout*]] [[with-wait-interval]] [[with-wait-timeout]]
- [[wait-exists]] [[wait-absent]]
- [[wait-visible]] [[wait-invisible]]
- [[wait-disabled]] [[wait-enabled]]
- [[wait-has-alert]]
- [[wait-has-class]]
- [[wait-has-text]] [[wait-has-text-everywhere]]
- [[wait-predicate]]
- [[wait-running]]

**Browser Timeouts**
- [[get-implicit-timeout]] [[set-implicit-timeout]]
- [[get-page-load-timeout]] [[set-page-load-timeout]]
- [[get-script-timeout]] [[set-script-timeout]] [[with-script-timeout]]

**WebDriver Actions**
- [[make-action-input]] [[make-key-input]] [[make-mouse-input]] [[make-pen-input]] [[make-pointer-input]] [[make-touch-input]]
- [[add-action]]
- [[add-double-pause]]
- [[add-key-down]] [[add-key-press]] [[add-key-up]] [[with-key-down]]
- [[add-pause]]
- [[add-pointer-click]] [[add-pointer-click-el]] [[add-pointer-double-click]] [[add-pointer-double-click-el]]
- [[add-pointer-down]] [[add-pointer-up]]
- [[with-pointer-btn-down]] [[with-pointer-left-btn-down]] [[with-mouse-btn]]
- [[add-pointer-move]] [[add-pointer-move-to-el]]
- [[add-pointer-cancel]]
- [[perform-actions]] [[release-actions]]

**Convenience**
- [[rand-uuid]] [[when-predicate]] [[when-not-predicate]]
raw docstring

etaoin.api2

Alternate syntax for etaoin.api with-<driver> calls.

Alternate syntax for [[etaoin.api]] with-<driver> calls.
raw docstring

etaoin.ide.flow

Selenium IDE flow control (if/else, for/while/repeat, etc).

Selenium IDE flow control (if/else, for/while/repeat, etc). 
raw docstring

etaoin.ide.main

Provide an CLI entry point for running IDE files. Example:

clojure -M -m etaoin.ide.main -d firefox -p '{:port 8888 :args ["--no-sandbox"]}' -f /path/to/script.side

See the User Guide for more info.

Provide an CLI entry point for running IDE files.
Example:

```shell
clojure -M -m etaoin.ide.main -d firefox -p '{:port 8888 :args ["--no-sandbox"]}' -f /path/to/script.side
```

See the [User Guide](/doc/01-user-guide.adoc#selenium-ide-cli) for more info.
raw docstring

etaoin.query

A module to deal with querying elements.

This feels like a internal namespace. Why do folks need to use this directly? Maybe they are extending defmulti with more conversions?

A module to deal with querying elements.

This feels like a internal namespace.
Why do folks need to use this directly?
Maybe they are extending defmulti with more conversions?
raw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close