簡體   English   中英

在GAE開發服務器上模擬?

[英]Mocking on the GAE development server?

我正在嘗試在開發GAE服務器上模擬HTTPServletRequest數據。 我正在運行Eclipse插件1.3.7

我試圖做到這一點:

package com.FOO.madservice.servlet.mock;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import static org.mockito.Mockito.*;

@SuppressWarnings("serial")
public class BAR2ServletMock extends HttpServlet {
    ...
    protected HttpServletRequest requestFilter(HttpServletRequest req) {
        HttpServletRequest servletRequest = spy(req);

        doReturn("gzip, deflate").when(servletRequest).getHeader("header-name-goes-here");
        doReturn("174.30.216.4").when(servletRequest).getRemoteAddr();

        return servletRequest;
    }
    ...
}

運行以下命令會產生異常:

java.lang.NoClassDefFoundError:sun.reflect.ReflectionFactory是一個受限類。 有關更多詳細信息,請參閱Google App Engine開發人員指南。

關於如何在GAE開發服務器上進行列表檢查或使用與GAE一起使用的其他模擬庫時禁用類的任何想法?

謝謝,馬克西姆。

我懷疑您能否在GAE上解決此問題。

GAE符合Java Servlet標准,因此您可以通過安裝標准的Java Servlet容器(例如Tomcat)來測試您的程序。

另外,根據“嘲笑”的定義,對象嘲笑是否不需要反思? GAE白名單是絕對強制執行的,您將無法繞開它。 要在應用程序引擎上進行部署,無法使用完整的反射API(但是支持某些類)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM