当前哪两个运动坚持“测试驱动的软件开发”？
相比之下，一些新兴的软件学科，如极限编程和敏捷软件开发运动，坚持“测试驱动的软件开发”模式。在这个过程中，单元测试首先由软件工程师编写（通常使用极限编程方法中的成对编程）。当然，这些测试最初失败了；正如人们所期望的那样。然后在编写代码时，它会以增量方式传递测试套件的较大部分。当发现新的故障条件和拐角情况时，测试套件会不断更新，并与开发的任何回归测试集成。单元测试与其他软件源代码一起维护，并通常集成到构建过程中（固有的交互测试被降级为部分手动构建验收过程）。这个测试过程的最终目标是实现持续的集成，其中软件更新可以频繁地发布给公众。
极限编程和敏捷软件开发