simflow
Simply define and run your flows in Chrome.
Install
npm i -g simflow
Usage
simflow <flows...> [options...]
Flows are defined in JSON config file.
Example
This example demonstrates a simple flow of searching GitHub project and take a sreenshot of search results.
-
Create
example-gh-simflow.json
: -
Run
search
flow fromexample-gh-simflow.json
config file:simflow search -c ./example-gh-simflow.json
Config
This is under heavy development and structure may changes.
Key | Type | Description |
---|---|---|
url |
string |
Required. Base URL. New page opens this URL. Defined path (i.e., Goto /path ) in steps section uses this base URL. |
references |
object |
List of references to be used in steps of a flow. |
flows |
objects |
Required. Flow names mapped to array of steps. Named flows are passed to simflow as args. |
Step
Step is a string with grammar defined in a PEG file lib/step.pegjs
.
Some example of steps:
// Use reference.
Click namedSelector
Click namedSelector@frameName
// Use literal string for selector.
Click '.header h1'@'frameName'
Type into namedSelector "hello world"
Press 'Enter'
// Step arguments.
Press 'Enter' { delay: 1000 }
Save screenshot as './screenshots/filename.png' { fullPage: true }
Save page as './pages/index.pdf' { output: 'pdf' }