# Awesome AVA [![Awesome](https://awesome.re/badge.svg)](https://awesome.re) [AVA](https://avajs.dev) > [AVA](https://avajs.dev) is a minimal & futuristic JavaScript test runner ## Contents - [Articles](#articles) - [Videos](#videos) - [Packages](#packages) - [Works with AVA](#works-with-ava) - [Tutorials](#tutorials) - [Miscellaneous](#miscellaneous) - [Support](#support) ## Articles - [Recipes](https://github.com/avajs/ava/tree/main/docs/recipes) - [Testing React Native apps with AVA](https://shift.infinite.red/testing-the-bejeezus-out-of-react-native-apps-with-ava-330f51f8f6c3) - [Getting Started with Create React App and AVA](https://semaphoreci.com/community/tutorials/getting-started-with-create-react-app-and-ava) - [Effortless unit testing with AVA](https://wecodetheweb.com/2016/04/19/effortless-unit-testing-with-ava/) ## Videos - [JavaScript Air episode with the AVA team](http://jsair.io/ava) - [Testing React components with AVA](https://www.youtube.com/watch?v=RxLW6-3dk5A) ## Packages - [eslint-plugin-ava](https://github.com/avajs/eslint-plugin-ava) - ESLint rules. - [ava-codemods](https://github.com/jamestalmage/ava-codemods) - Codemods that simplifies upgrading to newer versions. - [sublime-ava](https://github.com/avajs/sublime-ava) - Snippets for Sublime. - [atom-ava](https://github.com/avajs/atom-ava) - Snippets for Atom. - [vscode-ava](https://github.com/samverschueren/vscode-ava) - Snippets for Visual Studio Code. - [vim-ava-snippets](https://github.com/ahmedelgabri/vim-ava-snippets) - Snippets for Vim. - [redux-ava](https://github.com/sotojuan/redux-ava) - Test helpers for Redux. - [redux-test-recorder](https://github.com/conorhastings/redux-test-recorder) - Generate AVA tests for Redux reducers in a React app. - [gulp-ava](https://github.com/avajs/gulp-ava) - Run tests with Gulp. - [grunt-ava](https://github.com/avajs/grunt-ava) - Run tests with Grunt. - [fly-ava](https://github.com/pine/fly-ava) - Run tests with Fly. - [start-ava](https://github.com/start-runner/ava) - Run tests with Start. - [sigh-ava](https://github.com/unlight/sigh-ava) - Run tests with Sigh. - [eslint-ava-rule-tester](https://github.com/jfmengels/eslint-ava-rule-tester) - Test [ESLint](https://github.com/eslint/eslint) plugins with AVA. - [jscodeshift-ava-tester](https://github.com/jfmengels/jscodeshift-ava-tester) - Test [jscodeshift](https://github.com/facebook/jscodeshift) codemods with AVA. - [ava-preact-init](https://github.com/avajs/ava-preact-init) - Set up AVA for Preact. - [ava-fixture](https://github.com/unional/ava-fixture) - Run fixture/baseline tests. - [ava-fast-check](https://github.com/dubzzz/ava-fast-check) - Property based testing. - [ava-fixture-docker-db](https://github.com/cdaringe/ava-fixture-docker-db) - Add docker databases to your test contexts. - [ava-webcomponents](https://github.com/Wildhoney/ava-webcomponents) - Testing web components via Puppeteer. - [ava-tap-json](https://github.com/yovasx2/ava-tap-json) - JSON output with AVA compatibility. - [ava-typescript-worker](https://github.com/seamapi/ava-typescript-worker) - use TypeScript in shared workers - [ava-postgres](https://github.com/seamapi/ava-postgres) - get a fresh Postgres database for every test - [pava](https://github.com/TomerAberbach/pava) - Parameterized testing. ## Works with AVA - [Spectron](https://github.com/electron/spectron#with-ava) - Test Electron apps using AVA and ChromeDriver. - [Chūhai](https://github.com/Hypercubed/chuhai) - Run and verify benchmarks using AVA and benchmark.js. - [Leakage](https://github.com/andywer/leakage#usage-with-ava--tape) - Memory leak testing. - [pify](https://github.com/sindresorhus/pify) - Promisify callback-style functions for better testing. [(Example)](https://github.com/sindresorhus/registry-url/blob/eb1f0e01722208366c9199b96235fd043ec162ae/test.js#L6) - [p-event](https://github.com/sindresorhus/p-event) - Promisify an event. [(Example)](https://github.com/sindresorhus/gulp-debug/blob/4db5871594742a346d17aa9b34f43c87d4e54934/test.js#L42-L44) - [execa](https://github.com/sindresorhus/execa) - Test your CLI tools. [(Example)](https://github.com/sindresorhus/active-win-cli/blob/d01813762b304102d1fee147855481e9f38c8517/test.js#L5-L6) - [delay](https://github.com/sindresorhus/delay) - Add delays to your tests. [(Example)](https://github.com/sindresorhus/p-queue/blob/a3a5cadefc2b54269f4939bb34e8dc180c3bd800/test.js#L39) - [get-stream](https://github.com/sindresorhus/get-stream) - Test the output of streams. [(Example)](https://github.com/sindresorhus/ora/blob/4ceeedd51795bb88a8033229d198e70cd8a2aff7/test.js#L33-L35) - [create-test-server](https://github.com/lukechilds/create-test-server) - Creates a minimal Express server for testing. [(Example)](https://github.com/lukechilds/clone-response/blob/11f5870e4e1b039e2d9a8f1f72d45fd1b9706bf3/test/clone-response.js) ## Tutorials - [Testing a React & Redux Codebase](http://silvenon.com/testing-react-and-redux/) - A comprehensive series of tutorials about testing a React and Redux project using AVA. ## Miscellaneous - [Stickers, t-shirts, etc](https://www.redbubble.com/people/sindresorhus/works/30330590-ava-logo) - The products are sold at production price without any markup. - [Slides from AVA talk at London Node User Group](https://speakerdeck.com/novemberborn/ava-at-lnug) - By core team member [Mark Wubben](https://github.com/novemberborn). ## Support - [Github Discussions](https://github.com/avajs/ava/discussions) - [Stack Overflow](https://stackoverflow.com/questions/tagged/ava) - [Twitter](https://twitter.com/ava__js) [ava.md Github](https://github.com/avajs/awesome-ava )