Endlich: Softwaretesten wie es sein sollte
Visual Studio 2010 bricht die Silos zwischen Entwicklern und Testern auf – der konsequente Schritt zu reibungsloser Zusammenarbeit zwischen allen Beteiligten. Mit neuen Tools für das Testen, Testautomatisierung und Test Lab Management, die speziell für Softwaretester jeder Zertifizierungsstufe entwickelt wurden, integriert Microsoft Tester und Testprozesse vollständig in den Application Lifecycle und beschleunigt und verbessert dadurch sowohl Testen und Qualitätssicherung als auch die gesamte Softwareentwicklung.
Bewährte Vorgehensweisen für Softwarequalität
Qualitätssicherung (QS) und Testen haben zwei wesentliche Ziele: die gegenwärtige Qualität einer Applikation zu bestimmen und das insgesamte Qualitätsniveau der Software zu erhöhen. Visual Studio 2010 bietet für beide umfassende Unterstützung mithilfe von robusten Diagnose- und Testtools. Es fördert auch die Zusammenarbeit im Rahmen des Lebenszyklus Ihrer Applikation, indem es Integrationsbarrieren zwischen Teams beseitigt und damit größere Produktivität sicherstellt.
Unit Tests und Codequalität
Ob ein Entwickler Code zum Testen von APIs erstellt oder ein Tester Code zum Automatisieren von Regressionstests schreibt, beide müssen verstehen, wie das gesamte zu testende System funktioniert. Darüber hinaus werfen neu zum System hinzugefügte Codeabschnitte immer wieder Qualitätsfragen auf, die zu erhöhten Kosten führen können, wenn diese nicht vor der Übergabe an die Tester identifiziert werden. Code-basierte Tests sind eine bewährte Vorgehensweise in der Softwareentwicklung, um qualitativ minderwertigen Code vor der Testfreigabe zu beseitigen. Dies ist eine wichtige Maßnahme zur Erhöhung der Softwarequalität.
Weiterlesen: Unit Tests und Codequalität
Automatisierte Oberflächentests
Die Auswahl von Tests und die Testdurchführung sowie die Auswertung von Tests sind grundlegende Bestandteile der Arbeit eines Testteams. Manuelles Testen ist in der Regel aber sehr teuer, da es von qualifizierten Testern durchgeführt werden muss. Ausserdem können Sie bei vielen Code-Änderungen niemals alle davon betroffenen Module nachtesten. Dazu sind manuelle Tests häufig fehleranfällig bzw. es treten Gewöhnungseffekte auf und Fehler werden leicht übersehen.
Weiterlesen: Automatisierte Oberflächentests
Manuelle Tests
Es gibt zwei wichtige Zielstellungen im Bereich Qualitätssicherung und Test: Die Qualität der Anwendungen überprüfen und die Softwarequalität insgesamt sicherstellen. Allerdings ist der für die Tests erforderliche Arbeitsaufwand, bei dem bis zu 70 Prozent auf manuelle Arbeitsschritte entfallen, häufig aufgrund von Wiederholungen, unklaren Testpriorisierungen und menschlichem Versagen zu hoch. Derartige allgemeine Probleme können die Effektivität und Effizienz Ihrer Tests beinträchtigen.
Belastungs- und Stresstests
Schwache Anwendungsleistung verursacht jedes Jahr Einbußen in Millionenhöhe und schadet dem Ruf der betroffenen Unternehmen. Dementsprechend bleibt das Bereitstellen von Software mit zuverlässigen, konsistenten und leistungsgerechten Charakteristiken eine große Herausforderung. Interne Anwendungen mit schwacher Leistung sind ein zusätzlicher Kostenfaktor – sowohl in Bezug auf verlorene Produktivität als auch in Bezug auf Terminüberschreitungen. In vielen Fällen wird dabei aufgrund der anfallenden Kosten und Komplexität auf Belastungs- und Stresstests komplett verzichtet.
Weiterlesen: Belastungs- und Stresstests
Verwalten virtueller Testumgebungen
Virtuelle Testumgebungen müssen verwaltet werden, um sicherzustellen, dass für die Tests stets genügend virtuelle Computer in der erforderlichen Konfiguration zur Verfügung stehen. Dafür gibt es viele gute Gründe, z.B. geringere Hardwarekosten, konsistentere und zuverlässigere Testumgebungen und effizientere Bereitstellungen, doch galt die Implementierung derartiger Lösungen zum Verwalten virtueller Testumgebungen bisher als eine komplexe Herausforderung mit erheblichem Entwicklungs-, Qualitätssicherungs- und Wartungsaufwand. Visual Studio 2010 hebt diese Verwaltungsprozesse nun auf ein neues Niveau der Einfachheit und Zeitersparnis durch Unterstützung der Selbstverwaltung für virtuelle Testumgebungen.