2013-09-25 47 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文件和所有依賴項的列表。 希望這可以幫助別人。