发明名称 Software test apparatus, software test method and computer readable medium thereof
摘要 A software test apparatus and a software test method and a computer readable medium thereof are provided. The software test apparatus stores a software testing program, an under-tested code, a plurality of basic test benches and a plurality of candidate test benches. The under-tested code includes a hard-to-detect code and the hard-to-detect code has at least one hard-to-detect section. The software test apparatus runs the software testing program to execute the following operations: parsing the hard-to-detect code to generate a condition-statement tree; based on the basic test benches and the condition-statement tree, using a support vector machine (SVM) to establish a support vector regression (SVR) predictor; and applying the SVR predictor to choose a best candidate test bench from the candidate test benches.
申请公布号 US9454457(B1) 申请公布日期 2016.09.27
申请号 US201514949431 申请日期 2015.11.23
申请人 Institute For Information Industry 发明人 Jan Kai-Yuan
分类号 G06F9/44;G06F11/36;G06F9/445 主分类号 G06F9/44
代理机构 Skaar Ulbrich Macari, P.A. 代理人 Skaar Ulbrich Macari, P.A.
主权项 1. A software test method for a software test apparatus, the software test apparatus comprising a storage and a processor, the storage being configured to store a software testing program, an under-tested code, a plurality of basic test benches and a plurality of candidate test benches, the under-tested code comprising a hard-to-detect code, and the hard-to-detect code comprising at least one hard-to-detect section, the processor being electrically connected to the storage and configured to run the software testing program to execute the software test method, the software test method comprising: (a) parsing the hard-to-detect code to generate a condition-statement tree of the hard-to-detect code, the condition-statement tree comprising a plurality of condition-statement nodes and a plurality of statement nodes, each of the at least one hard-to-detect section consisting of a target condition-statement node among the condition-statement nodes and a target statement node among the statement nodes; (b) for the target condition-statement node of each of the at least one hard-to-detect section, using each of the basic test benches as an input of the under-tested code according to the condition-statement tree to run the under-tested code so as to obtain a first activation count of a parent condition-statement node corresponding to the target condition-statement node of each of the basic test benches and a second activation count of at least one sibling condition-statement node corresponding to the target condition-statement node; (c) using a support vector machine (SVM) to establish a support vector regression (SVR) predictor according to each of the basic test benches and the first activation count and the second activation count corresponding to the target condition-statement node of each of the at least one hard-to-detect section; (d) for each of the candidate test benches, inputting the candidate test bench into the SVR predicator to obtain a first predicted activation count of the parent condition-statement node and a second predicted activation count of the at least one sibling condition-statement node corresponding to the target condition-statement node of each of the at least one hard-to-detect section; (e) for the target condition-statement node of each of the at least one hard-to-detect section, calculating an activation probability metric corresponding to each of the candidate test benches according to the first activation counts and the second activation counts corresponding to the basic test benches as well as the first predicted activation count and the second predicted activation count corresponding to each of the candidate test benches; and (f) deciding one of the candidate test benches as a best candidate test bench according to the activation probability metrics corresponding to each of the candidate test benches.
地址 Taipei TW