问题内容:如果现在有两个函数,功能均是输入三个正整数,返回最小的数,看不见代码,只能根据前面的条件推断,那么你怎么测试,才能选择一个最好的函数呢? 我回答的是:1.是否能正确处理输入的三个正整数,如果输入其他类型参数是否有良好的提示。2.从时间维度上来看,速度快的优先选择。3.如果在运行时间上相同,那么就看内存,耗的内存最少,优先选择。
我在这里想问的是,还有没有其他测试用例我没有考虑清楚呢?
相同整数怎么返回?
函数可用的前提下,需要一定的数据集来批量验证,测试函数的边界值,异常值,处理速度,内存消耗等。汇总结果进行分析,根据实际场景需求选择合适的函数。
给我我也只能想到这些,可能会稍微多一个,就是问下函数的使用场景是什么,确认下自己对 "好" 的理解是否符合这个场景的需要。
1.首先确认下什么才是好函数,明确一下需求 2.从性能、安全、功能、易用性对函数进行测试,选出最适合的 3.如果指标各有所长,没有碾压优势,不好判断最好,让产品决定。 4.回答完后,看看用户反馈,假装测试后移。(哈哈,开玩笑,有些面试官很讨厌你问他)
1.功能是否都没问题,全面覆盖测试,首先肯定是选择功能最好的这个 即设计输入三个数字,返回最小数字的所有用例, aaa, aba,abb, abc, 0,正数,负数,小数之类的全部场景覆盖 2.功能都没问题,如果界面不一样,则考虑界面友好情况,即体验 3.性能,单个场景输入相同的参数,比较性能(耗时等各方面);可以再通过并发压测得出结果