@knapsack-pro/core
Speed up your tests
Run your 1-hour test suite in 2 minutes with optimal parallelisation on your existing CI infrastructure
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
- Enables you to export historical metrics about your CI builds
- Replaces local dependencies like Redis with an API and runs your tests regardless of network problems
Installation
See the docs to get started:
Dependents
Contributing
Follow the steps in the root README.md to set up the project.
You can compile TypeScript in watch mode from the root folder with:
npm start -w packages/core
Publishing
-
cd packages/core
-
Sign in to the npm registry with:
npm adduser
-
Before releasing a new version of the package, please update CHANGELOG.md
with github_changelog_generator
:
gem install github_changelog_generator
github_changelog_generator --user KnapsackPro --project knapsack-pro-js --pr-wo-labels --issues-wo-labels --include-labels @knapsack-pro/core --since-tag @knapsack-pro/core@5.1.0 --exclude-tags-regex "@knapsack-pro\/(jest|cypress)@.*"
git commit -am "docs(core): update CHANGELOG.md"
git push origin main
-
If you have added new files to the repository, and they should be part of the released npm package, please ensure they are included in the files
array in package.json
.
-
Compile the project:
npm run build
-
In order to bump the version of the package run the command below. It will also create a version commit and tag for the release:
npm version patch --no-commit-hooks --tag-version-prefix=@knapsack-pro/core@
npm version minor --no-commit-hooks --tag-version-prefix=@knapsack-pro/core@
git commit -am @knapsack-pro/core@x.x.x
git tag @knapsack-pro/core@x.x.x
-
Push the commit and tag:
git push origin main --tags
-
When the git tag is on Github, you can update CHANGELOG.md
:
github_changelog_generator --user KnapsackPro --project knapsack-pro-js --pr-wo-labels --issues-wo-labels --include-labels @knapsack-pro/core --since-tag @knapsack-pro/core@5.1.0 --exclude-tags-regex "@knapsack-pro\/(jest|cypress)@.*"
git commit -am "docs(core): update CHANGELOG.md"
git push origin main
-
Publish the package to the npm registry:
npm publish
-
Update: