Junit——命令行参数



我刚刚开始学习JUnit。我的代码如下:

public class MyClass {
  private void verify(args) {...}
  private void process(clientoptions) {...}
  public static void main(String[] args) {
    verify(args);
    //get client and do something
    .....
    // some more code here....
    ........
    // and then 
    process(clientoptions);
  }
}

如何在Junit中编写测试,然后发送不同的命令行参数。

谢谢

简单!

public class MyClassTest {
    @Test
    public void shouldVerifyParameters() {
        MyClass.main(new String[]{"param1", "param2"});
    }
}

但是,为了便于测试,考虑将MyClass重构为MyClassMainMyClass,其中前者只解析和验证命令行参数,并使用clientoptions调用后者。

这样你就不会违反单一职责原则,你可以在main之外使用业务逻辑,例如在servlet或移动设备上。也……

相关内容

  • 没有找到相关文章

最新更新