软件测试中测试算法的方法:一、普通功能测试会使用到的方法;二、普通功能测试中不会用到的测试方法。其中,普通功能测试会使用到的方法有1、算法稳定性测试;2、算法性能测试;3、算法兼容性测试。
一、普通功能测试会使用到的方法
1、算法稳定性测试
- 长时间运行,算法是否奔溃
- 数据量提升后,算法模型的结果是否符合预期
2、算法性能测试
- 算法模型的响应时间
- 算法模型对处理器cpu和磁盘的消耗
3、算法兼容性测试
设置不同阈值内的数据,算法结果是否稳定(比如用户年龄、区域、性别等)
二、普通功能测试中不会用到的测试方法
1、算法pk(赛马)
对于一个需求,不同的人或团队可以设计出不同的算法模型,到底哪个更靠谱,是骡子是马拉出来溜溜,pk一下就知道了。这个环节是算法测试的关键部分,用例设计主要采用场景法,通过列举不同场景,对多个算法分别进行测试验证,最终综合所有场景中的算法模型的表现,选出前几名。
2、A/B测试
由于算法的准确性会受到测试数据的影响,而在测试环境中,数据的来源一般是手动插入数据库或从线上导入数据。尽管测试数据会接近于真实数据,但仍会有数据类型覆盖不够全面、数据量不够大等方面的问题。因此,即使算法模型在测试环境通过验收,仍然不能在生产环境全部放量。
通常采用的方法是:拿出线上流量的5%-10%,其中一部分数据作为对照组,其它部分作为一个或多个实验组(实验组采用的算法为pk中胜出的前几名算法)。对照组合实验组数据分别打不同的标,一段时间后分别统计计算的各项指对照组合实验组的各项指标标,根据关键指标来验证算法是否有效。
延伸阅读
现阶段算法测试痛点
- 现阶段的测试主要还是基于业务层面,验证最终的数据结果是否满足业务需求,无法验证算法内部逻辑,算法的效果无法分析
- 对算法实现的不理解
- 对整个算法开发,如:算法的设计,建模,训练,测试均未加入其中
- 如何选择优异算法
文章标题:软件测试中如何测试算法,发布者:Z, ZLW,转载请注明出处:https://worktile.com/kb/p/34227