public AuthControllerTests(
WebApplicationFactory factory,
AuthPgsqlContainerFixture authPgsqlContainerFixture,
MaterialsPgsqlContainerFixture materialsPgsqlContainerFixture
)
{
_authDbFixture = authPgsqlContainerFixture;
_materialsDbFixture = materialsPgsqlContainerFixture;
var customFactory = factory.WithWebHostBuilder(builder =>
{
builder.UseEnvironment("Development");
builder.ConfigureAppConfiguration((context, config) =>
{
var overrides = new Dictionary
{
{ "ConnectionStrings:AuthConnection", _authDbFixture.ConnectionString },
{ "ConnectionStrings:MaterialsConnection", _materialsDbFixture.ConnectionString }
};
//config.AddInMemoryCollection(overrides); // this did not work so I tried the below line, but that didn't work either
config = config.AddInMemoryCollection(overrides);
});
});
_client = customFactory.CreateClient();
}
< /code>
Приспособления от TestContainers. Я пытаюсь передать строки соединения из моих тестовых контейнеров для тестов.
В моей программе.var builder = WebApplication.CreateBuilder(args);
var connstring = builder.Configuration.GetConnectionString("AuthConnection");
Это все еще получает строки подключения от Appsettings.development.json , а не те, которые возвращаются из приспособлений. Что я делаю неправильно?
>
У меня есть этот код в моем интеграционном тесте: < /p> [code]public AuthControllerTests( WebApplicationFactory factory, AuthPgsqlContainerFixture authPgsqlContainerFixture, MaterialsPgsqlContainerFixture materialsPgsqlContainerFixture ) { _authDbFixture = authPgsqlContainerFixture; _materialsDbFixture = materialsPgsqlContainerFixture;
var customFactory = factory.WithWebHostBuilder(builder => { builder.UseEnvironment("Development");
builder.ConfigureAppConfiguration((context, config) => { var overrides = new Dictionary { { "ConnectionStrings:AuthConnection", _authDbFixture.ConnectionString }, { "ConnectionStrings:MaterialsConnection", _materialsDbFixture.ConnectionString } };
//config.AddInMemoryCollection(overrides); // this did not work so I tried the below line, but that didn't work either config = config.AddInMemoryCollection(overrides); }); });
_client = customFactory.CreateClient(); } < /code> Приспособления от TestContainers. Я пытаюсь передать строки соединения из моих тестовых контейнеров для тестов. В моей программе.var builder = WebApplication.CreateBuilder(args); var connstring = builder.Configuration.GetConnectionString("AuthConnection"); [/code] Это все еще получает строки подключения от Appsettings.development.json , а не те, которые возвращаются из приспособлений. Что я делаю неправильно? >
У меня есть этот код в моем интеграционном тесте:
public AuthControllerTests(
WebApplicationFactory factory,
AuthPgsqlContainerFixture authPgsqlContainerFixture,
MaterialsPgsqlContainerFixture materialsPgsqlContainerFixture
)
{
_authDbFixture =...
У меня есть этот код в моем интеграционном тесте:
public AuthControllerTests(
WebApplicationFactory factory,
AuthPgsqlContainerFixture authPgsqlContainerFixture,
MaterialsPgsqlContainerFixture materialsPgsqlContainerFixture
)
{
_authDbFixture =...
Чего я пытаюсь достичь:
Запустите интеграционный тест для контроллера пружины в тестовом контейнере, используйте TestJpaconfig вместо jpaconfig:
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@ActiveProfiles( test )...
Чего я пытаюсь достичь:
Запустите интеграционный тест для контроллера пружины в тестовом контейнере, используйте TestJpaconfig вместо jpaconfig:
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
@ActiveProfiles( test )...
Я пытаюсь провести чистые интеграционные тесты для ASP .NET WebApi.
Это фабричный класс веб-приложения.
Программный класс, который он использует в расширении, является внутренним из проекта API. (Выполнено с помощью InternalsVisibleTo )
internal...