A collection of publicly available resources on how software companies in the world test their software systems and build their quality culture.
One of the outcomes of the various Taqelah meetups was that many software companies got to share their testing and quality culture with the community. It was absolutely fantastic to see the amazing stuff companies are doing to test their software, and ensure quality of their products and platforms.
Apart from this, many companies regularly come forward and share their best practices, tools, techniques and culture of software testing on various public platforms like conferences, blogs & meetups. The resources are there but dispersed, lost into the internet.
There is no single knowledge repository that gives a direct look at these best practices, tools, techniques and culture of software testing these companies adopt. This repository intends to do that.
Happy Learning!
Please note, that all the resources mentioned here are publicly available resources.
Airbnb
- Testing at Airbnb
- Better Android Testing Part 1
- Better Android Testing Part 2
- Better Android Testing Part 3
- Better Android Testing Part 4
- Better Android Testing Part 5
- Better Android Testing Part 6
- Better Android Testing Part 7
- Building an effective test pipeline in a service oriented architecture
- Tracking the money scaling financial reporting
Amazon
- How does Amazon get by with so few hours spent by its QA teams relative to Microsoft?
- How Amazon handles a new software deployment every second
- How is software developed at Amazon
- Amazon's approach to automated testing
- Automated testing for Alexa
- Best practices for testing your Alexa skills
- Testing and Troubleshooting with AWS Device Farm
- Proactive security testing at AWS
- Advanced Continuous Delivery Best Practices at Amazon
- UI, Load and Performance testing at Amazon
- Best Practices for Benchmarking and Performance Analysis in the Cloud
- Large Scale Load Testing Amazon.com's Traffic on AWS
- Chaos Engineering on AWS
- Continuous Integration best practices for software development
Apple
ASOS
- Automated security testing using language you already know
- Behaviour driven automation testing in .NET Core using BDTest
- My Testing Safari
- Begin with the end in mind: one team’s journey towards Continuous Integration
- Gaining confidence in automated checks
- Witness the (Android) fitness
- How to test your React · Redux application
- How to write acceptance tests for a Facebook Messenger bot
- An introduction to Pact testing in .Net Core
- Finding balance as a Testing Specialist
- Continuous Testing in Customer Experience @ ASOS
- Responsive website testing with Sizzy
- Testing authorisation scenarios in ASP.NET Core Web APIs
Atlassian
- Meet the Atlassian QE team
- The Future of QA at Atlassian - Atlassian Summit 2016
- Quality at Speed, How JIRA Does QA
- Verifying Microservice Integrations with Contract Testing
- Agile Testing: It's about time - Atlassian Summit 2011
- Finding bugs before writing code - Sigge Birgisson
- Code Reviews vs. Pull Requests - Atlassian Summit 2016
- Mock Servers - Fake all the things! - Peggy Kuo
- Quality at Speed
- Improving Software Quality with Effective Feedback - Atlassian Summit 2012
Canva
Carousell
Dropbox
- Offensive testing to make Dropbox (and the world) a safer place
- Accelerating Iteration Velocity on Dropbox’s Desktop Client, Part 1
- Accelerating Iteration Velocity on Dropbox’s Desktop Client, Part 2
- Two years at Dropbox
- Creating a culter of accessibility
- Finding Kafka’s throughput limit in Dropbox infrastructure
- Athena: Our automated build health management system
- The Programmer Mindset: Main Debug Loop
eBay
- Tiered Test Automation
- Becoming a World-Class Tester
- Early Detection of Frontend Single Points of Failure
- eBay Motors: Screenshot Testing with Flutter
- Discovering Continuous Automation With Request Mirroring
- Failbot—Improving Visibility on End-to-end Tests
- Your Own Spring Test Context
- GUI Testing Powered by Deep Learning
- Integration Testing with React and Enzyme
- Introducing Regressr - An Open Source Command Line Tool to Regression Test HTTP Services
- eBay Releases Dynamic Application Security Testing Proxy as Open Source
- Scalable and Nimble Continuous Integration for Hadoop Projects
- Functional iOS Testing in Swift
- Next-generation BDD: From Automated Web Tests to Automated Web Acceptance Testing
- Validating Hadoop Platform Releases
- Finding Usability Bugs with Automated Tests
- 100% test coverage is not enough
- Lightning talk at Selenium Conf about their test automation framework Breeze
- Applied Testing Heuristics in the Context of eBay
- Test automation for Android testing
- Implementing Test Automation in Agile Projects with Open Source Tools
- Test Automation - 10 (sometimes painful) Lessons Learned
- Parallizing UI tests on iOS
- Bingsheng Ru — How to build Automation Test as a Service for large-scale e-commerce website
Expedia
- The Cost of 100% Reliability
- Getting started with a Dockerized Selenium Grid in your On-Prem Data Centers
- DA Kube — Selenium Grid using Kubernetes, Docker, Helm and Traefik
- Distributed Automation: How to run 1000 UI Automation Tests in 5mins
- Integration Testing in React
- How to Earn a Black Belt in GraphQL Testing
- How to: Emulate Amazon Simple Queue Service (SQS) for Testing Purposes
- Fixing Flaky Time Based Unit Tests
- Conversational Integration Tests for your Alexa Skills (Node/JS)
- Better Test Code Coverage Through Data
- Do you want to speed up your integration tests by 10x?
- Testing Elasticsearch Applications
- Open-sourcing Python Test Runner for multiple tests in parallel
- Predictive test selection: A more efficient way to ensure reliability of code changes
- MobileLab: Highly accurate testing to prevent mobile performance regressions
- Sapienz: Intelligent automated software testing at scale
- Preventing performance regressions with Health Compass and Incident Tracker
- Finding and fixing software bugs automatically with SapFix and Sapienz
- Open-sourcing Flipper: a new extensible debugging tool
- BrowserLab: Automated regression detection for the web
- Getafix: How Facebook tools learn to fix bugs automatically
- Stetho: A new debugging platform for Android
- Open-sourcing Facebook Infer: Identify bugs before you ship
- Building and testing at Facebook
- Watir to WebDriver: Unit Test Frameworks
- Rapid release at massive scale
- Finding inter-procedural bugs at scale with Infer static analyzer
- Zoncolan: How Facebook uses static analysis to detect and prevent security issues
- Systems @Scale 2019 - Continuous Deployment at Facebook Scale
- Mobile End to End Testing at Scale - SeleniumConf 2015
- Turning iOS End to End Testing up to 11 - Lawrence Lomax
- Readable. Stable. Maintainable. E2E Testing @ Facebook - Archit Pal Singh Sachdeva
- Automated Fault-Finding and Fixing at Facebook
- Damien Sereni, Testing and moving fast making Selenium work for Facebook
- Taqelah - Facebook Meetup - Raj Kamal - Shreya Bhat
- GTAC 2013 : Simon Stewart - How Facebook Tests Facebook on Android
- GTAC 2014: Never Send a Human to do a Machine’s Job: How Facebook uses bots to manage tests
- Facebook Infer: Advanced Static Analysis at Speed and Scale - Facebook - DevTools@Scale2017
- Building Mobile Apps with Open Source Tools - Simon Stewart - Mobile @ Scale
Flipkart
GitHub
GoJek
-
James Whittaker, Jason Arbon and Jeff Carolllo provide insights into testing at Google in their (slighlty outdated) 2012 book How Google Tests Software. There is a seven part summary on the Google Testing Blog as well:
Grab
Mercari
Microsoft
- How We Test Software at Microsoft by and Alan C. Page, Ken Johnston and BJ Rollison is a good starting point.
Mozilla
NASA
- Intelligent test automation gives orion spacecraft boos
- How did NASA make reliable software if they didn't invent unit tests?
- Software Development & Test
- Automated testing of nasa software
- NASA releases updated open source software bundle including testing tools
- Jon McBride Software Testing and Research (JSTAR)
Netflix
PayPal
Shopify
Soundcloud
Spotify
Stripe
Uber
Want to contribute? Just fork and raise a PR!
- Images in banner used from https://undraw.co/
- Idea inspired from the awesome lists.
Please refer to the code of conduct here.