The reuse of tests for configured software products

Jukka Korhonen, Mika Salmela, Jarmo Kalaoja

    Research output: Book/ReportReport

    Abstract

    New efficient software production techniques are important for improving the time-to-market of software products. One example of such advanced techniques is the so-called feature-based software production which employs high-level requirements or features in finding and selecting reusable software components for the development of new products. This kind of model-driven software development shortens the production time, but the validation of configured products still remains a bottleneck. An effort to apply regression testing techniques to configured software products shows that these techniques are not very well suited to meeting the new testing challenges. It is obvious that retesting an entire program, containing possibly only a few minor changes, is expensive. Therefore, an efficient testing approach is required for optimizing the size of the test suite. Other important issues concerning the testing approach are the design of reusable tests, the configuration and management of tests, and the automation of test execution. In the research, the testing efficiency problem is solved by using the idea of reusable software components from the feature-based production. In software testing the idea converts into a set of reusable test components designed for a product family. From a test material repository a suitable subset of tests is selected, modified, and configured to cover the characteristics of the product being tested. In addition, the repository may contain other relevant test data to be used for configuration, such as the test plans and the test environment configuration. The technique is called the feature-based testing approach. For identifying the relevant test data, the method proposes links to be created between the product features and the test material. The result of the test configuration depends on the automation degree, varying from a simple test involving identification of lists useful in manual testing to executable tests in a fully automated test environment. Often in structured testing the test case assumes that the software is in a specific state. Therefore joining test scripts arbitrarily may not produce the desired results. For that reason, we propose utilization of test specification components that are capable of using product feature data, taking care of the execution order and selecting appropriate tests for the product. When implementing the feature-based testing approach, the issues to be emphasized are script development, test development and execution, and test management. A support system implementing the main characteristics of the feature-based testing approach has been outlined in the report. The tool is demonstrated in a case study.
    Original languageEnglish
    Place of PublicationEspoo
    PublisherVTT Technical Research Centre of Finland
    Number of pages69
    ISBN (Electronic)951-38-5557-0
    ISBN (Print)951-38-5556-2
    Publication statusPublished - 2000
    MoE publication typeD4 Published development or research report or study

    Publication series

    SeriesVTT Publications
    Number406
    ISSN1235-0621

    Fingerprint

    Testing
    Automation
    Software testing
    Joining
    Software engineering
    Specifications

    Keywords

    • software testing
    • feature-based software
    • regression testing
    • configured systems

    Cite this

    Korhonen, J., Salmela, M., & Kalaoja, J. (2000). The reuse of tests for configured software products. Espoo: VTT Technical Research Centre of Finland. VTT Publications, No. 406
    Korhonen, Jukka ; Salmela, Mika ; Kalaoja, Jarmo. / The reuse of tests for configured software products. Espoo : VTT Technical Research Centre of Finland, 2000. 69 p. (VTT Publications; No. 406).
    @book{e4962575a6694849916576951fc72d09,
    title = "The reuse of tests for configured software products",
    abstract = "New efficient software production techniques are important for improving the time-to-market of software products. One example of such advanced techniques is the so-called feature-based software production which employs high-level requirements or features in finding and selecting reusable software components for the development of new products. This kind of model-driven software development shortens the production time, but the validation of configured products still remains a bottleneck. An effort to apply regression testing techniques to configured software products shows that these techniques are not very well suited to meeting the new testing challenges. It is obvious that retesting an entire program, containing possibly only a few minor changes, is expensive. Therefore, an efficient testing approach is required for optimizing the size of the test suite. Other important issues concerning the testing approach are the design of reusable tests, the configuration and management of tests, and the automation of test execution. In the research, the testing efficiency problem is solved by using the idea of reusable software components from the feature-based production. In software testing the idea converts into a set of reusable test components designed for a product family. From a test material repository a suitable subset of tests is selected, modified, and configured to cover the characteristics of the product being tested. In addition, the repository may contain other relevant test data to be used for configuration, such as the test plans and the test environment configuration. The technique is called the feature-based testing approach. For identifying the relevant test data, the method proposes links to be created between the product features and the test material. The result of the test configuration depends on the automation degree, varying from a simple test involving identification of lists useful in manual testing to executable tests in a fully automated test environment. Often in structured testing the test case assumes that the software is in a specific state. Therefore joining test scripts arbitrarily may not produce the desired results. For that reason, we propose utilization of test specification components that are capable of using product feature data, taking care of the execution order and selecting appropriate tests for the product. When implementing the feature-based testing approach, the issues to be emphasized are script development, test development and execution, and test management. A support system implementing the main characteristics of the feature-based testing approach has been outlined in the report. The tool is demonstrated in a case study.",
    keywords = "software testing, feature-based software, regression testing, configured systems",
    author = "Jukka Korhonen and Mika Salmela and Jarmo Kalaoja",
    note = "Project code: E8SU00158",
    year = "2000",
    language = "English",
    isbn = "951-38-5556-2",
    series = "VTT Publications",
    publisher = "VTT Technical Research Centre of Finland",
    number = "406",
    address = "Finland",

    }

    Korhonen, J, Salmela, M & Kalaoja, J 2000, The reuse of tests for configured software products. VTT Publications, no. 406, VTT Technical Research Centre of Finland, Espoo.

    The reuse of tests for configured software products. / Korhonen, Jukka; Salmela, Mika; Kalaoja, Jarmo.

    Espoo : VTT Technical Research Centre of Finland, 2000. 69 p. (VTT Publications; No. 406).

    Research output: Book/ReportReport

    TY - BOOK

    T1 - The reuse of tests for configured software products

    AU - Korhonen, Jukka

    AU - Salmela, Mika

    AU - Kalaoja, Jarmo

    N1 - Project code: E8SU00158

    PY - 2000

    Y1 - 2000

    N2 - New efficient software production techniques are important for improving the time-to-market of software products. One example of such advanced techniques is the so-called feature-based software production which employs high-level requirements or features in finding and selecting reusable software components for the development of new products. This kind of model-driven software development shortens the production time, but the validation of configured products still remains a bottleneck. An effort to apply regression testing techniques to configured software products shows that these techniques are not very well suited to meeting the new testing challenges. It is obvious that retesting an entire program, containing possibly only a few minor changes, is expensive. Therefore, an efficient testing approach is required for optimizing the size of the test suite. Other important issues concerning the testing approach are the design of reusable tests, the configuration and management of tests, and the automation of test execution. In the research, the testing efficiency problem is solved by using the idea of reusable software components from the feature-based production. In software testing the idea converts into a set of reusable test components designed for a product family. From a test material repository a suitable subset of tests is selected, modified, and configured to cover the characteristics of the product being tested. In addition, the repository may contain other relevant test data to be used for configuration, such as the test plans and the test environment configuration. The technique is called the feature-based testing approach. For identifying the relevant test data, the method proposes links to be created between the product features and the test material. The result of the test configuration depends on the automation degree, varying from a simple test involving identification of lists useful in manual testing to executable tests in a fully automated test environment. Often in structured testing the test case assumes that the software is in a specific state. Therefore joining test scripts arbitrarily may not produce the desired results. For that reason, we propose utilization of test specification components that are capable of using product feature data, taking care of the execution order and selecting appropriate tests for the product. When implementing the feature-based testing approach, the issues to be emphasized are script development, test development and execution, and test management. A support system implementing the main characteristics of the feature-based testing approach has been outlined in the report. The tool is demonstrated in a case study.

    AB - New efficient software production techniques are important for improving the time-to-market of software products. One example of such advanced techniques is the so-called feature-based software production which employs high-level requirements or features in finding and selecting reusable software components for the development of new products. This kind of model-driven software development shortens the production time, but the validation of configured products still remains a bottleneck. An effort to apply regression testing techniques to configured software products shows that these techniques are not very well suited to meeting the new testing challenges. It is obvious that retesting an entire program, containing possibly only a few minor changes, is expensive. Therefore, an efficient testing approach is required for optimizing the size of the test suite. Other important issues concerning the testing approach are the design of reusable tests, the configuration and management of tests, and the automation of test execution. In the research, the testing efficiency problem is solved by using the idea of reusable software components from the feature-based production. In software testing the idea converts into a set of reusable test components designed for a product family. From a test material repository a suitable subset of tests is selected, modified, and configured to cover the characteristics of the product being tested. In addition, the repository may contain other relevant test data to be used for configuration, such as the test plans and the test environment configuration. The technique is called the feature-based testing approach. For identifying the relevant test data, the method proposes links to be created between the product features and the test material. The result of the test configuration depends on the automation degree, varying from a simple test involving identification of lists useful in manual testing to executable tests in a fully automated test environment. Often in structured testing the test case assumes that the software is in a specific state. Therefore joining test scripts arbitrarily may not produce the desired results. For that reason, we propose utilization of test specification components that are capable of using product feature data, taking care of the execution order and selecting appropriate tests for the product. When implementing the feature-based testing approach, the issues to be emphasized are script development, test development and execution, and test management. A support system implementing the main characteristics of the feature-based testing approach has been outlined in the report. The tool is demonstrated in a case study.

    KW - software testing

    KW - feature-based software

    KW - regression testing

    KW - configured systems

    M3 - Report

    SN - 951-38-5556-2

    T3 - VTT Publications

    BT - The reuse of tests for configured software products

    PB - VTT Technical Research Centre of Finland

    CY - Espoo

    ER -

    Korhonen J, Salmela M, Kalaoja J. The reuse of tests for configured software products. Espoo: VTT Technical Research Centre of Finland, 2000. 69 p. (VTT Publications; No. 406).