在 Java 中测试私有方法
如果您是测试人员,您可能会对给定代码执行许多测试操作。 但有时,如果您有一个包含私有方法的类,则无法访问执行测试操作。
私有方法是外部无法访问的方法,这意味着外部无法调用它。 它仅适用于类的内部元素。
它只会响应内部调用,但是有一个想法可以通过它快速测试私有方法。 本文将展示如何测试私有方法。
在Java中测试私有方法
假设我们有一个如下所示的类需要测试:
class MyClass {
private int Sum(int a, int b){ // method is private
return a+b;
}
}
我们可以看到,上面的代码有一个名为 Sum()
的私有方法。 让我们看看如果我们尝试使用另一个名为 Test 的类来测试该方法会发生什么。
public class Test {
public static void main(String[] args) {
// Created an object for the class "MyClass"
MyClass mc = new MyClass();
// Error: Called the private method externally
System.out.println("The result is: "+mc.Sum(4,5));
}
}
它将返回您并显示以下错误:
error: Sum(int,int) has private access in MyClass
由于 Sum()
是 MyClass 类中的私有方法,因此我们无法从外部访问它。 所以现在,检查它的唯一方法是在类 MyClass 中包含一个公共方法,该方法将调用 Sum()
方法。
公共方法将如下所示:
public int NewSum (int a, int b){
// A public method that can call the private method internally.
return Sum(a, b);
}
上面的方法将调用 MyClass 类内部的 Sum()
方法。 现在 MyClass 类的完整版本将如下所示:
class MyClass {
private int Sum(int a, int b){ // Private method
return a+b;
}
public int NewSum (int a, int b){ // Public method
return Sum(a, b);
}
}
更新 MyClass 后,您现在可以测试私有方法 Sum()
。 但是您需要从 MyClass 的对象中调用公共方法 NewSum()。
现在我们更新的测试类将如下所示:
class Test {
public static void main(String[] args) {
// Created an object for the class "MyClass"
MyClass mc = new MyClass();
// Called the public method "NewSum()"
System.out.println("The result is: "+mc.NewSum(4,5));
}
}
在上面的代码栅栏中,您可以看到我们从对象 MyClass 类中调用了类 NewSum()
。 如果 Sum()
方法没有任何错误或错误,它将显示以下输出:
The result is: 9
上面,我们分享了测试私有方法并查看其是否正常工作的最基本方法。
相关文章
用Java解析HTML
发布时间:2023/08/07 浏览次数:70 分类:Java
-
本文讨论如何解析 HTML 文件。 此外,我们将通过提供必要的示例和解释来讨论该主题,以使该主题更容易。Jsoup 在 Java 中的工作
Java Lang Runtime Java 中的 exec() 方法
发布时间:2023/08/07 浏览次数:85 分类:Java
-
本文介绍了 Java 的 Runtime.exec() 方法。Java Lang Runtime Java 中的 exec() 方法 Java Lang Runtime 类用于每个 Java 应用程序与类运行时实例和环境接口之间的交互。
控制 java.io.tmpdir 的环境变量
发布时间:2023/08/07 浏览次数:138 分类:Java
-
本文将介绍名为 java.io.tmpdir 的环境变量,它可用于调节 Java 的临时文件目录。Java虚拟机(JVM)可以生成临时文件并将它们存储在java.io.tmpdir系统参数指定的目录中。
Java 中的 Zulu
发布时间:2023/08/07 浏览次数:57 分类:Java
-
Zulu 是 Java 11 的一部分。它受到广泛的操作系统和硬件平台的支持。如何在 Java 中安装 Zulu 首先,从 Azul 的官方下载页面下载必要的 ZIP 或 TAR.GZ。
在 Java 中使用 Mockito 模拟静态方法
发布时间:2023/08/07 浏览次数:180 分类:Java
-
本文介绍了如何使用mockito来模拟Java中的静态方法。Java 中的模拟静态方法 在 Java 中执行单元测试时需要模拟静态方法。
JVM -XSS 选项
发布时间:2023/08/07 浏览次数:141 分类:Java
-
-Xss 标志主要用于更改 JVM 堆栈的大小。 让我们看一下下面的命令,通过这些命令我们可以更改 JVM 堆栈的大小。使用 -Xss 更改 JVM 堆栈的大小
Java - 在方法参数中使用 Nullable 注注解
发布时间:2023/08/07 浏览次数:181 分类:Java
-
本文简要讨论 @Nullable 注解,并通过代码示例演示其在方法参数中的使用。@Nullable 注解及其在方法参数中的使用 @Nullable 注释允许您创建可以返回 null 值的方法调用。
Java - 在方法参数中使用 NotNull 注解
发布时间:2023/08/07 浏览次数:148 分类:Java
-
本文将讨论 @NotNull 注解,并使用代码示例来演示我们如何在 Java 中工作时在方法参数中使用它。@NotNull 注解概述 如果你想设置变量或方法不返回任何空值,那么你可以使用 @NotNull 注解。