CN102243586B - Method for automatically acquiring software function diagram - Google Patents

Method for automatically acquiring software function diagram Download PDF

Info

Publication number
CN102243586B
CN102243586B CN201110207403.XA CN201110207403A CN102243586B CN 102243586 B CN102243586 B CN 102243586B CN 201110207403 A CN201110207403 A CN 201110207403A CN 102243586 B CN102243586 B CN 102243586B
Authority
CN
China
Prior art keywords
gui
gui control
abstract syntax
syntax tree
type
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110207403.XA
Other languages
Chinese (zh)
Other versions
CN102243586A (en
Inventor
于秀山
于长钺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Software Evaluation Center
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN201110207403.XA priority Critical patent/CN102243586B/en
Publication of CN102243586A publication Critical patent/CN102243586A/en
Application granted granted Critical
Publication of CN102243586B publication Critical patent/CN102243586B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

The invention discloses a method for automatically acquiring a software function diagram. The method comprises the following steps of: analyzing morphology of a source code to obtain a label stream in the source code; analyzing grammar based on the label stream to obtain an abstract syntax tree and a symbol table; searching each leaf node in the abstract syntax tree in a mode defined by variable statement or variable definition, and obtaining the leaf nodes in the abstract syntax tree as variable, combining the symbol table, discriminating all GUI (Graphical User Interface) controls corresponding in the source code and correlation of the GUI controls; and generating a complete GUI software function diagram according to the GUI controls and the correlation among the GUI controls. The method disclosed by the invention solves the problem on mapping between the source program code and the software interface GUI controls.

Description

A kind of software function diagram automatic obtaining method
Technical field
The present invention relates to a kind of Software function test and software size measurement technology, particularly relate to a kind of software function diagram automatic obtaining method.
Background technology
Software function is the key character that software is depended on for existence, and Software function test is an important content of software test, effectively can be found the defect existed in software by Software function test.Software function test to as if the function that has of tested software, only have the function of Obtaining Accurate software fully can test software.At present, mainly having carried out the research work in two both at home and abroad in software function acquisition field, is that the acquisition of need-based software function and the software function based on executable code obtain respectively.
1, need-based software function obtains.
It is the method that industry generally adopts at present that need-based software function obtains.The method, mainly by document analysis such as Software Requirement Specifications, sets up software requirement model, and this demand model describes the mutual relationship between function and software function that software has in detail.Its implementation is divided into artificial and automatic two kinds, and manual type is mainly analyzed documents such as Software Requirement Specifications by tester, therefrom obtains the function of software.There are the following problems for this method.(1) poor accuracy.Theoretically, the documents such as Software Requirement Specification should be consistent with software version, but in detailed programs, due to a variety of causes, are difficult to be consistent between both, and the software function obtained thus exists larger difference with actual software function; (2) workload is large.For documents such as non-formal Software Requirement Specifications, can only be analyzed document by manual type, workload is large; Automated manner is mainly applicable to the occasion of different forms language development, as UML(Unified Modeling Language, and unified modeling language), the method is by analyzing uml diagram, automatic acquisition software function.In this case, because software requirement Formal Languages is described, therefore, software function can be obtained by automated manner.The greatest problem that this method exists is that applicable surface is narrow, and at present, most of software does not all adopt UML mode to develop, and therefore, its usable range is very limited.
2, the software function based on executable code obtains.
The method is mainly passed through software executable code analysis, obtain software function, representational DART:A Framework for Regression Testing " Nightly/daily Builds " of GUI Applications paper having Univ Maryland-Coll Park USA Atif M.Memon to deliver.Atif M.Memon adopts reverse engineering technology, by analyzing executable code, finds out the relation between events all in software and event.This method Problems existing is that control discrimination is low, and the method can only criterion of identification control, can not identify non-standard control, therefore, also needs to be supplemented the event obtained and event interaction figure by manual type.
In sum, software function is the basis of Software function test and software size tolerance, and at present, existing software function acquisition methods all exists such and such problem, limits its applying in actual items.
Summary of the invention
Technical matters solved by the invention is to provide a kind of software function diagram automatic obtaining method, solves the mapping problems between source program code and software interface GUI control.
Technical scheme is as follows:
The invention discloses a kind of software function diagram automatic obtaining method, comprise,
Lexical analysis is carried out to source code, obtains the mark stream in described source code;
Based on described mark stream, carry out grammatical analysis, obtain abstract syntax tree and symbol table;
Each leaf node in described abstract syntax tree is searched for the definition mode of variable declarations or variable-definition, obtain the leaf node for variable in described abstract syntax tree, in conjunction with described symbol table, discrimination goes out the mutual relationship between all GUI controls corresponding with described source code and described GUI control;
According to the mutual relationship between described GUI control and described GUI control, generate complete gui software functional diagram.
Preferably, the process picking out described GUI control comprises: obtain all variablees in abstract syntax tree, carries out identification, obtains the variable of described GUI control type, be i.e. described GUI control by inquiring about described symbol table to all variablees.
Preferably, the described GUI control obtained is concluded into GUI list of controls; Each GUI control in described GUI list of controls comprises with properties:
Identifier, the name of code of GUI control;
Display character, the title of GUI control in described software function diagram;
Type, the type of GUI control.
Preferably, described symbol table comprises with properties:
Identifier, the name of code of GUI control;
Type, the type of GUI control;
Definition place line number, the position of GUI control in described source code.
Preferably, the process of the mutual relationship between described identification GUI control comprises:
By traveling through described abstract syntax tree, and scanning described GUI list of controls, picking out the mutual relationship between GUI control.
Preferably, the relation between described GUI control comprises set membership, brotherhood and call relation.
Preferably, the type of described GUI control comprises window and window frame class, button class, menu class or Text Input class.
1, the present invention is directed to existing method Problems existing, adopt source program code analytical technology, solve the mapping problems between source program code and software interface GUI control.
2, the present invention does not rely on software development relevant documentation, as long as submit to source program code just can automatic generating software functional diagram, thoroughly solve the dependence completely existed in need-based method and generate software function diagram by hand, limited based on the dependence Formal Languages existed in formalization method, range of application, the control discrimination existed in reverse engineering method is low waits series of problems, have applied widely, accuracy is high, the feature such as full-automatic.
Accompanying drawing explanation
Fig. 1 is the main flow chart of a kind of software function diagram automatic obtaining method in the present invention;
Fig. 2 is morphology and grammatical analysis process flow diagram in the present invention;
Fig. 3 is the workflow diagram of control discrimination method in the present invention;
Fig. 4 is the main working process figure generating gui software functional diagram in the present invention;
Fig. 5 is the 6th abstract syntax tree schematic diagram walking to eighth row code in the present invention;
Fig. 6 is the 22nd abstract syntax tree schematic diagram walking to the 24th line code in the present invention;
Fig. 7 is main interface schematic diagram in the present invention;
Fig. 8 is the pop-up window interface schematic diagram that in the present invention, " test menu item 1 " guides;
Fig. 9 is the gui software functional diagram at main interface in the present invention;
Figure 10 is that the present invention is hit by a bullet out the gui software functional diagram at interface;
Figure 11 is the gui software functional diagram in the present invention between main interface and pop-up window.
Embodiment
Below with reference to the accompanying drawings with specific embodiment, technical solution of the present invention is described in detail.
As shown in Figure 1, be the main flow chart of a kind of software function diagram automatic obtaining method of the present invention.A kind of implementation of software function diagram automatic obtaining method is as follows.
Step 101: morphology and grammatical analysis.Source code, after morphology and grammatical analysis, will obtain its abstract syntax tree and symbol table.
Adopting class Principles & Technology of Compiler Design, morphology and grammatical analysis are carried out to tested software source code, by analyzing, obtaining abstract syntax tree and symbol table.This fundamental purpose analyzed is the abstract syntax tree and the symbol table that obtain tested software source code.
Abstract syntax tree is one tree T=<V, E>, wherein: V is the node of tree, is made up of the various syntactic structures in source code; E is the limit of tree, is responsible for connecting various syntactic structure.
Symbol table is a table graphic data structure, the identifier produced in lexical analysis process as the entrance of symbol table, the information that subsequent analysis obtains, as: the type, use-pattern, storage space etc. of identifier can join in table as required.
According to the mutual relationship (as: set membership, call relation etc.) between GUI control, by analyzing GUI control, generate complete gui software functional diagram.The program can use algorithm 1 to describe.
Algorithm 1.GetGUIRelationGraph (P)
Input P: source code
Export gui software functional diagram in G:P
1. (AST, SymTable) <-Lexical_Syntax_Analyze (P), source code with P(tested software) be parameter call function Lexical_Syntactax_Analyze, obtain abstract syntax tree AST and the symbol table SymTable of P;
2.GUIEmtList<-GEL_AST_SymTable (AST, SymTable), with AST and SymTable for parameter call function G EL_AST_SymTable, obtains the GUI list of controls GUIEmtList of P;
3.G<-GRG_AST_GEL (AST, GUIEmtList), with AST and GUIEmtList for parameter call function G RG_AST_GEL, obtains gui software functional diagram.
4.Return G
As shown in Figure 2, be morphology and grammatical analysis process flow diagram in the present invention.Morphology and grammatical analysis are the bases generating software function diagram.This programme adopts general method to carry out morphology and grammatical analysis to the source code of tested software, is described by algorithm 2.
Algorithm 2.Lexical_Syntax_Analyze (P)
Input P: source code
Export abstract syntax tree and the symbol table of (AST, SymTable): P
1.TokenStream<-Lexical_Analyze(P)
Lexical analysis is carried out to source code P, obtains the mark stream TokenStream of P;
2.(AST,SymTable)<-Syntax_Analyze(TokenStream)
Carry out grammatical analysis to mark based on stream, obtain abstract syntax tree AST and the symbol table SymTable of P;
3.Return (AST, SymTable), returns AST and SymTable.
The identification of step 102:GUI control.
Adopt depth first search technique, ergodic abstract syntax tree and symbol table, obtain GUI controls (as: window, button etc.) all in source code.
The object of GUI control identification finds out all GUI controls designed in program, that is: by the analysis to abstract syntax tree and symbol table, pick out all GUI controls.This step is mainly through to abstract syntax traversal of tree and having searched symbol table.Main method is: with depth first method ergodic abstract syntax tree, if certain leaf node is variable, at this moment by searching symbol table, can obtain this type of variables; If the type is GUI control type, then illustrate to be a GUI control described by this variable.
GUI control identification in program compilation and this programme all employ abstract syntax tree and symbol table, but both objects are different, and the former object generates and optimization aim code, and the object of the latter finds out GUI controls all in source code.
1. control type
Programming language is different, and its control type comprised is also different, and for Java Swing, its control comprised can be divided into following a few class:
(1) window and window frame class: JWindow, JColorChooser, JComponent, JDesktopPane, JDialog, JEditorPane, JFileChooser, JFrame, JInternalFrame, JLayeredPane, JOptionPane, JRootPane, JScrollPane, JSplitPane, JTabbedPane;
(2) button class: JButton, JToggleButton, JCheckBox, JCheckBoxMenuItem, JComboBox, JRadioButton, JRadioButtonMenuItem;
(3) menu class: JMenu, JMenuBar, JMenuItem, JPopupMenu;
(4) Text Input class: JTextArea, JTextComponent, JTextField, JPasswordField;
(5) other: JTree, JViewPort, JScrollBar, JSeparator, JSlider, JSpinner, JTable, JTableHeader, JToolBar, JToolTip, JLabel, JList, JProgressBar.
Although these controls have respective using method, be that the mode of certain control is determined by the specification of language itself by certain variable-definition, therefore, according to these specifications, unified these controls of method identification can be adopted.
2. variable-definition mode
2 kinds are mainly contained to the definition mode of control variable:
(1) variable declarations
Call the turn at program design language, variable declarations is responsible for existence and its relevant character of pointing out certain variable, but does not carry out initialization to it.
Such as: private javax.swing.JButton computeButton; This statement defines the variable computeButton that type is javax.swing.JButton.
(2) variable-definition
Call the turn at program design language, variable-definition is not only responsible for existence and its relevant character of pointing out certain variable, also needs to carry out initialization to it.
Such as: javax.swing.JMenu fileMenu=new javax.swing.JMenu ();
This statement defines variable fileMenu that type is javax.swing.JMenu and uses new statement to carry out initialization to it.
3. control discriminating conduct
By searching for above-mentioned variable declarations, variable-definition two kinds of definition modes in abstract syntax tree, the content simultaneously in combined symbol table, just can pick out controls all in source code and variable thereof.
As shown in Figure 3, be the workflow diagram of control discrimination method in the present invention.
By ergodic abstract syntax tree and search symbol table, GUI list of controls can be generated.
Algorithm 3.GEL_AST_SymTable (AST, SymTable) describes GUI control identification algorithm.
Input AST: the abstract syntax tree of source code
Input SymTable: the symbol table of source code
Export GEL: the GUI list of controls in source code
1.GEL<-[], initialization rreturn value GEL are empty list;
2. travel through all leaf node Node of AST; ;
3.if (LookUpType (SymTable, Node)=GUI control type), call function LookUpType (SymTable, Node) judge whether leaf node Node is GUI control type;
4.GEL<-Node::GEL, if so, then adds rreturn value GEL list by this node;
5.Return GEL, returns GUI list of controls GEL.
Step 103: software function diagram generates.
Generate software function diagram, except the control in acquisition program, also need to know the relation between these controls.Between GUI control, there is multiple relation, mainly comprise: set membership, brotherhood and call relation.
Set membership refers to certain defining relation relevant to level between the control that produces in definition procedure.Programming language is different, and its characteristic manner is not identical yet; In Java Swing, the definition of set membership has come mainly through the .add () function (control type is different, and this function is also distinguished to some extent) of father's control.
Such as, in code below
popFrame.add(testButton
PopFrame is the control of a JFrame type, and testButton is the control of a JButton type.The implication that above-mentioned statement is expressed is: joined by testButton in popFrame, known accordingly, testButton is the child control of popFrame, and popFrame is father's control of testButton.
Relation between the GUI control with identical father is called brotherhood.
Such as, in code below
Button1 and Button2 is the child control of popFrame, therefore, is brotherhood between Button1 and Button2.
Call relation refers in program process, performs certain operation (as: click), cause certain event to be issued, thus cause the execution of other control certain control.Such as: after button click A, pop-up window B, so just claims to have call relation between A and B.
For Java Swing, its control is by completing the process to event to the monitoring of event.Java Swing comprises the method that event is monitored: ActionListener, AdjustmentListener, ComponentListener, ContainerListener, FocusListener, HierarchyBoundsListener, HierarchyListener, InputMethodListener, ItemListener, KeyListener, MouseListener, MouseMotionListener, MouseWheelListener, TextListener, WindowFocusListener, WindowListener, WindowStateListener.
For the button control of conventional JButton type, when a button is pressed, certain user-defined function usually can be performed.User completes above-mentioned function by the addActionListener function passes ActionLisener function to button.In ActionListener function, user needs to realize actionPerformed function, this function is exactly the action that button performs when being pressed, if user wishes certain function performing oneself definition, then this function can be joined in actionPerformed function.
Such as, in code below
OpenButton is the button of a JButton type, by openButtonActionPerformed function being joined in the actionPerformed function body in ActionListener function, can realize calling openButtonActionPerformed function when openButton button is pressed.
As shown in Figure 4, be the main working process figure generating gui software functional diagram in the present invention.
Algorithm 4.GRG_AST_GEL (AST, GUIEmtList)
Input AST: the abstract syntax tree of source code
Input GUIEmtList: the GUI list of controls in source code
Export G: software function diagram
1.G<-Null, is initialized as sky by rreturn value G;
2. travel through all GUI control GEmt1 in GUIEmtList;
3. travel through AST, ergodic abstract syntax tree AST;
4.if (certain element GEmt2 in GEmt1 and GUIEmtList is set membership), finds set membership;
5.G<-G+FatherChild(GEmt1,GEmt2)
6.if (certain element GEmt2 in GEmt1 and GUIEmtList is brotherhood), finds brotherhood;
7.G<-G+Brother(GEmt1,GEmt2)
8.if (certain element GEmt2 in GEmt1 and GUIEmtList is call relation), finds call relation;
9.G<-G+Invoke(GEmt1,GEmt2)
10.Return G, returns result.
Below with a specific embodiment, checking is further done to technical solution of the present invention.Utilize the present invention, by the analysis to source program code, generate the gui software functional diagram of its correspondence.First use algorithm 2 to carry out morphology and grammatical analysis to code sample below, obtain its abstract syntax tree and symbol table.
1public class AnaSwingFirstView extends FrameView{
2private void initComponents(){
3menuBar=new javax.swing.JMenuBar (), defines a menu bar manuBar;
4javax.swing.JMenu fileMenu=new javax.swing.JMenu (), defines a menu fileMenu;
5javax.swing.JMenuItem exitMenuItem=new javax.swing.JMenuItem (), defines a menu item exitMenuItem;
6testMenu=new javax.swing.JMenu (), defines menu testMenu;
7popTestMenuItem1=new javax.swing.JMenuItem (), defines menu item popTestMenuItem1;
8popTestMenuItem2=new javax.swing.JMenuItem (), defines menu item popTestMenuItem2;
As shown in Figure 5, be the 6th abstract syntax tree schematic diagram walking to eighth row code in the present invention.
9menuBar.setName (" menuBar "); The display character of setting menuBar;
10fileMenu.add (exitMenuItem), joins fileMenu as its menu item using exitMenuItem;
11fileMenu.setText (resourceMap.getString (" fileMenu.text ")), is set to fileMenu.text(file by the display character of fileMenu);
12exitMenuItem.setText (resourceMap.getString (" exitMenuItem.text ")), is set to exitMenuItem.text(by the display character of exitMenuItem and exits);
13menuBar.add (fileMenu), joins menuBar as its menu using fileMenu;
14testMenu.setText (resourceMap.getString (" testMenu.text ")), is set to testMenu.text(test menu by the display character of testMenu);
15popTestMenuItem1.setText (resourceMap.getString (" popTestMenuItem1.text ")), is set to popTestMenuItem1.text(test menu item 1 by the display character of popTestMenuItem1);
16popTestMenuItem1.addActionListener (new java.awt.event.ActionListener (), define the operation performed when popTestMenuItem1 is clicked;
17public void actionPerformed(java.awt.event.ActionEvent evt){
18popTestMenuItem1ActionPerformed(evt);
19}
20});
21popTestMenuItem2.setText (resourceMap.getString (" popTestMenuItem2.text ")), is set to popTestMenuItem2.text(test menu item 2 by the display character of popTestMenuItem2);
22testMenu.add (popTestMenuItem1), joins testMenu as its menu item using popTestMenuItem1;
23testMenu.add (popTestMenuItem2), joins testMenu as its menu item using popTestMenuItem2;
24menuBar.add (testMenu), joins menuBar as its menu using testMenu;
As shown in Figure 6, be in the present invention the 22nd row to the abstract syntax tree schematic diagram of the 24th line code.
25}
26private void popTestMenuItem1ActionPerformed (java.awt.event.ActionEvent evt), define popTestMenuItem1ActionPerformed function;
27openTest(evt);
28}
29private void openTest (java.awt.event.ActionEvent evt), define openTest function;
30JFrame popFrame=new JFrame (" pop-up window "), defines pop-up window (popFrame);
31JButton pfButton1=new JButton (" testing button "), defines button testButton, and is shown character and be set to testing button;
32popFrame.add (pfButton1), joins pfButton1 in popFrame;
33popFrame.setVisible (true), is set to visible by popFrame.
34}
35}
Table 1 gives the symbol table of example code segment.Wherein, have 9 symbols, line number when have recorded their type in symbol table and be defined in source code.
Table 1: the symbol table of example code segment
According to abstract syntax tree and the symbol table of example code segment, this programme uses algorithm 3 to carry out the identification of GUI control, thus obtains its GUI list of controls (table 2).
Table 2: the GUI list of controls of example code segment
Identifier Display character Type
menuBar Nothing JMenuBar
fileMenu File JMenu
exitMenuItem Exit JMenuItem
testMenu Test menu JMenu
popTestMenuItem1 Test menu item 1 JMenuItem
popTestMenuItem2 Test menu item 2 JMenuItem
popFrame Pop-up window JFrame
pfButton1 Testing button JButton
As shown in Figure 7, being main interface schematic diagram in the present invention, is the main interface of the actual displayed that above-mentioned code is corresponding.
As shown in Figure 8, be the pop-up window interface schematic diagram that in the present invention, " test menu item 1 " guides.After click " test menu item 1 ", by ejection window, have in this window one " testing button ".
According to its abstract syntax tree and GUI list of controls, this programme uses the gui software functional diagram of algorithm 4 generating code fragment.
As shown in Figure 9, be the gui software functional diagram at main interface in the present invention.First obtain the gui software functional diagram at main interface, wherein, unidirectional arrow represents set membership, and four-headed arrow represents brotherhood.Wherein there is no call relation.
As shown in Figure 10, be that the present invention is hit by a bullet out the gui software functional diagram at interface.
As shown in figure 11, be gui software functional diagram in the present invention between main interface and pop-up window.The call relation giving the main interface of software in figure and eject between interface, has call relation between the test menu item 1 at main interface and pop-up window.
In sum, by generating three steps to the morphology of source code and grammatical analysis, the identification of GUI control and gui software functional diagram, just gui software functional diagram can be obtained.

Claims (6)

1. a software function diagram automatic obtaining method, comprises,
Lexical analysis is carried out to source code, obtains the mark stream in described source code;
Based on described mark stream, carry out grammatical analysis, obtain abstract syntax tree and symbol table;
Each leaf node in described abstract syntax tree is searched for the definition mode of variable declarations or variable-definition, obtain the leaf node for variable in described abstract syntax tree, in conjunction with described symbol table, pick out the mutual relationship between all people's machine interactive graphics (IG) user-interface design GUI control and described GUI control in described source code;
Wherein, the process picking out described GUI control comprises: with depth first method ergodic abstract syntax tree, if certain leaf node is variable, at this moment by searching symbol table, can obtain this type of variables; If the type is GUI control type, then illustrate to be a GUI control described by this variable;
According to the mutual relationship between described GUI control and described GUI control, generate complete gui software functional diagram.
2. the method for claim 1, is characterized in that, concludes into GUI list of controls by the described GUI control obtained; Each GUI control in described GUI list of controls comprises with properties:
Identifier: the name of code of GUI control;
Display character: the title of GUI control in described software function diagram;
Type: the type of GUI control.
3. the method for claim 1, is characterized in that, described symbol table comprises with properties:
Identifier: the name of code of GUI control;
Type: the type of GUI control;
Definition place line number: the position of GUI control in described source code.
4. method as claimed in claim 2, it is characterized in that, the process of the mutual relationship between described identification GUI control comprises:
By traveling through described abstract syntax tree, and scanning described GUI list of controls, picking out the mutual relationship between GUI control.
5. method as claimed in claim 4, is characterized in that: the relation between described GUI control comprises set membership, brotherhood and call relation.
6. the method for claim 1, is characterized in that, the type of described GUI control comprises window and window frame class, button class, menu class or Text Input class.
CN201110207403.XA 2011-07-22 2011-07-22 Method for automatically acquiring software function diagram Active CN102243586B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110207403.XA CN102243586B (en) 2011-07-22 2011-07-22 Method for automatically acquiring software function diagram

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110207403.XA CN102243586B (en) 2011-07-22 2011-07-22 Method for automatically acquiring software function diagram

Publications (2)

Publication Number Publication Date
CN102243586A CN102243586A (en) 2011-11-16
CN102243586B true CN102243586B (en) 2015-02-04

Family

ID=44961658

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110207403.XA Active CN102243586B (en) 2011-07-22 2011-07-22 Method for automatically acquiring software function diagram

Country Status (1)

Country Link
CN (1) CN102243586B (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102681932B (en) * 2012-01-19 2015-04-01 于秀山 Method for detecting processing correctness of software on abnormal input
CN102831057B (en) * 2012-08-13 2015-02-11 于秀山 Method for analyzing software function change and influence thereof by using function diagram
CN103279420B (en) * 2013-06-08 2016-02-24 网宿科技股份有限公司 The application program for mobile terminal automated testing method optimized and system
CN103970662B (en) * 2014-05-22 2017-09-29 于秀山 A kind of gui software input border value-acquiring method and system
US20160124723A1 (en) * 2014-10-31 2016-05-05 Weixi Ma Graphically building abstract syntax trees
CN104679519B (en) * 2015-03-10 2018-05-15 于秀山 Graphical user interface software function acquisition methods and device
CN104615544B (en) * 2015-03-10 2018-09-28 于秀山 Problem oriented gui software correlation function analysis method and device
CN105893052B (en) * 2016-04-20 2019-04-16 中国银行股份有限公司 A kind of war packet analyzer
CN107817986A (en) * 2017-09-25 2018-03-20 北京奇艺世纪科技有限公司 A kind of software configuration generation method, device and electronic equipment
CN109375922A (en) * 2018-09-26 2019-02-22 深圳壹账通智能科技有限公司 A kind of automatic generation method and terminal device of interface document
CN113535228B (en) * 2020-04-14 2024-04-09 深圳富桂精密工业有限公司 Method, apparatus and computer readable storage medium for monitoring data link

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101436128A (en) * 2007-11-16 2009-05-20 北京邮电大学 Software test case automatic generating method and system
CN101807147A (en) * 2010-04-15 2010-08-18 西北工业大学 Method for automatically abstracting software architecture from embedded software code

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8146006B2 (en) * 2006-12-01 2012-03-27 International Business Machines Corporation Method and apparatus for obtaining user interface information from executable program code

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101436128A (en) * 2007-11-16 2009-05-20 北京邮电大学 Software test case automatic generating method and system
CN101807147A (en) * 2010-04-15 2010-08-18 西北工业大学 Method for automatically abstracting software architecture from embedded software code

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
GUI软件测试文档辅助工具的设计与实现;隋颖等;《计算机技术与发展》;20091231;第19卷(第12期);第146-149页 *

Also Published As

Publication number Publication date
CN102243586A (en) 2011-11-16

Similar Documents

Publication Publication Date Title
CN102243586B (en) Method for automatically acquiring software function diagram
CN107193739B (en) Black box regression testing method
CN108932192B (en) Python program type defect detection method based on abstract syntax tree
CN102831057B (en) Method for analyzing software function change and influence thereof by using function diagram
CN106649100A (en) Automatic test method and system
CN102135938B (en) Software product testing method and system
CN104615544B (en) Problem oriented gui software correlation function analysis method and device
CN107451052A (en) One kind is based on Web system positioning webpage element test method
CN107608732A (en) A kind of bug search localization methods based on bug knowledge mappings
CN109408385B (en) A kind of disfigurement discovery method based on mischief rule and classifying feedback
Fontana et al. On investigating code smells correlations
CN104156308B (en) Mobile application testing method on basis of playback of execution trace of users
CN102681932B (en) Method for detecting processing correctness of software on abnormal input
CN105630678B (en) A kind of the reliability detector and its detection method of intelligent electric energy meter software
Dong et al. Experiments on design pattern discovery
CN108875375B (en) Dynamic characteristic information extraction method for android system privacy leakage detection
CN102436417B (en) Code and function covering mapping system and covering mapping method thereof
Omori et al. A study on repetitiveness of code completion operations
CN116401145A (en) Source code static analysis processing method and device
CN113590477A (en) Mobile application function test case generation method
Johannsen et al. Supporting knowledge elicitation and analysis for business process improvement through a modeling tool
Kellens et al. A survey of aspect mining tools and techniques
de Almeida Neves et al. Morpheus Web Testing: A Tool for Generating Test Cases for Widget Based Web Applications
Smirnov et al. Revizor: a data-driven approach to automate frequent code changes based on graph matching
Waheed et al. Discovery of design patterns variants for quality software development

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20230418

Address after: No. 66, Zizhuyuan Road, Haidian District, Beijing 100048

Patentee after: China Software Evaluation Center

Address before: 100036 Courtyard 3-4101, No. 6 Wanshou Road, Haidian District, Beijing

Patentee before: Yu Xiushan

TR01 Transfer of patent right