Engineering
Testing & Quality
281 people are learning this skill right now!
Software engineering quality reflects how well it helps users achieve their goals, as well as how maintainable, robust, available, and usable it is. There are a variety of software testing philosophies, including test-driven development (TDD) and production testing. There are also a variety of test types, including integration, functional, end-to-end, acceptance, performance, and smoke tests, most of which can be either manual or automated.
Learn Testing & Quality with the Practica AI Coach
The Practica AI Coach helps you improve in Testing & Quality by using your current work challenges as opportunities to improve. The AI Coach will ask you questions, instruct you on concepts and tactics, and give you feedback as you make progress.Intro to Testing & Quality
Testing and quality are critical components of software development, ensuring that products meet user needs and function properly.- The different types of software testingThe Atlassian team discusses different types of software testing, such as unit, integration, functional, end-to-end, acceptance, performance, and smoke tests, as well as when manual vs automated testing is appropriate.
- Testing in Production, the safe wayWhether or not you choose to test in production based on reading this, this article will give you a fundamental understanding of real-world testing constraints. It covers: • Why test in production when one can test in staging? • The Art of Testing in Production • The Three Phases of “Production”: Deploy, Release, Post-Release • Testing in Production during the Deploy Phase
Test-Driven Develoment
Test-driven development involves writing tests before writing code, allowing developers to catch bugs early and ensure code meets requirements.- TDD Changed My LifeEric shares how test-driven development has helped his teams reduce the number of critical bugs that are released to production, save development time, and write better code.
- The 4th step in TDDShani shares a tip for splitting the second step of TDD, making tests pass, into two steps: making the new test pass, and making all previous tests pass.
- 5 Questions Every Unit Test Must AnswerEric reviews why developers should bother with test discipline and how to write a good unit test by asking the questions: What are you testing? What should it do? What is the actual output? What is the expected output? How can the test be reproduced?
Automated Testing
Automated testing can Speed up the testing process and improve accuracy, but requires careful planning and maintenance.- Learning To Love Automated TestingDan shares real world examples of automated tests that helped with finding fundamental design issues, discovering a broken dependency, and preventing functional problems.
Bug Policies
Bug policies define how bugs are identified, prioritized, and fixed, and should be tailored to the needs of each project.Allocating Time to Quality
Allocating sufficient time for testing and Quality Assurance is essential for producing high-quality software, and should be factored into project planning and management.- Figma Quality Week: Inside our bug bashing partyShortly after Jason joined Figma, the whole company paused their projects for a major spring cleaning of the product in the form of a quality week. Jason describes the process for executing it.