发明名称 Symbolic execution and automatic test case generation for JavaScript programs
摘要 A method includes, by one or more computing devices, determining JavaScript statements to be evaluated, parsing the JavaScript statements, translating the JavaScript statements into Java bytecodes and JavaScript-specific instructions, executing the Java bytecodes in a Java execution engine, calling a JavaScript run-time engine from the Java execution engine, handling one or more semantic operations associated with the JavaScript-specific instructions through use of the JavaScript run-time engine, and providing return values to the Java execution engine. The statements are configured for execution on a computing device. The set of Java bytecodes and JavaScript-specific instructions is configured to conduct symbolic execution of one or more portions of the JavaScript statements. The symbolic execution is configured to evaluate the JavaScript statements.
申请公布号 US9038032(B2) 申请公布日期 2015.05.19
申请号 US201213481594 申请日期 2012.05.25
申请人 Fujitsu Limited 发明人 Li Guodong;Murthy Praveen K.;Ghosh Indradeep;Rajan Sreeranga P.
分类号 G06F9/44;G06F9/45;G06F11/36;G06F9/455 主分类号 G06F9/44
代理机构 Baker Botts L.L.P. 代理人 Baker Botts L.L.P.
主权项 1. A method comprising, by one or more computing devices: determining JavaScript statements to be evaluated, the JavaScript statements configured for execution on a computing device; parsing the JavaScript statements; translating the JavaScript statements into a set of Java bytecodes and JavaScript-specific instructions configured to conduct symbolic execution of one or more portions of the JavaScript statements; determining a document object model reference in the JavaScript statements; determining a set of instructions representing the document object model; modifying the set of instructions to include information from the document object model reference; executing the Java bytecodes in a Java execution engine; adding the modified set of instructions to the set of Java bytecodes and JavaScript-specific instructions upon access of the document object model reference by the Java execution engine; calling a JavaScript run-time engine from the Java execution engine; handling one or more semantic operations associated with the JavaScript-specific instructions through use of the JavaScript run-time engine; and providing return values to the Java execution engine; wherein the symbolic execution includes evaluating the JavaScript statements by maintaining a symbolic value of the translated JavaScript-specific instructions in the translated Java bytecodes while the JavaScript run-time engine handles semantic operations associated with the translated JavaScript specific instructions.
地址 Kawasaki-shi JP
您可能感兴趣的专利