A pure Clojure implementation of the Webdriver protocol, named after Etaoin Shrdlu — a typing machine that came to life after a mysterious note was produced on it.
Use the Etaoin library to automate a browser, test your frontend behaviour, simulate human actions or whatever you want.
Benefits
-
Selenium-free: no big dependencies, no tons of downloaded jars, etc.
-
Lightweight, fast. Simple, easy to understand.
-
Compact: just one main namespace with a couple of helpers.
Capabilities
-
Currently supports Chrome, Firefox, Safari, and Edge.
-
Can either connect to a remote WebDriver process, or have Etaoin launch one for you.
-
Run your unit tests directly from Emacs by pressing
C-t tas usual. -
Can imitate human-like behaviour (delays, typos, etc).
Versioning
Eatoin uses: major.minor.patch-test-qualifier
-
majorincrements when a non alpha release API has been majorly broken - something, as a rule, we’d like to avoid. -
minorincrements to convey significant new features have been added or minor breakage. -
patchindicates bug fixes or minor changes - it is the total number of releases to date. -
test-qualifieris absent for stable releases. Can bealpha,beta,rc1, etc.
