2013-09-25 49 views
2

我正在使用Struts 2创建一个Web应用程序。我正在使用StrutsTestCase作为Junit测试用例来测试Action类。我使用struts2-core-2.3.4.jar导入了struts2-junit-plugin-2.3.4.jar。在测试用例方法中,当我尝试设置请求参数时,请求变量不可用。它显示编译错误。我正在'请求无法解析'错误。在我的测试课上,我将StrutsTestCase作为受保护的参数。但它在扩展方法中不可用。StrutsTestCase实现 - 编译错误

我的测试动作看起来是这样的:

import org.apache.struts2.StrutsTestCase; 

public class WallPlanningActionTest extends StrutsTestCase { 
    public void testList() { 
    request.setParameter("salesOrg",1); 
} 
+1

邮政堆栈跟踪。 –

+0

我没有得到任何异常,而我得到编译错误 – Jothi

+0

嗯..你的POM是什么? –

回答

1

你只能得到编译错误,如果StrutsTestCase,你的类扩展不org.apache.struts2.StrutsTestCase。您可以优化导入或仅使用FQCN。

public class WallPlanningActionTest extends org.apache.struts2.StrutsTestCase { 
0

对于未来的读者: 我有同样的问题 - 受保护的请求字段不可访问。问题是我没有添加弹簧库。 StrutsTestCase使用spring-core-x.y.z和spring-test-x.y.z。这是依赖于他们,我找不到一种方法来使用没有他们的单元测试。 通过打开struts-junit-plugin jar(作为压缩文件)可以找到其他依赖项。打开META-INF文件夹,在那里你会找到DEPENDENCIES文件和所有依赖项的列表。 希望这可以帮助别人。