软件构造之测试
软件构造之测试优先编程
什么是测试优先编程
测试优先编程是一种软件开发方法,其核心思想是将测试放在开发的前沿,通过频繁测试和迭代来确保软件质量。在测试优先编程中,开发人员在写代码之前就考虑测试用例,先编写测试用例,然后编写代码使其通过测试用例,最后再进行重构和优化。
测试优先编程的好处
降低开发成本:通过频繁测试和迭代来确保软件质量,及早发现和解决问题。
提高软件质量:通过不断的测试和迭代保证软件质量。
提高开发效率:帮助开发人员更好地理解需求,减少后期修改,从而提升效率。
测试优先编程的步骤
确定用户需求:明确用户需求并编写测试用例。
编写代码:在编写代码之前,开发人员需要根据测试用例设计代码架构,并使用测试单元保证代码的正确性。
执行测试用例。
测试
Junit
Junit是java编程中最流行的测试框架,提供了自动化测试单元的执行和测试结果的验证。在使用Junit库时,可通过assert语句验证代码是否按照预期工作
黑盒测试
黑盒测试是从软件外部为着力点的测试,只考虑软件是否满足spec的需求。
等价类划分是测试中非常重要的点,合理的划分能够使测试尽可能地以小地测试代价测试出可能出现地问题,最理想地情况是笛卡尔积划分
白盒测试
白盒测试是从程序内部为着力点地测试,比如从每一条分支语句测试。
代码覆盖度测试:从难到易,从效果好到坏:路径覆盖>分支覆盖>语句覆盖
小结
黑盒测试主看结果,白盒测试主看过程