2

ParameterResolver によって提供されるパラメーターを拡張機能に挿入 (または取得) することは可能ですか?

次の例では Spring と RestAssured を使用していますが、より一般的な解決策を探しています。

テストクラスでは、次のことができます。

@BeforeEach
void setUpRestAssured(@LocalServerPort int port) {
    RestAssured.port = port;
}

これを拡張機能に入れたい場合は、次を実装しBeforeEachCallbackます。

public class RestAssuredExtension implements BeforeEachCallback {
    @Override
    public void beforeEach(ExtensionContext context) throws Exception {
        int port = ???
    }
}

アノテーションを使用してフィールドを作成し、@LocalServerPortAnnotationSupport を使用して取得できることは承知していますが、それは Spring 拡張機能がそれを挿入するためにのみ機能します。パラメータリゾルバーを使用して他の拡張機能と連携する、より一般的なアプローチを探しています。

4

1 に答える 1