Straightedge is(will be) a application that will generate code that can be run by mocha to perform end to end tests.
the architecture of this application is segmented to two main blocks:
- the frontend(browser extension).
- the backend(code generator).
As per the architecture the browser extension listens to the events by hooking on to the DOM. As it collects the events' information they are stored onto a JSON object. This JSON object is sent to the backend of the application by using a HTTP request.
In the Backend the JSON of the event history is received and it is processed. Based on the event type and action the entries are classified into different code blocks. these code blocks are then used to generate the Scripts needed to process the test suite.
From The Application architecture we can infer that the application is broken into two main parts.
- the event sniffer, straightedge-fe, is a chrome extension and sample working of the extension is shown below. You can read more about the code base for straightedge-fe.
To read about the detailed explanation on the working and approach to building the extension read the Wiki.
- the code generator straightedge.
Installation guide for:
Usage instructions of straightedge.
- CI/CD build automation.
- TDD-esque development.
- switching to webpack.
- CDN deployments.
GNU General Public License v3.0 or later
See COPYING file to see the full text.