Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Struts测试JUnit4_Java_Spring_Jakarta Ee_Junit_Struts2 - Fatal编程技术网

Java Struts测试JUnit4

Java Struts测试JUnit4,java,spring,jakarta-ee,junit,struts2,Java,Spring,Jakarta Ee,Junit,Struts2,我正在做的一个项目使用了Spring和Struts 到目前为止,我们使用的是Struts 2.1.8.1。我所有的单元测试都扩展了。但是,它使用JUnit3.8.2,因此不支持注释 对于Struts2.2.3,开发团队称为。然而,这个测试用例没有支持的功能,例如发布struts操作。我试图找到一些使用这个新测试用例的教程,但是运气不好 我应该提到,我正在尝试使用回滚注释来回滚测试期间发生的自动回滚数据库更改 我该如何使用这个新的呢?Struts2操作只不过是简单的类。我建议你像测试其他类一样测试

我正在做的一个项目使用了Spring和Struts

到目前为止,我们使用的是Struts 2.1.8.1。我所有的单元测试都扩展了。但是,它使用JUnit3.8.2,因此不支持注释

对于Struts2.2.3,开发团队称为。然而,这个测试用例没有支持的功能,例如发布struts操作。我试图找到一些使用这个新测试用例的教程,但是运气不好

我应该提到,我正在尝试使用回滚注释来回滚测试期间发生的自动回滚数据库更改


我该如何使用这个新的呢?

Struts2操作只不过是简单的类。我建议你像测试其他类一样测试它们。

我在做struts2的大部分时间都是这样做的,几乎没有必要使用
StrutsTestCase
。如果您在设计操作时考虑了DI,那么您可以在测试操作时注入任何依赖项。

至少以下一项在我的计算机中有效

public class BlaBlaBlaTestCase extends StrutsSpringTestCase {
    private final Logger log = Logger.getLogger(this.getClass());

    @Override
    public String getContextLocations() {
        return "applicationContext_test.xml";
    }

    @Test
    public void testWhatever() {
                //...
    }
}
getContextLocations方法很重要,因为该方法定义了用于测试的applicationContext的位置


哦,我正在使用JUnit4.4,我用这种方式编写了一些测试。问题是我正在尝试编写自动回滚的测试。在Junit4+中添加了回滚注释。我以前读过一篇文章,因为StrutsTestCase扩展了XWorkTestCase,它扩展了junit(3.x)TestCase基类。由于此原因,注释将不起作用。因此编写了StrutsJUnit4TestCase。哦,我从未使用过回滚注释><非常好,是的。如果我使用回滚注释,我的代码可能无法工作。如果您执行此注释,它仍然使用JUnit3。删除“testWhatever”之前的“test”,然后您将得到错误“no test methods”。