2 research outputs found

    Modellbasierte Generierung und Reduktion von Testsuiten fĂŒr Software-Produktlinien

    Get PDF
    Software-Produktlinienentwicklung ist ein Paradigma zur kostengĂŒnstigen Entwicklung vieler individueller aber sich Ă€hnelnder Softwareprodukte aus einer gemeinsamen Softwareplattform heraus. Beispielsweise umfasst im Automotive-Bereich eine Software-Produktlinie (SPL) fĂŒr ein Auto der Oberklasse typischerweise mehrere hunderttausend Softwaresystemvarianten. Um sicherzustellen, dass jede einzelne Produktvariante einer SPL in ihrer FunktionalitĂ€t der Spezifikation entspricht, kann Testen verwendet werden. Da separates Testen jeder einzelnen Produktvariante meistens zu aufwĂ€ndig ist, versuchen SPL-TestansĂ€tze die Gemeinsamkeiten der Produktvarianten beim Testen auszunutzen. So versuchen diese AnsĂ€tze geeignete Testartefakte wiederzuverwenden oder nur eine kleine reprĂ€sentative Menge von Produktvarianten stellvertretend fĂŒr die ganze SPL zu testen. Da Software-Produktlinienentwicklung erst seit einigen Jahren verstĂ€rkt eingesetzt wird, sind im SPL-Test noch einige praxisnahe Probleme ungelöst. Beispielsweise existiert bisher kein Testansatz, mit dem sich eine gewisse Abdeckung bezĂŒglich eines gewĂ€hlten Überdeckungskriteriums auf allen Produktvarianten einer SPL effizient erreichen lĂ€sst. In dieser Arbeit wird ein Black-Box-Testfallgenerierungsansatz fĂŒr Software-Produktlinien vorgestellt. Mit diesem Ansatz lassen sich fĂŒr alle Produktvarianten einer SPL eine Menge von TestfĂ€llen aus einer formalen Spezifikation (Testmodell), die mit VariabilitĂ€t angereichert wurde, effizient generieren. Diese Testfallmenge, im Folgenden als vollstĂ€ndige SPL-Testsuite bezeichnet, erreicht auf jeder Produktvariante der SPL eine vollstĂ€ndige Abdeckung bzgl. eines strukturellen Modell-Überdeckungskriteriums. Die Effizienz des Ansatzes beruht auf der Generierung von TestfĂ€llen, die variantenĂŒbergreifend wiederverwendbar sind. Dadurch mĂŒssen mit dem neuen Ansatz weniger TestfĂ€lle generiert werden als wenn dies fĂŒr jede Produktvariante separat geschieht. Um bei Bedarf die Anzahl der generierten TestfĂ€lle reduzieren zu können, werden außerdem drei Algorithmen zur Testsuite-Reduktion vorgestellt. Die Neuerung der vorgestellten Algorithmen liegt im Vergleich zu existierenden Reduktionsalgorithmen fĂŒr Testsuiten von Einzel-Softwaresystemen darin, dass die Existenz von variantenĂŒbergreifend verwendbaren TestfĂ€llen in einer SPL-Testsuite berĂŒcksichtig wird. Dadurch wird sichergestellt, dass trotz Testsuite-Reduktion die vollstĂ€ndige Testmodellabdeckung einer jeden Produktvariante durch die SPL-Testsuite erhalten bleibt. Sollte es aufgrund limitierter Ressourcen nicht möglich sein jede Produktvariante mit den in der vollstĂ€ndigen SPL-Testsuite enthaltenen TestfĂ€llen zu testen, kann mittels einer SPL-Testsuite eine kleine reprĂ€sentative Produktmenge aus der SPL bestimmt werden, deren Testergebnis (im begrenzten Rahmen) RĂŒckschlĂŒsse auf die QualitĂ€t der restlichen Produktvarianten zulĂ€sst. Zur Evaluation des Ansatzes wurde dieser prototypisch implementiert und auf zwei Fallbeispiele angewendet
    corecore