0

したがって、私のアプリケーションはJSF 1.2で実行され、 Spring Beans IOCを使用して、Spring Context XML 構成に基づいてバッキング Bean にクラスを注入します。

私はテストにJSFUnitを使用しています。ページをナビゲートしてバッキング Bean の値をアサートすることはできますが、注入された Bean にはまだアクセスできません。

JSFUnit がホワイト ボックス テストを行うように宣伝されていることは知っていますが、これまでのところ、Arquilian で作成されたコンテナー内テストに似たものしか実行できませんでした。

Backing Bean に関連するページを開いた後、私が持っている (Spring によって注入された) ビジネス オブジェクトにアクセスするのを手伝ってくれる人はいますか? ありがとう !

4

1 に答える 1

0

答えが見つかりました。ページに移動したら、テストケースでこのメソッドを呼び出すことができます。これは、単にBean 名で Bean を返すだけです。

@SuppressWarnings("unchecked")
public static <T> T findBean(String beanName) {
    FacesContext context = FacesContext.getCurrentInstance();
    return (T) context.getApplication().evaluateExpressionGet(context, "#{"+beanName+"}", Object.class);
}

JSFUnit がさらに便利になりました。

于 2016-03-08T16:43:49.937 に答える