我有一个方法,按升序对数组进行排序,我想测试这个方法。我创建了两个单元测试,一个遍历所有元素并声明当前元素比下一个元素更少,另一个方法声明已排序的数组与我创建的另一个排序数组具有相同的元素。单元测试 - 排序数组
是否有任何其他方式来测试这种方法或这两个很好?
我使用Java
我有一个方法,按升序对数组进行排序,我想测试这个方法。我创建了两个单元测试,一个遍历所有元素并声明当前元素比下一个元素更少,另一个方法声明已排序的数组与我创建的另一个排序数组具有相同的元素。单元测试 - 排序数组
是否有任何其他方式来测试这种方法或这两个很好?
我使用Java
如果通过“排序阵列具有相同的元件”意味着数组排序有出现的每个元素的一些数字,那么这两个测试是足够的。 (如{ 1, 1, 2 }
这样的数组不应该是输入{2, 1, 2}
的有效结果。)表达它的另一种方式是结果应该是输入的排列。
您可能感兴趣或不感兴趣的第三个要求是算法是否为stable。在这种情况下,您应该添加一个测试,确保输入中的任何两个相等元素在输出中具有相同的相对顺序。
但是,如果我给一个空数组,那么如何测试排序方法呢? – FranXh 2012-02-11 22:10:25
您的测试应检查该方法是否引发合适的异常(例如IllegalArgumentException)或返回合适的值(例如null或空数组),以适合您的应用程序为准。 – DNA 2012-02-11 22:17:58