Stefan Schmerler - Softwaretest in der Praxis

Здесь есть возможность читать онлайн «Stefan Schmerler - Softwaretest in der Praxis» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: unrecognised, на немецком языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Softwaretest in der Praxis: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Softwaretest in der Praxis»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Dieses Buch ist als praktische Hilfestellung für all jene gedacht, die sich als Entwickler, Manager oder Studierende mit der Fragestellung des effizien­ten Testens von Software auseinandersetzen. Anhand vieler konkreter Beispiele aus der Praxis und fast 400 Illustratio­nen wird leicht verständlich vermittelt, auf welche Weise Software heute getestet wird und welche Werkzeuge und Testsysteme dabei zum Einsatz kommen. Ein zentraler Punkt dieses Buchs ist die Testmethodik – das Wie macht die Musik! Bereits durch Beachtung einfacher Grundregeln bei der Testfallermittlung kann mit geringeren Aufwänden in kürzerer Zeit der Reifegrad von Software deutlich über das Maß gesteigert werden als dies beim unsystematische (und leider oft anzutreffenden) «Drauflos-Testen» der Fall wäre.
Konkret adressiert das Buch folgende Fragestellungen: Welche Testtechnologie soll eingesetzt werden für mein spezifisches Problem?
Wie lange und mit welchem Aufwand sollte ich testen, um guten Gewissens (was auch immer das beim Testen heißen mag) die Testphase abbrechen zu können? Wie hoch ist das dann noch verbleibende Risiko, wie fehleranfällig ist mein System dann noch? Gibt es eine Metrik für Reifegrad und Qualität von Software, die einfach und schnell anzuwenden ist?
Für die häufigsten Testprobleme werden Schritt-für-Schritt-Anleitungen hinsichtlich Testfallermittlung vorgeschlagen, um mit minimalem Aufwand die größtmögliche Absicherungstiefe zu erzielen. Der Leitfaden kann unmittelbar eingesetzt werden in fast jedem Softwareentwicklungsprojekt. Neben dem klassischen Softwaretest (dynamische und statische Test­verfahren, Test von Echtzeitsystemen, modellbasierter Test u.a.), werden wichtige Aspekte der Absicherung eingebetteter Software am Beispiel der Automobilelektronik detailliert erläutert, z. B. Hardware-, Software-, Mo­del- und Vehicle-in-the-Loop-Technologie, virtuelle Integration bis hin zum Test von Fahrerassistenzsystemen und der Software für Autonomes Fahren.

Softwaretest in der Praxis — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Softwaretest in der Praxis», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Testziel ist es, Auftraggebern Hilfestellung

bei der Software-Abnahme zu geben.

Der Abnahmetest adressiert die Kunden-/Auftraggeber-Situation bei der Entwicklung einer fremdbeauftragten Software. Ziel ist es, mithilfe von Tests des finalen Produkts einem Auftraggeber eine Entscheidungsgrundlage hinsichtlich Akzeptanz oder Ablehnung des Gewerks zu geben. Ein Abnahmetest aus Sicht des Kunden oder Benutzers wird deshalb auch als Akzeptanztest bezeichnet. Hierbei werden in der Regel häufige Anwendungsfälle abgeprüft, stichprobenartig auch Robustheitstests gegen typische Fehlersituationen oder Fehlbedienungen. Neben der funktionalen Absicherung werden bei Abnahmetests auch interne Qualitätsmerkmale wie die Einhaltung von Codierrichtlinien und Standards überprüft.

typische Arten des Abnahmetests

Typische Formen des Abnahmetests sind also ein Test auf vertragliche Akzeptanz, auf Benutzerakzeptanz (Benutzerabnahmetest) sowie ein Feldtest (Alpha- und Beta-Test).

Testbasis

Als Testbasis können alle Dokumente und Informationen dienen, die das Testobjekt aus Anwendersicht beschreiben. Dies können Anwender-/Systemanforderungen und Lastenhefte sein sowie Geschäftsprozesse und Risikoanalysen, aber auch einzuhaltende Gesetze und regulatorische Vorschriften. Bei letzterem spricht man von regulatorischem Abnahmetest.

Akzeptanztestfälle müssen

vom Kunden erstellt werden.

Es ist besonders wichtig, dass der Kunde die Akzeptanztestfälle selbst erstellt, sie zumindest aber einem intensiven Review unterzieht, denn der Softwarehersteller könnte die vertraglich vereinbarten Akzeptanzkriterien missverstanden haben.

nicht auf den Akzeptanztest

warten: Prototypen einsetzen!

Wenn allerdings beim Akzeptanztest gravierende Probleme zutage treten, ist es in Softwareprojekten für grundlegende Änderungen meistens zu spät. Aus diesem Grund ist es stark zu empfehlen, schon in frühen Projektphasen Prototypen von repräsentativ ausgewählten Vertretern der späteren Anwender begutachten zu lassen.

Abb 314 Steckbrief Abnahmetest in der klassischen SWEntwicklung 347 - фото 75

Abb. 3-14: Steckbrief Abnahmetest in der klassischen SW-Entwicklung

3.4.7 Produktionstest

Auch fehlerfreie Produzierbarkeit

und Inbetriebnahme sicherstellen

Beim Produktionstest geht es nicht mehr um die funktionale Korrektheit des Systems – diese wurde in den vorherigen Teststufen bereits nachgewiesen – sondern um den Nachweis der fehlerfreien Produzierbarkeit, also den Ausschluss von Produktionsfehlern des fertig entwickelten und abgesicherten Produkts. Hier gilt der Grundsatz, dass die beste Entwicklung vergebens ist, wenn das Produkt, aus welchen Gründen auch immer, nicht fehlerfrei und in ausreichender Qualität produziert werden kann. Für klassische Bürosoftware besitzt dieser Test keine Relevanz, bei eingebetteten oder mechatronischen Systemen ist das aber durchaus der Fall, denn auch eine Parametrierung und werksseitige Inbetriebnahme des fertigen Produkts kann durch softwareseitige Fehler verhindert werden.

Abb 315 Steckbrief Produktionstest Spezifika in der Automobiltechnik In der - фото 76

Abb. 3-15: Steckbrief Produktionstest

Spezifika in der Automobiltechnik

In der Automobiltechnik bedeutet dies in Bezug auf elektronische Steuergeräte neben grundlegenden Funktionstests auch die richtige Kontaktierung von Steuergeräten, Aktorik, Sensorik und Leitungssatz. Dies wird während der Produktion stichprobenhaft anhand spezifischer Prüfroutinen durch Produktionstests abgesichert. Der Produktionstest steht in der Regel unter besonderen Randbedingungen, da aufgrund des Serienproduktionsbetriebs nur wenig Zeit zur Verfügung steht, um auf aufgetretene Fehler zu reagieren.

3.4.8 Feldtest

Als produktionsnachgelagerte Teststufen sind Feldtest und Regressionstest zu nennen.

Alpha-Test inhouse,

Beta-Test im Feld

Beim Feldtest wird die Software in verschiedenen Betriebsumgebungen getestet. Auch bei noch so intensivem System- und Produkttest ist es einem Hersteller kaum möglich, alle oder auch nur einen Großteil der möglichen Produktivumgebungen beim Test zu berücksichtigen. Die Produktivumgebung bzw. Nutzungsart hat durchaus Einfluss auf das abzusichernde Systemverhalten und muss daher im Testprozess Berücksichtigung finden. Softwarehäuser versenden daher im Rahmen einer sogenannten Beta-Testphase Vorabversionen der Software an einen ausgewählten Kundenkreis, um solch einen Feldtest durchzuführen. Natürlich werden auch eigene Mitarbeiter für diese Absicherung herangezogen – in diesem Fall spricht man von Alpha-Test.

3.4.9 Regressionstest und nachgelagerte Teststufen

Unter einem Regressionstest ist die erneute Absicherung eines bereits getesteten Systems nach dessen Modifikation unter Nutzung bereits vorhandener Testfälle zu verstehen. Diese Änderungen können bei der Weiterentwicklung oder auch in der Wartungsphase, also nach Verkaufsstart, im normalen Lebenszyklus der Software auftreten.

Testziele des Regres­sionstests

Testziel ist der Nachweis, dass nach der Fehlerbeseitigung zum einen der Fehler auch tatsächlich behoben ist – man spricht hier von der Verifikation der Fehlerbehebung. Zum anderen ist zu prüfen, ob durch die Fehlerbeseitigung möglicherweise neue Defects in das SUT eingebracht wurden oder durch den jetzt beseitigten Fehler bislang maskierte Defects ihre Fehlerwirkung zu zeigen beginnen. Hält man sich vor Augen, dass erfahrungsgemäß 5 % Neufehler bei einer Fehlerabstellung eingebracht werden, erkennt man die Wichtigkeit des Regressionstests.

Regressionstests sind aufwendig und

werden aufgrund vermeintlicher Redun-

danz oft nicht stringent durchgeführt.

Im Auge zu behalten ist in der Praxis aber immer auch der Effizienzaspekt. Regressionstests sind teuer! Die Frage ist: Was muss aufgrund einer Änderung erneut getestet werden und was nicht? Schließlich wurde ja oftmals »nur eine Zeile Code geändert«. Die Realität ist: Viele Änderungen im Code haben das Potenzial zu Seiteneffekten. Selbst wenn kein neuer Fehler eingebracht und kein maskierter Defect freigelegt wurde, ändert sich das Systemverhalten (die Änderung hatte letztlich ja einen Grund) und das neue Verhalten könnte Probleme aufwerfen, die vorher noch nicht absehbar waren. In vielen Fällen ist also beim Regressionstest von einem vollständigen Testzyklus auszugehen – so bitter das ist. In der Praxis ist daher zu empfehlen, eine Reihe von Fehlern in einer gemeinsamen Bugfix-Release zu beheben, sodass der Regressionstestaufwand in einem besseren Verhältnis dazu steht. Wenn die Ressourcen für einen vollständigen Regressionstest tatsächlich nicht zur Verfügung stehen, sollten folgende Mindestregeln eingehalten werden:

▶Wiederholung aller Tests, die eine Fehlerwirkung gezeigt haben, deren Ursache der korrigierte Fehlerzustand war. Dies wird ohnehin für die Verifikation der Fehlerbeseitigung benötigt,

▶Test aller Komponenten, die korrigiert oder geändert wurden,

▶Test aller Komponenten, die neu eingefügt wurden.

auf was am ehesten verzichten?

Auf was kann man am ehesten verzichten? Es besteht die Möglichkeit, im Testplan folgende Einschränkungen vorzunehmen:

▶Wiederholung nur derjenigen Tests aus dem Testplan, die eine genügend hohe Priorität haben,

▶bei funktionalen Tests Verzicht auf gewisse Varianten, d. h. Sonderfälle der Software,

▶Einschränkung der Tests auf bestimmte Konfigurationen wie z. B. andere Sprachen,

▶Einschränkung der Tests auf bestimmte Teilsysteme oder Teststufen.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Softwaretest in der Praxis»

Представляем Вашему вниманию похожие книги на «Softwaretest in der Praxis» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Softwaretest in der Praxis»

Обсуждение, отзывы о книге «Softwaretest in der Praxis» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x