JSPM

  • Created
  • Published
  • 0
  • Score
    100M100P100Q38874F
  • License SEE LICENSE IN License agreement ActorJs.pdf

Trigger, mock, and intercept anything - ActorJs is a tool for end-to-end testing that you run in a browser.

Package Exports

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@abstraktor/actorjs) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    ActorJs

    ActorJs is a tool for end-to-end testing that you run in a browser.

    Trigger, mock, and intercept anything.

    ActorJs simulates all processes and services surrounding a System Under Test, allowing you to isolate a System Under Test in a very efficient way, no matter how many surrounding systems or protocols the System Under Test needs to use. You create Actors (very small simulators) that use stacks for communication.

    Prerequisites

    Nodejs – 20.x.x or later Git – 2.26.0 or later

    Install ActorJs

    npm install @abstraktor/actorjs

    Update ActorJs

    npm update

    Build ActorJs Server

    aj release

    If you make changes to files, but ActorJs has not been started, or if you pull updates from your local repos, you must build the server again using aj release. Otherwise, just use aj to start ActorJs.

    Linux & Mac: To use the command aj, an alias is needed for the actorjs.sh file in the installation folder. During installation, aliases are added to .bashrc (Linux and Mac) and .zshrc (Mac). If you use another shell, you have to add the alias yourself. The first time you install ActorJs, you need to restart the terminal or source the file containing the alias, for instance:

    source ~/.bashrc

    Start ActorJs Client

    Open a browser with the url http://localhost:9005

    Beta Testers

    We are looking for beta testers! To apply, send an e-mail to: betatester@actorjs.com

    Documentation

    Youtube

    Further reading in the ActorJs tool

    The ActorJs documentation can be found in the tool. To access it, click the following links when the tool is running.

    Example code

    HTTP - server

    *run() {
      this.httpConnection.send(new HttpMsgGetRequest(this.requistUri));
        
      const response = this.httpConnection.receive();
      VERIFY_VALUE(HttpApi.StatusCode.OK, response.statusCode, ' HTTP response line status code:');
      VERIFY_CONTENT_OPTIONAL('content-name', response.getHeaderNumber(HttpApi.Header.CONTENT_LENGTH), response.getBody());
    }

    Websocket - client

    *run() {
      this.httpConnection.send(new HttpGetUpgradeRequest(this.requistUri, this.wsProtocol));
     
      const response = this.httpConnection.receive();
      this.websocketConnection = this.switchProtocol('websocket', this.httpConnection);
        
      this.websocketConnection.send(new WebsocketStackApi.TextFrame(this.wsText, this.wsMask));
        
      this.websocketConnection.send(new WebsocketStackApi.CloseFrame());
    }

    Puppeteer - client

    *run() {
      const page = this.puppeteerConnection.page;
      yield page.click('.w-button');
    }

    Socket - server

    *run() {
      this.socketConnection.accept();
      const request = this.socketConnection.receiveLine();
      VERIFY_VALUE('Hello World!', request)
    }