CODE-ANALYSEVORRICHTUNG UND CODE-ANALYSEVERFAHREN UNTER VERWENDUNG DES MODIFIZIERTEN BEDINGUNGS-/ENTSCHEIDUNGSÜBERDECKUNG (MCDC) VERFAHRENS

Ein Code-Analyseverfahren umfasst: Umwandeln eines durch einen Quellcode angegebenen Ausdrucks in einen booleschen Ausdruck, wobei der Ausdruck n Bedingungen umfasst; Erzeugen eines binären Ausdrucksbaums mit einer Vielzahl von Knoten basierend auf dem booleschen Ausdruck; Initialisieren einer Umkeh...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Janjanam, Lakshmi Manikanta, Jangam, Sripad, Chitte, Ramesh, Jeong, KwangChul, Ganapathi, Satya Praveen, Park, Yong Suk, Joshi, Bhimsen
Format: Patent
Sprache:ger
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:Ein Code-Analyseverfahren umfasst: Umwandeln eines durch einen Quellcode angegebenen Ausdrucks in einen booleschen Ausdruck, wobei der Ausdruck n Bedingungen umfasst; Erzeugen eines binären Ausdrucksbaums mit einer Vielzahl von Knoten basierend auf dem booleschen Ausdruck; Initialisieren einer Umkehrgrenze und der Anzahl der Umkehrungen für jeden Knoten durch Analyse, ob jeder Knoten ein Blattknoten oder ein Elternknoten ist; Erzeugen eines ersten Testfalls durch Initialisieren boolescher Werte jedes einer Vielzahl von Elternknoten, deren Name jeweils ein Operator ist, aus der Vielzahl von Knoten und von zwei Kindknoten der Vielzahl von Elternknoten zu einem aus einer Vielzahl von gültigen Fällen; und Erzeugen von n Testfällen durch Ausführen einer Umkehrung an allen Knoten, die eine Umkehrbarkeit auf einem Pfad von einem Wurzelknoten zu einem Blattknoten aufweisen, basierend auf dem ersten Testfall, und Speichern des ersten Tests und der n Testfälle. A code analysis method includes: converting an expression indicated by a source code to Boolean expression, the expression including n conditions; generating binary expression tree including a plurality of nodes based on the Boolean expression; initializing a flip limit and the number of flips of each node by analyzing whether each node is a leaf node or a parent node; generating a first test case by initialization Boolean values of each of the plurality of parent nodes each of which a name is an operator among the plurality of nodes and two child nodes of the plurality of parent nodes to one of a plurality of valid cases; and generating n test cases by performing a flip on all node having flip feasibility on a path from a root node to a leaf node based on the first test case, and storing the first test and the n test cases.