Giter Club home page Giter Club logo

qualityfaster's Introduction

Build Status CircleCI

Quality, Faster.

The companion code repository for Xolv.io's "Quality Faster" knowledge base and guide.

The Tech Stack

The following tools and technologies are used in this repository:

Build & Test

  • Gulp.js for orchestration.
  • Mocha to test server-side Node.js code.
  • Karma to test client-side browser code.
  • Chimp.js to run acceptance and end-to-end tests.
  • Wallaby.js to run in-IDE unit tests in real time. (Optional but HIGHLY recommended)

Application

Installation

git clone https://github.com/xolvio/quality-faster.git
cd quality-faster
npm install

Usage

Development Mode

When you are developing, you want the fastest possible feedback to let you know if you've broken any tests. To do that, this code repository allows you to run client, server, acceptance and end-to-end tests at hyper speeds.

Option A: Paid (Recommended)

Wallaby.js provides you with real-time feedback in your IDE. This feature is completely inline with the "Quality Faster" ethos and therefore it is highly recommended. The tool saves you a lot of time which means money, and so it pays back for itself in no time.

You'll need to first install Wallaby.js for your IDE. You can find a list of supported IDEs here and instructions on how to install and run the plugin.

Once you've installed the plugin, you just need to create two run configurations for the client and server using the .wallaby-client.js and .wallaby-server.js files.

At the time of writing this, Wallaby only supports running one mode at a time, so you'll need to switch between the server and client modes as you work on the respective files.

In addition to running Wallaby.js server/client tests, you'll also need to run acceptance and end-to-end tests using Chimp's watch mode as follows:

npm run watch:domain
npm run watch:end-to-end

Option B: Free

You also have the option of using the watch modes we have provided using Gulp and Karma.

Start each commands below in a separate terminal window, and to make that sure you can see all of them with the IDE.

npm run watch:client-unit
npm run watch:server-unit
npm run watch:domain
npm run watch:end-to-end

You can also start all the modes in one terminal, but be warned that the terminal output can get noisy:

npm run watch

Build / CI Mode

Using the command below, you can run all the tests in the following sequence: client > server > e2e

npm test

And if you want to run single test modes individually, you can do so like this:

npm run test:client-unit
npm run test:server-unit
npm run test:domain
npm run test:end-to-end

qualityfaster's People

Contributors

samhatoum avatar

Watchers

James Cloos avatar Samuel Amoah avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.