Academic Journal

Grammar-based test suite construction using coverage-directed algorithms over LR-graphs

Λεπτομέρειες βιβλιογραφικής εγγραφής
Τίτλος: Grammar-based test suite construction using coverage-directed algorithms over LR-graphs
Συγγραφείς: Rossouw, Christoff, Fischer, Bernd
Στοιχεία εκδότη: Elsevier
Έτος έκδοσης: 2024
Συλλογή: Stellenbosch University: SUNScholar Research Repository
Θεματικοί όροι: Computer software -- Testing, Debugging in computer science, Algorithms, Parsing (Computer grammar)
Περιγραφή: The original publication is available at: https://www.sciencedirect.com/ ; In grammar-based testing, the test suites that drive the system under test are typically constructed from a given context-free grammar through a set of derivations that jointly satisfy some coverage criterion. In this paper, we describe and evaluate a new algorithm that instead constructs test suites from a set of valid paths that cover all edges in a labeled directed graph corresponding to an LR-automaton that accepts the language of the grammar. Vertices in this graph correspond to states in the LR-automaton; two vertices are connected by an edge iff the top of the LR-automaton’s stack can change from one state to the other, either by shifting a terminal or non-terminal symbol (push edges), or by reducing with a grammar rule (pop edges). The algorithm constructs a unique reduction path for each pop edge in the graph. These reduction paths are recursively embedded into each other, and any unresolved non-terminal push edges are substituted by shortest derivations for the non-terminal symbol. The algorithm can work with different types of LR-automata, including LR(0)- and LR(1)-automata, and can successfully generate a test suite from an LR-graph even if the underlying LR-automaton construction leads to shift/reduce or reduce/reduce conflicts. The algorithm only constructs valid paths over the LR-graphs that correspond to sentences in the language and thus generates only positive tests. We therefore also describe mutations to the positive paths that are guaranteed to generate negative tests without needing any further verification by an oracle. Our algorithm is substantially more efficient than an earlier algorithm that explores LR-graphs with two consecutive breadth-first graph traversals and our experimental evaluation shows that it scales to large production-quality grammars. It is robust against random choices made to resolve ambiguity in the construction of the tests, while the code coverage of the different test suite variants is ...
Τύπος εγγράφου: article in journal/newspaper
Περιγραφή αρχείου: 20 Pages; application/pdf
Γλώσσα: English
Relation: https://scholar.sun.ac.za/handle/10019.1/133297
DOI: 10.1016/j.jss.2024.112068
Διαθεσιμότητα: https://doi.org/10.1016/j.jss.2024.112068
https://scholar.sun.ac.za/handle/10019.1/133297
Rights: Authors retain copyright
Αριθμός Καταχώρησης: edsbas.326F17C7
Βάση Δεδομένων: BASE
FullText Text:
  Availability: 0
CustomLinks:
  – Url: https://doi.org/10.1016/j.jss.2024.112068#
    Name: EDS - BASE (ns324271)
    Category: fullText
    Text: View record from BASE
Header DbId: edsbas
DbLabel: BASE
An: edsbas.326F17C7
RelevancyScore: 880
AccessLevel: 3
PubType: Academic Journal
PubTypeId: academicJournal
PreciseRelevancyScore: 879.707946777344
IllustrationInfo
Items – Name: Title
  Label: Title
  Group: Ti
  Data: Grammar-based test suite construction using coverage-directed algorithms over LR-graphs
– Name: Author
  Label: Authors
  Group: Au
  Data: <searchLink fieldCode="AR" term="%22Rossouw%2C+Christoff%22">Rossouw, Christoff</searchLink><br /><searchLink fieldCode="AR" term="%22Fischer%2C+Bernd%22">Fischer, Bernd</searchLink>
– Name: Publisher
  Label: Publisher Information
  Group: PubInfo
  Data: Elsevier
– Name: DatePubCY
  Label: Publication Year
  Group: Date
  Data: 2024
– Name: Subset
  Label: Collection
  Group: HoldingsInfo
  Data: Stellenbosch University: SUNScholar Research Repository
– Name: Subject
  Label: Subject Terms
  Group: Su
  Data: <searchLink fieldCode="DE" term="%22Computer+software+--+Testing%22">Computer software -- Testing</searchLink><br /><searchLink fieldCode="DE" term="%22Debugging+in+computer+science%22">Debugging in computer science</searchLink><br /><searchLink fieldCode="DE" term="%22Algorithms%22">Algorithms</searchLink><br /><searchLink fieldCode="DE" term="%22Parsing+%28Computer+grammar%29%22">Parsing (Computer grammar)</searchLink>
– Name: Abstract
  Label: Description
  Group: Ab
  Data: The original publication is available at: https://www.sciencedirect.com/ ; In grammar-based testing, the test suites that drive the system under test are typically constructed from a given context-free grammar through a set of derivations that jointly satisfy some coverage criterion. In this paper, we describe and evaluate a new algorithm that instead constructs test suites from a set of valid paths that cover all edges in a labeled directed graph corresponding to an LR-automaton that accepts the language of the grammar. Vertices in this graph correspond to states in the LR-automaton; two vertices are connected by an edge iff the top of the LR-automaton’s stack can change from one state to the other, either by shifting a terminal or non-terminal symbol (push edges), or by reducing with a grammar rule (pop edges). The algorithm constructs a unique reduction path for each pop edge in the graph. These reduction paths are recursively embedded into each other, and any unresolved non-terminal push edges are substituted by shortest derivations for the non-terminal symbol. The algorithm can work with different types of LR-automata, including LR(0)- and LR(1)-automata, and can successfully generate a test suite from an LR-graph even if the underlying LR-automaton construction leads to shift/reduce or reduce/reduce conflicts. The algorithm only constructs valid paths over the LR-graphs that correspond to sentences in the language and thus generates only positive tests. We therefore also describe mutations to the positive paths that are guaranteed to generate negative tests without needing any further verification by an oracle. Our algorithm is substantially more efficient than an earlier algorithm that explores LR-graphs with two consecutive breadth-first graph traversals and our experimental evaluation shows that it scales to large production-quality grammars. It is robust against random choices made to resolve ambiguity in the construction of the tests, while the code coverage of the different test suite variants is ...
– Name: TypeDocument
  Label: Document Type
  Group: TypDoc
  Data: article in journal/newspaper
– Name: Format
  Label: File Description
  Group: SrcInfo
  Data: 20 Pages; application/pdf
– Name: Language
  Label: Language
  Group: Lang
  Data: English
– Name: NoteTitleSource
  Label: Relation
  Group: SrcInfo
  Data: https://scholar.sun.ac.za/handle/10019.1/133297
– Name: DOI
  Label: DOI
  Group: ID
  Data: 10.1016/j.jss.2024.112068
– Name: URL
  Label: Availability
  Group: URL
  Data: https://doi.org/10.1016/j.jss.2024.112068<br />https://scholar.sun.ac.za/handle/10019.1/133297
– Name: Copyright
  Label: Rights
  Group: Cpyrght
  Data: Authors retain copyright
– Name: AN
  Label: Accession Number
  Group: ID
  Data: edsbas.326F17C7
PLink https://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsbas&AN=edsbas.326F17C7
RecordInfo BibRecord:
  BibEntity:
    Identifiers:
      – Type: doi
        Value: 10.1016/j.jss.2024.112068
    Languages:
      – Text: English
    Subjects:
      – SubjectFull: Computer software -- Testing
        Type: general
      – SubjectFull: Debugging in computer science
        Type: general
      – SubjectFull: Algorithms
        Type: general
      – SubjectFull: Parsing (Computer grammar)
        Type: general
    Titles:
      – TitleFull: Grammar-based test suite construction using coverage-directed algorithms over LR-graphs
        Type: main
  BibRelationships:
    HasContributorRelationships:
      – PersonEntity:
          Name:
            NameFull: Rossouw, Christoff
      – PersonEntity:
          Name:
            NameFull: Fischer, Bernd
    IsPartOfRelationships:
      – BibEntity:
          Dates:
            – D: 01
              M: 01
              Type: published
              Y: 2024
          Identifiers:
            – Type: issn-locals
              Value: edsbas
ResultId 1