- Test-Driven Java Development(Second Edition)
- Alex Garcia Viktor Farcic
- 247字
- 2021-06-24 18:31:44
Better tests
No matter whether one is using black-box, white-box, or both types of testing, the order in which they are written is very important.
Requirements (specifications and user stories) are written before the code that implements them. They come first so they define the code, not the other way around. The same can be said for tests. If they are written after the code is done, in a certain way, that code (and the functionalities it implements) is defining tests. Tests that are defined by an already existing application are biased. They have a tendency to confirm what code does, and not to test whether a client's expectations are met, or that the code is behaving as expected. With manual testing, that is less the case since it is often done by a siloed QC department (even though it's often called QA). They tend to work on test definition in isolation from developers. That in itself leads to bigger problems caused by inevitably poor communication and the police syndrome, where testers are not trying to help the team to write applications with quality built in, but to find faults at the end of the process. The sooner we find problems, the cheaper it is to fix them.
Tests written in the TDD fashion (including its flavors such as ATDD and BDD) are an attempt to develop applications with quality built in from the very start. It's an attempt to avoid having problems in the first place.
- INSTANT Mock Testing with PowerMock
- Raspberry Pi for Python Programmers Cookbook(Second Edition)
- Testing with JUnit
- Python從小白到大牛
- Reactive Programming With Java 9
- 程序員修煉之道:通向務(wù)實(shí)的最高境界(第2版)
- Symfony2 Essentials
- R用戶Python學(xué)習(xí)指南:數(shù)據(jù)科學(xué)方法
- 寫給程序員的Python教程
- Illustrator CS6設(shè)計(jì)與應(yīng)用任務(wù)教程
- C編程技巧:117個(gè)問題解決方案示例
- Python Programming for Arduino
- Elasticsearch Blueprints
- Java EE項(xiàng)目應(yīng)用開發(fā)
- TypeScript全棧開發(fā)