一,黑盒称为功能测试,可以得到软件的实际使用效果报告。对软件的界面和功能进行测试,需要根据说明书,用户手册进行功能测试,要求多组数据,多次测试才能得到准确的报告。
白盒测试就是能打开这个黑盒子, 能够看到里面的东西,能够看到里面的代码
优缺点: 黑盒测试优点在于不需要了解软件内部的代码,仅仅从外部检验软件的功能,能够从用户角度出发判断用户能用到哪些功能,或者出现哪些bug,并且能够检验研发文档,检验研发的完成度。黑盒的功能测试能够为下一步的自动化测试打下基础。缺点就是 不涉及代码检测, 测试覆盖率比较低,并且黑盒测试中也存在大量的UI测试,图形化测试
白盒测试优点能够帮助软件研发人员增大代码检测的覆盖率,有助于代码的质量,也有助于自动化测试的实现,缺点:不可能测试所有的代码,检测大型系统成本比较高
二,软件开发模型:
①瀑布开发模型:一个线型的开发流程容易造成巨大的风险,过于依赖早期的调查, 不适于需求的变化,风险隐患只会在后期暴露,也不能回头。
②快速原型模型又称为原型模型,它是增量模型的另一种形式,它是在开发真实系统之前,构造一个原型,在该原型的基础上,逐渐完成整个系统的开发工作,根据用户需求,生成产品模型。
③螺旋模型,快速模型与瀑布模型合体,更适合大型系统的开发。开发时间更长,成本更大。
④敏捷开发,就是迭代+增量,以用户的需求进化为核心, 采用迭代,循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过检测,具备可视,可集成和可运行使用的特征。