10

Gradle プラグインで STS を使用して Spring Boot アプリケーションを開発しています。Selenium テストでログインする必要がないように、テスト用に別の構成を使用しています。

だからsrc/test/java/etc私はこのようなものを持っています:

@Configuration
@EnableGlobalMethodSecurity(prePostEnabled = true)
@EnableWebSecurity
public static class SecurityConfig extends WebSecurityConfigurerAdapter
{
    @Override
    protected void configure(HttpSecurity http) throws Exception
    {   
        http.authorizeRequests().anyRequest().permitAll();
    }
}

一方、src/main/javaログインなどを構成する同等のクラスがあり、すべてのページでログインが必要です。

Gradle プラグイン (bootRun) を介してアプリケーションを実行すると、すべて正常に動作します。

ただし、Eclipse を介して直接実行またはデバッグすると (たとえば、プロジェクトを右クリックして [実行] -> [Spring Boot App] をクリックするか、Spring ビューまたは Java ビューで実行/デバッグ ボタンをクリックして)、テスト構成が適用されるため、アクセスします。ログインせずにすべてのページに付与されます。

この方法でアプリケーションを起動すると、テストクラスがクラスパスに含まれていると思います。これを防ぐ簡単な方法はありますか?

4

2 に答える 2