如何测试列表在单元测试中的排序
本文关键字:单元测试 排序 列表 何测试 测试 | 更新日期: 2023-09-27 18:19:34
我有一个需要测试的方法,它需要IEnumerable<T>
。要求此方法按特定顺序对此可枚举对象执行一组操作。
(为了简洁起见,我简化了函数。)
public void TestMe(IEnumerable<IObject> objects) {
foreach (var obj in objects.OrderBy(x => x.Priority)) {
DoSomethingWithObject(obj);
DoSomethingElseWithObject(obj);
}
}
private DoSomethingWithObject(IObject obj) { }
private DoSomethingElseWithObject(IObject obj) { }
当DoSomethingWithObject
和DoSomethingElseWithObject
是私有的时,我如何编写一个测试来确保操作以正确的顺序执行?
TestMe
的结果是什么?调用TestMe
时,调用者会看到什么?他为什么一开始就称这种方法为他想完成什么
这些都是您可能想要在单元测试中回答的问题。实现细节(如私有方法)无关紧要。重要的是外界如何看待你的方法。
如果您的方法更改了IObject
的某些状态,请测试这些更改是否为。就这么简单。