Ich habe OWIN Web API App, die ich versuche, Integrationstest. Um dies zu tun, einen Server im Gedächtnis wie so ich schaffe:OWIN Integrationstest - HttpContext ist null
private TestServer _server;
[TestInitialize]
public void Intitialize()
{
_server = TestServer.Create<Startup>();
}
Integrationstest:
[TestMethod]
public async Task Test_Controller()
{
//Act
var response = await _server.HttpClient.GetAsync("/controller/test");
//Assert
Assert.AreEqual(HttpStatusCode.Ok, response.StatusCode);
}
In meinem Controller ich einige Informationen aus dem Httpcontext zugreifen bin versucht, das ist leider ist immer Null während des Integrationstests und löst daher eine Ausnahme aus.
Kann ich den httpcontext bei meinen Integrationstests trotzdem überspielen?
Ein Integrationstest, der den HTTP-Kontext verhöhnt, ist kein Integrationstest. Was versuchst du hier wirklich zu testen? –
U kann die API-Methoden eins nach dem anderen ohne den Server-Teil testen –
@tomredfern Da ich In-Memory-Tests mache, ist der HTTP-Kontext immer Null afaik. Das ist der Grund, warum ich irgendwie einen gefälschten httpcontext hineinbringen muss. – Kaladin