Ami*_*mit 1 java junit command-line-arguments
我有一个接受命令行参数的主类,并且我将此参数传递给另一个类。现在我必须使用参数测试 myClass。我有 JUnit 来测试它,但我想知道如何在测试中通过它
public class JsonFileTest {
public static void main(String[] fileNames) {
myClass class = new myClass(fileNames);
}
}
Run Code Online (Sandbox Code Playgroud)
我是 JUnit 的初学者,正在学习它,因此如果有任何指导,我将不胜感激。我需要将文件名传递给类方法。
对于初学者来说几个有用的要点:
在 Java 中你不能将你的对象命名为“类”。
建议遵循Java命名约定,因此类名应以大写字母开头。
现在,关于命令行参数。你的代码中有答案:
public static void main(String[] fileNames) {
Run Code Online (Sandbox Code Playgroud)
String[] fileNames- 是命令行参数的数组。
因此,要为您的方法提供一些参数,请使用您需要的参数对其进行初始化。
就像是:
@Test
public void testMainMethod(){
JsonFileTest.main(new String[]{"file1", "file2"});
}
Run Code Online (Sandbox Code Playgroud)
但在现实生活中,测试主要方法并不是一个好主意。它不返回任何内容,因此您只能创建一些测试来检查它是否抛出/不抛出某些异常。这个想法是测试整个逻辑。在此示例案例中,对象构造:
@Test
public void testConstructor(){
myClass class = new myClass(new String[]{"file1", "file2"});
/* Your assertions here */
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
20550 次 |
| 最近记录: |