QA9 topics
Software testing and QA
Quality assurance is the practice of deciding what to check, running those checks often enough to be worth having, and knowing what changes when the thing under test stops giving the same answer twice. This section covers 9 topics in three groups: the types of testing everyone half-remembers, automation with Playwright, Cypress and Selenium, and testing products built on language models — where an assertion becomes a score rather than an equality.

What is inside
Each area below is a group of topics. Open one to read its pages.
- Types of TestingWhat each level actually proves, and which failures it can never catch.SmokeRegressionE2E
- AutomationRunning checks often enough to matter, and where each one belongs in the pipeline.PlaywrightCypressSelenium
- AI TestingWhen the output varies between runs, the assertion becomes a score against a threshold.Eval setsPrompt regression
Where to start
- Building a suite from nothingSmoke testing first. A small suite that proves the system is up beats a large one nobody trusts.
- Your E2E tests are flakyThe E2E page covers what belongs at that level and what should have been caught lower down.
- Testing an LLM featureStart with testing LLM products, then read LLMOps in Development — the two are the same problem from two sides.
Other sections
- DevelopmentSoftware development is the work of deciding where the boundaries in a system go, what runs on each side of them, and what moving one of those boundaries will cost once the code is live. This section covers 28 topics — architecture, the browser, five backend runtimes, four mobile platforms, language models and the databases underneath all of it. Every page turns on the constraint that actually separates the options, rather than on the API surface.
- InfrastructureInfrastructure is everything that turns code into something running that you can observe, change and roll back. This section covers 11 topics in four groups: DevOps and the pipeline that builds one artifact and promotes it unchanged, the three major clouds and how each contains a mistake, MLOps — the same problems again for a model instead of a binary — and the monitoring that makes an incident answerable at three in the morning.
Found this useful?
Share it with someone who is working on the same problem.