(i) | Input: test sequence scripts TSSs, AUT |
(ii) | Output: test result TR |
(1) | serial_number = 1 |
(2) | while true do |
(3) | gui_current = getCurrentGUI() |
(4) | gui_elements’ = getObjectDetection(gui_current) |
(5) | gui_skeleton’ = getGUISkeleton(gui_elements’) |
(6) | if serial_number is 0 then |
(7) | break |
(8) | else if serial_number is 1 then |
(9) | for each tss in TSSs do |
(10) | gui_skeleton = getTSSGUI(tss, serial_number) |
(11) | e = getSimilarityJudgment(gui_skeleton’, gui_skeleton) |
(12) | end for |
(13) | TSS’ = getMaxSimliarScript(e, s_threshold) |
(14) | serial_number = execteAction(TSS’, serial_number, gui_elements’) |
(15) | else |
(16) | gui_skeleton = getTSSGUI(TSS′, serial_number) |
(17) | e = getSimilarityJudgment(gui_skeleton’, gui_skeleton) |
(18) | if e > s_threshold then |
(19) | TR ⇐ recordResults() |
(20) | serial_number = exectueAction(TSS’, serial_number, gui_elements’) |
(21) | else |
(22) | TR ⇐ recordResults() |
(23) | break |
(24) | end if |
(25) | end if |
(26) | end while |
(27) | return TR |
(28) | |
(29) | function executeAction(TSS’, serial_number, gui_elements’) |
(30) | object = getTTSObject(TSS′, serial_number) |
(31) | object’ = findObject(gui_elements’, object) |
(32) | if object’ is find then |
(33) | gesture’ = getGesture(TSS′, serial_number) |
(34) | action = generateAction(object’, gesture’) |
(35) | executeRoboticArm(action) |
(36) | serial_number = step(serial_number) |
(37) | else |
(38) | serial_number = 0 |
(39) | end if |
(40) | return serial_number |
(41) | end function |