人工测试
DevOps来说,即便自动化测试比人工测试带来的收益更大,人工测试依然是软件开发过程中的一个重要部分。即便没有别的原因,为了将测试自动化,我们至少也得手动执行一次测试来验证。
接受测试( Acceptance testing)尤其难以替代,即使有人尝试去这么做。即使对那些开发功能实现需求的人来说,软件需求规范简短并且难以理解。在这些情况下,有质量保证的人盯着是有价值并不可替代的。
让人工测试变简单的东西和让自动化的集成测试变简单的东西一样,所以这两种测试策略之间也存在协同效应。
为了让质量保证人员开心,你需要:
管理测试数据,主要是后端数据库的内容,这样当你重复运行测试时,才能得到相同的结果。
为了验证缺陷是否修复,需要尽快部署新代码。
看上去显而易见,但是实践起来会有些难度。也许你的数据库太大,无法复制到测试环境。也许它包含最终用户的数据,根据法律需要保护。在这些情况下,你需要在部署测试环境前辨识并清洗任何关于私人信息的数据。
每个企业都是不一样的,所以在这个领域很难给出除了KISS原则(Keep it simple,stupid)之外的普适的有用建议。