是否可以对私人课程进行单元测试?我有类似
的东西 public class ClassA: ClassB
{
private class ClassX: ClassY
{
public static int TestMethod(int numberA, int numberB)
{
return numberA + numberB
}
}
}
我想测试" TestMethod"但无法访问它。我尝试使用Class A和Class Y为私有ClassX创建新实例,但它不允许我访问" TestMethod"
答案 0 :(得分:2)
测试私人成员不是一个好习惯。它们应该使用公开的暴露成员进行测试。
但是,如果您使用的是MSTest,则可以使用accessors。
如果您正在使用其他测试框架,则可以使用reflection。
以上适用于.NET。我不知道如何在其他语言中实现相同(如果你要求java /其他语言)。
答案 1 :(得分:1)
在某个地方应该有一个公共方法来调用私有类中的方法。您应该对该方法进行单元测试。如果你无法通过公共接口访问私有方法,那么可能不需要私有方法开始。