Top Related Projects
A curated list of code katas
My own notes (drafts mostly) about software quality
Quick Overview
TheJambo/awesome-testing is a curated list of testing tools, resources, and related materials for software development. It serves as a comprehensive guide for developers and QA professionals, covering various aspects of testing including unit testing, integration testing, performance testing, and more.
Pros
- Extensive collection of testing resources in one place
- Well-organized into categories for easy navigation
- Regularly updated with new tools and resources
- Community-driven, allowing contributions from developers worldwide
Cons
- May be overwhelming for beginners due to the large number of resources
- Some listed tools or resources might become outdated over time
- Lacks detailed explanations or comparisons between different tools
- Primarily focuses on listing resources rather than providing in-depth tutorials
Note: As this is not a code library, the code example and quick start sections have been omitted as per the instructions.
Competitor Comparisons
A curated list of code katas
Pros of awesome-katas
- Focuses specifically on coding katas, providing a curated list of programming challenges
- Includes katas for multiple programming languages and paradigms
- Offers a variety of difficulty levels, suitable for beginners to advanced developers
Cons of awesome-katas
- Limited scope compared to awesome-testing, which covers a broader range of testing topics
- Lacks resources on testing methodologies, tools, and best practices
- May not be as frequently updated as awesome-testing
Code Comparison
awesome-katas example (FizzBuzz kata):
def fizzbuzz(n):
if n % 3 == 0 and n % 5 == 0:
return 'FizzBuzz'
elif n % 3 == 0:
return 'Fizz'
elif n % 5 == 0:
return 'Buzz'
else:
return str(n)
awesome-testing example (Jest test):
test('adds 1 + 2 to equal 3', () => {
expect(sum(1, 2)).toBe(3);
});
Summary
awesome-katas is a valuable resource for developers looking to improve their coding skills through practice exercises, while awesome-testing provides a comprehensive collection of testing-related resources. The choice between the two depends on whether you're focusing on coding practice or learning about software testing methodologies and tools.
My own notes (drafts mostly) about software quality
Pros of sqa-wiki
- More comprehensive coverage of software quality assurance topics
- Includes a wider range of resources, including books, courses, and tools
- Regularly updated with new content and contributions
Cons of sqa-wiki
- Less organized structure compared to awesome-testing
- May be overwhelming for beginners due to the sheer amount of information
- Some links may be outdated or no longer relevant
Code Comparison
sqa-wiki:
## Books
* [Software Testing: A Craftsman's Approach](https://www.amazon.com/Software-Testing-Craftsmans-Approach-Fourth/dp/1466560681)
* [Agile Testing: A Practical Guide for Testers and Agile Teams](https://www.amazon.com/Agile-Testing-Practical-Guide-Testers/dp/0321534468)
awesome-testing:
## Contents
- [Testing Frameworks](#testing-frameworks)
- [Visual Regression](#visual-regression)
- [Browser and Devices](#browser-and-devices)
The code comparison shows that sqa-wiki focuses on listing resources like books, while awesome-testing provides a more structured table of contents for different testing categories. This reflects the overall organization and focus of each repository.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
Awesome Testing
A curated list of testing software, extensions and resources
Foreword
This is intended to be a curation of resources for the new among the software testing community. It is not tailored to a specific area (Usability/Performance) or role (Automation/Management). The idea is that you could hand this list to a CS graduate and it would greatly improve their testing skills, efficiency and overall breadth of knowledge. Note that this is for all areas of software testing after the code in question is written (no unit tests/static analysis!).
Finally, I'm sure everyone who reads this list has one thing they want to add. Please read the How to Contribute page and add to the list. :)
Contents
- Software
- Books
- Training
- Blogs
- Newsletters
- Suggested Awesome Lists
- QA & Testing Road Map
- Others
- Contributing
- Code of Conduct
- License
Software
Security
- BeEF - Manipulate the browser exploiting any XSS vulns you find.
- OWASP ZAP - This intercepting proxy allows you to see all HTTP traffic and manipulate it in real time. Easy to scan, catalog and exploit security issues.
Make your life easier
- LambdaTest - An AI-powered unified enterprise test execution cloud platform that helps businesses drastically reduce time to market through faster test execution, ensuring quality releases and accelerated digital transformation
- GoodLooks - Visually validate Playwright tests using AI vision instead of flaky selectors.
- Octomind - auto-generated, run and maintained Playwright tests with AI-powered test case discovery.
- Courgette - Beautifully simple UI testing. Proper declarative BDD scenarios using Gherkin, Gherkin templates and composable YAML-style page and component objects.
- Ferrum - very simple and easy to get started with frontend/UI testing in small Ruby scripts, high-level API to control Chrome with the CDP - Chrome DevTools Protocol (NO Selenium dependency)
- BareTail - Brings the tail linux command to Windows, coloured lines and REGEX search and loads of other features.
- ProxySwitcher - We all have to mess with proxies, this makes it a lot easier when using Test/Prod/localhost proxies.
- Full Page Screenshot - For when PrintScreen isn't big enough.
- Form Filler - Large forms can be really irritating to fill out each time, speed it up with dummy data.
- Bug Magnet - Suggests values based on the field type.
- Check All - "Select All" is often not available. Why not bring your own?
- Xmind - The best (free) Mindmapping tool for documenting your tests.
- TestLink - Open Source test case management system
- Fluxguard - Screenshot pixel and DOM change comparisons and regressions.
- recheck-web - Open Source change comparison tool with local Golden Masters, git-like ignore syntax and "unbreakable selenium" tests.
- Kiwi TCMS - Open Source test case management system.
- Testomatio Modern TCMS allows sync of manual and automated tests in one place. Allure, TestRail, Xray alternative. FREE subscription forever is available.
- Captura - Open Source video recording tool.
- QA Wolf - Open Source Node.js library for creating browser tests 10x faster.
- Synth - Open Source test data generator.
- Requestly - A lightweight proxy as a browser extension & desktop app to intercept & modify network requests. You can Modify Headers, Redirect Url, Mock API response, Delay/Throttle requests, etc.
- Robot Framework - Generic open source automation framework. It can be used for testing and robotic process automation (RPA).
- wopee.io - Autonomous testing platform providing bot for autonomous visual regression testing.
- DeepfakeHTTP - DeepfakeHTTP is a web server that uses HTTP dumps as a source for responses. This tool allows you to test clients against REST, GraphQL, and other APIs.
- Keploy - API Testing Platform that automatically generates unit test cases along with dependency mocks(test data) from API calls.
- BugBug - Lightweight test automation tool for web applications. Easy to learn and doesn't require coding. It's free, with unlimited tests. For an additional monthly fee, you also get cloud monitoring and CI/CD integration.
- Touca - Open source continuous regression testing to compare the behavior and performance of software against a previous baseline version.
- test-each - Repeats tests using different inputs (Data-Driven Testing).
- Replayable - Desktop dashcam that helps you capture unexpected bugs during manual testing.
- RestQA - A REST API testing Framework based on ghekin to manage microservice local testing using the best in class Developer experience.
- playwright-bdd - A module for running Behaviour-Driven Development (BDD) tests with Playwright runner.
- Zato API Test - API testing in pure English. No programming needed. Implemented and extendable in Python.
- HttpMaster - Professional software tool for HTTP testing and debugging.
Web3 and Blockchain
- Dapp.tools - Command line tools and smart contract libraries for Ethereum smart contract development.
- Ganache - Personal Ethereum blockchain which you can use to run tests, execute commands, and inspect state while controlling how the chain operates.
- Foundry - Blazing fast, portable and modular toolkit for Ethereum application development written in Rust.
- Hardhat - Multichain Ethereum development environment.
- Robot Framework Solidity Testing Toolkit - This combines popular smart contract testing and deployment libraries with Robot Framework.
- Truffle Suite - Comprehensive suite of tools for smart contract development.
- Cannon - Continuous configuration automation & development cli multi-tool. Like Terraform, Docker and NPM for Ethereum.
Other
- Colour Blindness Simulator - Simulate all types of Colour Blindness instantly!
- Yslow - Analyse why web pages are slow based on Yahoo!'s rules for performance.
Books
- The Scrum Field Guide, Agile advice for your first year and beyond - Why you might want to move your company to Agile and great practical advice on how to do it.
- Fifty quick ideas to improve your Tests - Great illustrative examples on how to improve tests and why you should do them. Great as evidence for winning arguments!
- Agile Testing: A Practical Guide - A how to guide for those looking to transition to an Agile as a tester and also how the authors work on their Agile teams.
- Explore It!: Reduce Risk and Increase Confidence with Exploratory Testing - A very good book on structuring Exploratory Testing and designing tests.
- The Domain Testing Workbook - An in-depth look at the most common test technique, Domain Testing (also called Boundary Analysis and Equivalence Class partitioning) in use today with lots of examples to become better.
- Don't Make Me Think: A Common Sense Approach to Web Usability - An incredibly useful book for usability testing.
- Lessons Learned in Software Testing - One of the best books on Software Testing, broken into bite size lessons that are as applicable now as when it was published.
- UI is Communication - How to make intuitive User Interfaces (UI and Usability Testing).
- Thinking, Fast and Slow - About how we make decisions and how to run experiments (experiments == tests).
- Chaos Engineering: Crash test your applications - A book on how to design and execute controlled software failure experiments.
- Testing JavaScript Applications - A book about JavaScript testing tools and techniques for developers.
- Chaos Engineering - A book that teaches you to design and execute controlled experiments that uncover hidden problems.
- The Art of Unit Testing, Third Edition - A book that guides you step by step from your first simple unit tests to building complete test sets that are maintainable, readable, and trustworthy.
- Testing Web APIs - Guarantee the quality and consistency of your web APIs by implementing an automated testing process.
- Effective Software Testing - A hands-on guide for developers on how to create high quality tests in a systematic and effective way.
Training (Includes developer training for automation testers)
- Learn to Code - Another awesome list for developer training
- The Dojo - Courses and talks directly from the testing community.
- Guru99 - Learn by experience, a bit more fun than video training.
- Coursera - Online courses from top universities.
- Cybrary - Online free security training.
- BBST Testing Courses - The famous Black Box Software Testing (BBST) courses are university level courses on Software Test Foundations, Bug Reporting and Test Design. These materials have been creative commons licensed for use by anyone. Includes articles, slides and video lectures.
Blogs
Newsletters
- Coding Jag - Your weekly dose of the latest in Testing, Development, CI/CD, and Automationâkeeping you ahead of the curve."
- Software Testing Weekly - A curated round-up of the best software testing news and tools published every Friday.
Suggested Awesome Lists
Must Read
- Falsehoods - A funny and educational list of why nothing in Software Development is ever easy. Think you can store a marriage in a DB?
- Naughty Strings - This is the famous list of Naughty Strings. If you're doing some field validation, look no further for inspiration.
- Unicode - A great resource for learning how unicode works and the issues it can cause.
Useful References
- The Original - The awesome list of awesome lists.
- Learn to Code - Learning to code, for those looking to make the move to automation
- Application Security - Incredibly extensive, but you'll find something to fit the bill.
- Selenium - Better than searching Google if you know what you want.
- Security - This is mostly focused on Infrastructure, but if you're testing a series of systems, this is very useful.
- Awesome Software Quality - A list of free software testing and verification resources.
- Awesome Cucumber - A (relatively-newer) curated list of awesome Cucumber and Gherkin-related resources.
- Awesome JMeter - A curated collection of resources around Apache JMeter.
- How They Test - A curated collection of public resources from tech companies on how they test their software and build a quality culture
QA and Testing Road Map
- How to start QA and Testing career - A wide and rich list of strategies, topics, and skills that you need to start a career in software testing and automation.
Others
- Testers Rage Playlist - A collaborative playlist from testers for when the red mist descends.
- Software Testing Conferences - A list of software testing conferences and workshops.
- Software Testing Interview Tool - A very buggy To Do List to facilitate face to face interviews.
Contributing
See the Awesome Testing contribution guide for details on how to contribute.
Code of Conduct
See the Code of Conduct for details. Basically it comes down to:
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
License
To the extent possible under law, the contributors have waived all copyright and related or neighboring rights to this work. See the license file for details.
Top Related Projects
A curated list of code katas
My own notes (drafts mostly) about software quality
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot