Knapsack Pro

Run your 1-hour test suite in 2 minutes with optimal parallelization. Starting at ~$0/hour.

Save engineers time with fast CI builds

Knapsack Pro wraps your current test runner(s) and works with your existing CI infrastructure to parallelize tests optimally:

  • Dynamically splits your tests based on up-to-date test execution data
  • Is designed from the ground up for CI and supports all of them
  • Tracks your CI builds to detect bottlenecks
  • Does not have access to your source code and collects minimal test data (with opt-in encryption)
  • Enables you to export historical metrics about your CI builds
  • Supports out-of-the-box any Ruby test runners, Cypress, Jest (and provides both SDK and API to integrate with any other language)
  • Replaces local dependencies like Redis with an API and runs your tests regardless of network problems

Without Knapsack Pro (static split)

With Knapsack Pro (saved 7 minutes per CI build)

Works with your current test runner(s)

Ruby (Ruby on Rails):

  • RSpec
  • Minitest
  • Cucumber
  • Test::Unit
  • Spinach
  • Turnip

JavaScript/TypeScript:

  • Cypress.io
  • Jest

Also, you can write your custom integration on top of the JavaScript SDK or using the Knapsack Pro API:

Works with your current CI server

Knapsack Pro is designed from the ground up for CI and supports all of them.

The following CI providers are autoconfigured, but any CI server can be set up using ENV variables:

  • Heroku CI
  • AppVeyor
  • Buildkite
  • CircleCI
  • Cirrus CI
  • CloudBees CodeShip
  • Codefresh
  • GitHub Actions
  • GitLab CI
  • Jenkins
  • Semaphore CI
  • Travis CI
Works with your current app

Knapsack Pro does not require you to adapt your application to parallelize tests optimally, even when you are using databases or other services.

If you can run your tests on one CI node, with Knapsack Pro, you can (almost) infinitely shorten your builds by adding more parallel CI nodes.

Split by test examples

Knapsack Pro can parallelize tests across CI nodes by example. This is useful when you have slow test files but don’t want to manually split test examples into smaller test files.

Supports spot CI nodes

Knapsack Pro gracefully handles preemptions when you use spot CI nodes like Google Cloud Preemptible VMs or Amazon EC2 Spot Instances: when you retry a node that was shut down the same tests are executed.

Retry only failed CI nodes

Knapsack Pro remembers what tests each CI node runs, so you can safely retry single nodes instead of re-running the entire suite.

Run tests regardless of network problems

In case of a network issue, Knapsack Pro will retry to connect with the API multiple times before switching to Fallback Mode, printing a warning, and splitting test files across CI nodes based on test file names.

Test analytics (and data export)

Knapsack Pro collects test timing data for each CI build, so you can easily review their performance and trends over time in the Knapsack Pro dashboard.

Also, you can export the data from the Knapsack Pro API.

Security
  • Knapsack Pro does not have access to your source code
  • Collects a minimal amount of data about your project
  • Optionally encrypts the data sent to the Knapsack Pro API
  • Uses HTTPS for all connections
Shareable across Heroku apps

The Knapsack Pro add-on is shareable across Heroku apps. This can be useful, for instance, when you have staging and production Heroku apps.

Region Availability

The available application locations for this add-on are shown below, and depend on whether the application is deployed to a Common Runtime region or Private Space. Learn More

  • Common Runtime
  • Private Spaces
Region Available
United States Available
Europe Available
Region Available Installable in Space
Dublin Available
Frankfurt Available
London Available
Montreal Available
Mumbai Available
Oregon Available
Singapore Available
Sydney Available
Tokyo Available
Virginia Available

Plans & Pricing

    • Max parallel nodes/jobs per CI build 2
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 3
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 6
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 10
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 20
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 30
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 40
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 50
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 60
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 70
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 80
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 90
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 100
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 150
    • Friendly customer support
    • Max parallel nodes/jobs per CI build 200
    • Friendly customer support
Install Knapsack Pro
heroku addons:create knapsack-pro

To provision, copy the snippet into your CLI or use the install button above.

Knapsack Pro Documentation

Other Terms & Conditions

https://knapsackpro.com/privacy_policy