Page 203 - 软件工程与项目管理
P. 203
第六章 项目计划与控制
试为企业提供了更便捷、更快速和更具弹性的测试环境。综上所述,虽然传统测
试方法依然存在一些问题,但随着自动化测试和云测试技术的发展和应用,以及
DevOps 和敏捷测试方法的应用,软件测试正在不断发展和改进,使得软件测试
变得更加高效和灵活。
软件安全性的现状可以用以下几点来概括:第一,安全事件频发:近年来,
关于软件安全事件的报道频繁,从简单的数据泄漏到严重的勒索软件攻击,不同
类型的软件安全事件时有发生,并对组织、公共服务和个人数据产生了严重影响。
第二,程序员需要更多关注安全性:许多安全性问题是由于程序编码不当而引起
的,因此,程序员需要更加关注安全性并在编码中采取适当的安全措施才能确保
软件的安全性。第三,安全性成为业务关注点:软件安全事件可能导致巨大的经
济损失和商业品牌价值损失,越来越多的企业将软件安全性作为业务关注点。第
四,法规和合规要求导致更加严格的安全要求:越来越多的国际标准、法规和合
规要求引导企业采取更加严格的安全要求,如 GDPR、HIPAA 等。第五,安全自
动化工具的使用:随着自动化测试和 DevOps 的发展,安全自动化工具的使用越
来越广泛,使得安全性测试更快、更准确和更全面。综上所述,软件安全性现状
的变化与软件应用案例数量和用户需求关系密切,安全自动化工具和法规要求的
逐渐严格等因素也有影响,未来,对软件安全性的重视程度将会不断提高。
(三)软件测试方法及差异
常见的软件测试方法分为手工测试和自动化测试,具体如下。
手工测试:第一,黑盒测试:只需要关注软件系统的功能和需求规格说明书,
忽略系统的内部细节和实现细节,来测试系统正常工作和异常情况下系统的反应。
第二,白盒测试:关注代码实现,通过测试具体的代码,来确认系统实现的是否
正确,能否产生正确的结果。通常需要程序编写经验和编程技能。
自动化测试:第一,单元测试:对软件中每一个模块进行测试,并确认模
块是否能够独立正确运行,通常是针对单个函数或模块的测试。第二,集成测试:
针对不同模块之间的交互和合作测试,以保证模块之间的协同工作,测试过程中
需要对整个软件系统进行综合测试验证。第三,端到端测试:对整个软件系统中
涉及的所有模块进行测试,从界面测试到底层算法验证等进行全面测试,在确保
整个系统正常工作的条件下进行全面的测试。
不同的测试方法在测试目的、测试阶段、测试内容、测试技术和测试效果
193
193

