Test Cloud Apps in Production. Confirm Quality & Eliminate Risk.

Construct automated quality check pipelines for your applications, microservices and other endpoints across deployments and environments.


Quick Start

assay-it is an open source command line utility. The utility is designed for testing of loosely coupled topologies such as serverless applications, microservices and other systems that rely on interfaces, protocols and its behaviors. It does the unit-like testing but in distributed environments.

The utility emphasizes continuous proofs of the quality as a key feature along the deployment pipelines to eliminate defects at earlier phases of the feature lifecycle. It impacts on engineering teams philosophy and commitments, ensuring that your microservice(s) are always in a release-ready state.

Easiest way to install the latest version of utility using brew but binary builds are also available at GitHub Releases.

brew tap assay-it/homebrew-tap
brew install -q assay-it

Test suites

assay-it checks the correctness of deployments using type safe and pure functional test specification of protocol endpoints. The command requires the suite development using Golang syntax implemented by ᵍ🆄🆁🅻 library but limited functionality is supported with Markdown documents.

Use the following example suite to test the utility either generate example test suites using assay-it testspec command or copy-paste source code to suite.go file.

assay-it testspec > suite.go
package suite

import (
  "github.com/fogfish/gurl/v2/http"
  ƒ "github.com/fogfish/gurl/v2/http/recv"
  ø "github.com/fogfish/gurl/v2/http/send"
)

func TestHttpBinGet() http.Arrow {
  return http.GET(
    ø.URI("http://httpbin.org/get"),

    ƒ.Status.OK,
    ƒ.ContentType.ApplicationJSON,
  )
}

Run

Run the the quality assessment with assay-it eval suite.go. The utility automatically downloads imported modules, compiles suites and outputs results into console.

assay-it eval suite.go

==> PASS: TestHttpBinGet (325.187959ms)
PASS	main