Selenium Test scripts and Utilities for Escher.jl
- Selenium Server Standalone
- Python binding for Selenium Remote Control
- Web Browser with a WebDriver implementation (defaults to Chromium)
- Julia packages: Escher, Compat, PyCall
for each $(JULIADIR)/example/<name>.jl
there should be an associated test_<name>.py
and test_<name>.jl
. Each contains several tests cases corresponding to the example.
runtests.jl
will start a server and run each test file indepently. You may run the python test with the command-line option --py,
As of now the Julia version uses PyCall, but Selenium bindings may be used in the near future
usage: runtests.jl [-x] [-y] [-s] [-d DRIVER] [-p PORT] [-h]
[files...]
This program runs Selenium tests on a list of Escher examples
positional arguments:
files list of files to run tests on, will look for
run_<filename>.jl in current dir for each test
(default:
ASCIIString["form","recursive-layout","layout2"])
optional arguments:
-x, --xvfb Run browser in a virtual framebuffer (Requires
XvfbWrapper.jl)
-y, --py Run python version of tests
-s, --serve Serve examples folder before running tests
-d, --driver DRIVER Driver (Browser) to use, case-sensitive
(default: "Chrome")
-p, --port PORT Port to run the HTTP server on (type: Int64,
default: 5555)
-h, --help show this help message and exit
- fix scope by putting tests into modules
- create Julia selenium bindings to WebDriver (low priority)
- inline-tests
- Travis-CI
- https://shashi.github.io/Escher.jl/reactive.html
- https://github.com/shashi/Patchwork.jl
- https://github.com/JuliaLang/Reactive.jl
- https://seleniumhq.github.io/selenium/docs/api/py/index.html
- https://selenium-python.readthedocs.org/en/latest/index.html
- https://github.com/SeleniumHQ/selenium/tree/master/py