Java:在编译时或应用程序执行时运行测试

时间:2015-08-14 13:42:40

标签: java unit-testing testing

首先,我不擅长测试。我有一个OSGI CRUD应用程序。我想为自动测试业务逻辑进行测试。我在这里看到两个选项:

  1. 在编译时运行测试 - 在某个maven阶段
  2. 将测试作为单独的包进行,并在启动应用程序后运行它。例如,如果我点击主菜单上的某处。
  3. 哪一个是正确的选择?或两者都可能?

    我提出这些问题的原因如下:

    1. 我从未见过选项2,但看过很多选项1.
    2. 选项2对我来说更好,因为业务逻辑包括使用数据库,索引系统和内存缓存,我不知道如何在编译期间检查它。

1 个答案:

答案 0 :(得分:1)

从技术上讲,选项1不是编译时测试。在编译代码之后,Maven在安装/部署bundle之前运行测试。

选项1用于单元测试。详细地说,在安装或部署任何捆绑包之前,需要确保代码的每个单元都按预期工作。

选项2用于功能测试。测试从调用或测试主网关或主要功能开始,将在内部调用多个模块。根据输入,一些单元可能会执行或不执行。此测试的主要重点是覆盖并确保功能的不同场景。

优秀的开发人员应该做到这两点。希望这可以帮助!!