Description
Crusher is a new fast testing framework, it's opinionated and takes a low-code first approach. Create tests by browsing your website and adding assertion when needed.
An alternative to slow workflows built and unreliable & slow libraries (w high learning curve), gluing tools, repetitive script.
Built from group up as an all-in-tool โ with recorder, SDK, Infra + batteries built-i
Crusher alternatives and similar libraries
Based on the "Testing Frameworks" category.
Alternatively, view crusher alternatives based on common mentions on social networks and blogs.
-
Playwright
Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API. -
Cypress
Fast, easy and reliable testing for anything that runs in a browser. -
mocha
โ๏ธ simple, flexible, fun javascript test framework for node.js & the browser -
nightwatch
End-to-end testing framework written in Node.js and using the W3C Webdriver API -
WebdriverIO
Next-gen browser and mobile automation test framework for Node.js -
istanbul
Yet another JS code coverage tool that computes statement, line, function and branch coverage with module loader hooks to transparently add coverage when running tests. Supports all JS coverage use cases including unit tests, server side functional tests and browser tests. Built for scale. -
casperjs
Navigation scripting & testing utility for PhantomJS and SlimerJS. -
chai
BDD / TDD assertion framework for node.js and the browser that can be paired with any testing framework. -
zombie
Insanely fast, full-stack, headless browser testing using node.js -
expect.js
Minimalistic BDD-style assertions for Node.JS and the browser. -
proxyquire
๐ฎ Proxies nodejs require in order to allow overriding dependencies during testing. -
blanket
blanket.js is a simple code coverage library for javascript. Designed to be easy to install and use, for both browser and nodejs. -
halower/vue-tree
tree and multi-select component based on Vue.js 2.0 -
FrintJS
Modular JavaScript framework for building scalable and reactive applications -
totoro
A simple and stable cross-browser testing tool. ็ฎๅ็จณๅฎ็่ทจๆต่งๅจๆต่ฏๅทฅๅ ทใ -
autochecker
โป๏ธ Test your libraries in many different versions of NodeJS, Ruby, Java and many other languages -
Webix UI
Stable releases of Webix UI - JavaScript library for building mobile and desktop web apps -
JSCover
JSCover is a JavaScript Code Coverage Tool that measures line, branch and function coverage -
prop-sets
Generate and test every possible instance of a component in React -
yolpo
An environment to visualize JavaScript code execution in a browser -
Xeito
๐ค Xeito is a framework for building interactive web applications with Typescript and Tagged Template Literals. -
RESTful Node.js Starter with Prisma and Typescript
Simple node starter with TypeScript and Prisma -
MonsterJS
Simple but powerful progressive JavaScript framework based on web components. -
Vuex module generator
Vuex store module generator plugin for vue-cli 3 -
react testing library
Simple and complete React DOM testing utilities that encourage good testing practices.
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Crusher or a related project?
README
Fast all-in-one testing framework
Crusher is an all-in-one testing framework. It includes everything w.r.t to e2e testing, with low-code recorder, runner + batteries built-in.
It's an alternative to the "traditional" testing workflow, where you:
- Choose a testing library & runner (Jest, Cypress, Playwright, Puppeteer, etc.)
- Setup framework according to your needs
- Write stable tests that take hours
๐คฆ More annoying tasks during testing
- ๐ Find the right selectors that work.
- ๐ฅ Setup CI/CD to run tests
- ๐ฐ Start paying for every little thing ( or start building your own framework )
- Pay for cloud services to run tests on different browser
- Set up a reporting system to view test results - Cypress cloud
- Image comparison tool to compare visual changes - Percy
- ๐จ And don't forget to set up alerts for test failures - Slack/Discord/Emails - plus lot more things like test management, debug, updating breaking tests etc.
Crusher uses low-code approach and is built on top of playwright. Our primary focus is stability, speed, and better developer experience.
Crusher is in beta(v0.5). Join Crusher's discord and help us make it better ๐
Getting started
โ๏ธCreate your first test
npx crusher.dev
๐ Run test
npx crusher.dev test:run
You can run tests locally on your machine to debug. Run it on our cloud for faster execution.
Reference: Getting Started | What is Crusher
๐จ๐ฝโ๐ป Features
Crusher has a lot of features, some of the major ones are
- ๐จ๐ฝโ๐ป Test using low-code: Create tests using our customized recorder based on chromium
- ๐ Use code files: Better APIs and more control with playwright APIs
- ๐ All major browsers supported:
- ๐จ๐ฝโ๐ป Built for developers: Use modern javascript to write tests with simple workflow
- ๐ฅ Fast test execution
- โก Blazing Fast: Built on top of Playwright, Crusher delivers an amazing performance during execution
- ๐ผ Easy integration with your projects
- ๐ฆ Central reporting & dashboard: See how your app is doing overall anytime-anywhere
โฉ Use cases
- Test e2e user flows: Never compromise your user experience by testing important end-to-end user flows.
- Test UI of your project: Never let a UI change catch you off guard.
- Run tests locally: Test specific functionalities of your app easily with a single click.
- Test with every commit: Run tests on every commit and add checks on pull requests.
- Monitor production: Periodically run tests for your website and get notified if something goes wrong.
๐ก Philosophy
If you are involved in software development, you are no stranger to things breaking now and then. Sometimes it's because of a small typo/change, and sometimes because of reasons out of your control.
It seems like every time you are changing something, there is a chance of stuff breaking. The worst part is you're lost, and then someone reports the issue in prod.
Testing solves this, but it hasn't evolved. It's too complicated and sometimes hard. We're solving it by creating an integrated solution that simply works.
๐งฑ Deployment
Crusher cloud- Start using | Zero configuration setup (Recommended: Faster, cheaper and less hassle)
Self host: Deploy using Docker or Kubernetes. Docs
FAQs
- I don't have any prior experience, Can I use Crusher? Yes, we primarily designed Crusher to make testing easy. If you have used a browser before, you can use Crusher.
- Low-code ain't powerful, I believe code is more powerful:- Fair enough, we believe in both. We're also working on a code-first approach.
- Why use this over selenium, cypress, etc? With any library, you'll have to spend a lot of time setting up the testing framework for your project. With us, you can start testing right away. We're also built on top of playwright, which is a more stable and faster automation library.
- Why a new framework? Testing has not evolved. It can be quite frustrating to setup and maintain. With Crusher, we're trying to make it easy and fun.
- Is Crusher using Electron? Yes, we forked Electron to create our own chromium-based browser.
Contribute to Crusher
- Setup crusher locally Docs
- Found a bug? File an issue
- Wanna help. We love pull requests, too!
License
This repo is entirely MIT licensed, except the /src_ee directory (if applicable).
*Note that all licence references and agreements mentioned in the Crusher README section above
are relevant to that project's source code only.