- Scala Test-Driven Development
- Gaurav Sood
- 243字
- 2021-07-08 10:44:57
What is TDD?
TDD is the practice of writing your tests before writing any application code.
TDD is a practice that is most frequently and strongly advocated by Agile practitioners and theorists. It is one of the major pillars of the Agile methodology. There have been various studies over the years and many white papers published, which clearly state that the use of TDD has resulted in a more successful and robust application code.
TDD consists of the following iterative steps:

This process is also referred to as Red-Green-Refactor-Repeat.
TDD became more prevalent with the use of the Agile software development process, though it can be used as easily with any of the Agile development process's predecessors, such as Waterfall, Iterative, and so on.
At the height of the software revolution in the 1990s, it became evident that the draconian processes and practices developed mostly in the 1980s were slow, officious, likely to fail, and rigid. The Agile development process was created at the Snowbird ski resort in the Wasatch Mountains of Utah. Here, 17 industry thought-leaders met to discuss the problems of the development processes being used with the common goal of creating an adaptive development process that has people at its core rather than requirements. This resulted in the Agile manifesto:

Though TDD is not specifically mentioned in the Agile manifesto (http://agilemanifesto.org), it has become a standard methodology used with Agile. Saying this, you can still use Agile without using TDD.
- Learning Microsoft Windows Server 2012 Dynamic Access Control
- 大學(xué)計(jì)算機(jī)基礎(chǔ)(第二版)
- 從零開始:數(shù)字圖像處理的編程基礎(chǔ)與應(yīng)用
- 零基礎(chǔ)學(xué)Scratch少兒編程:小學(xué)課本中的Scratch創(chuàng)意編程
- TypeScript圖形渲染實(shí)戰(zhàn):基于WebGL的3D架構(gòu)與實(shí)現(xiàn)
- Web Application Development with MEAN
- MySQL數(shù)據(jù)庫管理與開發(fā)實(shí)踐教程 (清華電腦學(xué)堂)
- bbPress Complete
- 動(dòng)手打造深度學(xué)習(xí)框架
- Python從入門到精通(第3版)
- Anaconda數(shù)據(jù)科學(xué)實(shí)戰(zhàn)
- 百萬在線:大型游戲服務(wù)端開發(fā)
- PHP+MySQL Web應(yīng)用開發(fā)教程
- Clojure Data Structures and Algorithms Cookbook
- Blender 3D Cookbook