2011-01-03 6 views
2

私のサーバー上で実行されているADFアプリケーションがあります。私はいくつかの統合テストケースを実行しようとしていました。私は、通常のWebアプリケーションでのテストを実行するためにapache cactus frameworkを使用しました。私のテストケースはCactusStrutsTestCaseを拡張して実行されます。 同じ考え方でADFアプリケーションにアプローチしようとしました。しかし、私は私の質問は、それがサボテンフレームワークの一部であるServletTestcaseとADFアプリケーションでテストを行うことが可能である、ということであるエラーOracle ADFアプリケーションの統合テストを実行する

java.net.ConnectException: Connection refused: connect 
    at java.net.PlainSocketImpl.socketConnect(Native Method) 
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) 
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) 

を、接続を拒否したばかりですか?何をやっている

おかげ Jijoy

答えて

0

が可能です。私はそれをやったので知っている。

まず、本物のApache Cactusを流してください。もうサポートされていません。 JSFUnitをダウンロードして代わりに使用したいとします。 Apache Cactusを利用していますが、まだ積極的に管理されています。

ServletTestCaseを直接使用するのではなく、ServletTestCaseを拡張する独自のテストケースを作成することをお勧めします。あなたのテストケースを実行するときに、cactus.contextURLパラメータを渡す必要があり、最後に

<filter> 
    <filter-name>JSFUnitFilter</filter-name> 
    <filter-class>org.jboss.jsfunit.framework.JSFUnitFilter</filter-class> 
    </filter> 
... 

    <filter-mapping> 
     <filter-name>JSFUnitFilter</filter-name> 
     <servlet-name>ServletTestRunner</servlet-name> 
     </filter-mapping> 
     <filter-mapping> 
     <filter-name>JSFUnitFilter</filter-name> 
     <servlet-name>ServletRedirector</servlet-name> 
     </filter-mapping> 

... 

    <servlet> 
    <servlet-name>ServletRedirector</servlet-name> 
    <servlet-class>org.jboss.jsfunit.framework.JSFUnitServletRedirector</servlet-class> 
    </servlet> 
    <servlet> 
    <servlet-name>ServletTestRunner</servlet-name> 
    <servlet-class>org.apache.cactus.server.runner.ServletTestRunner</servlet-class> 
    </servlet> 

... 

    <servlet-mapping> 
    <servlet-name>ServletRedirector</servlet-name> 
    <url-pattern>/ServletRedirector</url-pattern> 
    </servlet-mapping> 
    <servlet-mapping> 
    <servlet-name>ServletTestRunner</servlet-name> 
    <url-pattern>/ServletTestRunner</url-pattern> 
    </servlet-mapping> 

public class EJBTestCase extends ServletTestCase { 
protected InitialContext context; 

public static final String userId = "demouser"; 


public EJBTestCase(String string) { 
    super(string); 
} 

private InitialContext getInitialContext() throws NamingException { 
    Hashtable env = new Hashtable(); 

    env.put(Context.SECURITY_PRINCIPAL, "username"); 
    env.put(Context.SECURITY_CREDENTIALS, "password"); 


    return new InitialContext(env); 
} 

public void setUp() throws Exception { 
    super.setUp(); 

    context = getInitialContext(); 

} 

public void tearDown() throws Exception { 
    super.tearDown(); 

    context.close(); 
} 

public EJBTestCase() { 
    super(); 
} 
} 

次に、あなたはセットアップにweb.xmlファイルを必要としています。

-Dcactus.contextURL=http://127.0.0.1:7101/MyApp 

JDeveloperを使用していることを前提としています。 [プロジェクトのプロパティ]> [実行/デバッグ/プロファイル] - > [編集] - > [起動設定] - > [Javaオプション]の順に選択します。

関連する問題