Freigeben über


Übersicht über ASP.NET-Komponententests

Aktualisiert: November 2007

Sie können ASP.NET-Komponententests verwenden, um Methoden zu testen, die Bestandteil von ASP.NET-Sites oder Projekten sind. Zum Beispiel können Sie die Methoden testen, die die Geschäftslogik eines ASP.NET-Projekts bilden.

Hinweis:

Wenn Sie Windows Vista ausführen, müssen Sie Visual Studio als Administrator ausführen, damit ASP.NET-Komponententests durchgeführt werden können. Wenn Sie Visual Studio als normaler Benutzer ausführen, können Sie zwar eine Website erstellen sowie ASP.NET-Tests erstellen und ausführen, die Tests schlagen jedoch fehl. Um Visual Studio als Administrator auszuführen, klicken Sie mit der rechten Maustaste auf Microsoft Visual Studio 2005 und klicken dann auf Als Administrator ausführen. Sobald Sie aufgefordert werden, fortzufahren oder den Prozess ausführen zu lassen, klicken Sie auf Weiter oder auf Zulassen. Wenn Sie aufgefordert werden, Anmeldeinformationen für einen Benutzer mit Administratorberechtigungen anzugeben, müssen diese Anmeldeinformationen angegeben werden, damit ASP.NET-Komponententests erfolgreich ausgeführt werden können. Weitere Informationen zur Sicherheit in Windows Vista finden Sie unter User Account Control Overview

Der Unterschied zwischen ASP.NET-Komponententests und anderen Komponententests besteht in dem Prozess, in dem die Tests ausgeführt werden. ASP.NET-Tests werden in der gleichen Umgebung ausgeführt, in der auch der Produktionscode ausgeführt wird. Sie können hierfür IIS oder ASP.NET Development Server auswählen. Wenn die Tests im Webserverprozess ausgeführt werden, haben Sie Zugriff auf die gesamte, diesem Prozess zugeordnete Umgebung, z. B. auf das Page-Objekt.

Sie haben zwei Möglichkeiten, einen ASP.NET-Komponententest zu erstellen: Sie können einen Test generieren oder einen bestehenden Test so konfigurieren, dass er als ASP.NET-Komponententest ausgeführt wird. Diese beiden Methoden werden unter Gewusst wie: Erstellen eines ASP.NET-Komponententests beschrieben.

Außerdem können Sie in einer Testlaufkonfiguration Einstellungen angeben, die für die von Ihnen ausgeführten Komponententests verwendet werden. Die Einstellungen werden nur verwendet, wenn die entsprechende Testlaufkonfiguration aktiv ist. Weitere Informationen finden Sie unter Gewusst wie: Erstellen eines ASP.NET-Komponententests.

Verwenden einer anderen Prozessidentität beim Ausführen von ASP.NET-Komponententests

Wenn Sie ASP.NET-Code testen, wird der Testcode entweder im IIS-Prozess oder in einem ASP.NET Development Server-Prozess ausgeführt. Wenn der ASP.NET-Komponententest im IIS-Prozess ausgeführt wird, können Sie den ASP.NET-Prozess aus Sicherheitsgründen als nicht-Standardbenutzer ausführen, d. h. mit einer anderen Prozessidentität.

Falls beispielsweise für die ASP.NET-Website Zugriff auf Computerressourcen wie Ordner, Dateien oder Datenbanken erforderlich ist, können Sie den Prozess so ausführen, dass die Berechtigungen für genau diese Ressourcen ausreichen.

Hinweis:

Die Standardidentität ist von der IIS-Version abhängig. In Windows Server 2003 ist die Standardidentität des ASP.NET-Prozesses (w3wp.exe) beispielsweise "NETWORK SERVICE".

In dieser Situation kann das Ausführen von Komponententests fehlschlagen. Beispielsweise kann der als nicht-Standardbenutzer ausgeführte ASP.NET-Prozess versuchen, temporäre Dateien im Verzeichnis %WINDIR%\Temp zu generieren, obwohl die Berechtigungen des Prozesses eingeschränkt sind. Dies schlägt fehl, wenn die Standardberechtigungen für %WINDIR%\Temp nicht zum Generieren dieser Dateien ausreichen. Damit in diesem Fall Komponententests erfolgreich ausgeführt werden können, müssen Sie dem Prozess umfassendere Berechtigungen für den Ordner %WINDIR%\Temp gewähren.

Das Ausführen von Komponententests kann auch fehlschlagen, wenn das Dienstkonto nicht über Zugriff auf den Stammordner der Bereitstellung verfügt. In diesem Fall wird von Visual Studio ein Dialogfeld mit einer Fehlerbeschreibung angezeigt. Klicken Sie auf OK, um fortzufahren.

Siehe auch

Aufgaben

Gewusst wie: Erstellen eines ASP.NET-Komponententests

Gewusst wie: Angeben einer Testlaufkonfiguration

Gewusst wie: Debuggen beim Ausführen eines Tests in einer ASP.NET-Projektmappe

Konzepte

Übersicht über die Testbereitstellung

ASP.NET-Komponententests und private Accessoren

Weitere Ressourcen

Erstellen von Komponententests