CN110018952A - 一种js代码的测试方法、存储介质、设备和系统 - Google Patents

一种js代码的测试方法、存储介质、设备和系统 Download PDF

Info

Publication number
CN110018952A
CN110018952A CN201810024354.8A CN201810024354A CN110018952A CN 110018952 A CN110018952 A CN 110018952A CN 201810024354 A CN201810024354 A CN 201810024354A CN 110018952 A CN110018952 A CN 110018952A
Authority
CN
China
Prior art keywords
code
engine
language codes
implementing result
compiled
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.)
Granted
Application number
CN201810024354.8A
Other languages
English (en)
Other versions
CN110018952B (zh
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.)
Wuhan Douyu Network Technology Co Ltd
Original Assignee
Wuhan Douyu Network Technology Co Ltd
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 Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201810024354.8A priority Critical patent/CN110018952B/zh
Publication of CN110018952A publication Critical patent/CN110018952A/zh
Application granted granted Critical
Publication of CN110018952B publication Critical patent/CN110018952B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis

Abstract

本发明公开了一种JS代码的测试方法,涉及人机识别技术领域,包括步骤:在JS代码中集成JS引擎,并编写一用于执行JS代码的JS引擎接口,调用JS引擎接口得到JS代码的执行结果;编写与JS代码功能相同的编译型语言代码,并执行所述编译型语言代码,获得该编译型语言代码的执行结果;比较JS代码的执行结果和编译型语言代码的执行结果是否一致,并根据比较结果判断所述JS代码是否正确。本发明提供的一种JS代码的测试方法,运行速度快,可适用于测试大量的JavaScript代码,测试效率较高,而且测试性能好。

Description

一种JS代码的测试方法、存储介质、设备和系统
技术领域
本发明涉及人机识别技术领域,具体涉及一种JS代码的测试方法、存储介质、设备和系统。
背景技术
JS,全称为JavaScript,是因特网上最流行的脚本语言,其可以在所有主要的浏览器中运行,比如Internet Explorer、Chrome、Mozilla Firefox、Netscape和Opera等。
目前,WEB程序的编程语言是JavaScript,其是一种动态脚本语言,发布时相当于是源码发布,造成其极易被破解,对于一些核心的JavaScript代码,则很多开发者会编写代码来生成JavaScript的代码,从而可以经常的进行更换和加强其安全性。同时,为了保障自动生成的JavaScript代码的准确性,则需要一种方法来对自动生成的JavaScript代码进行测试,以验证自动生成的代码是否准确。
现有技术中,测试自动生成的JavaScript代码是否正确的方法是:将生成的JavaScript代码放到浏览器中运行从而查看运行的结果是否正确。
然而,由于在生成JavaScript代码时会依据各种条件生成大量的JavaScript代码,例如,在验证登录的用户名是否正确时,由于用户名可能是全中文、全英文、字符或其他任意方式的组合等,因此,在测试时,需要分别对各种不同类型的用户名进行测试,即对应有大量测试用的JavaScript代码,若将这些大量的JavaScript代码均放到浏览器中去执行,过程繁琐,使用起来非常不便。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种JS代码的测试方法,运行速度快,可适用于测试大量的JavaScript代码,测试效率较高,而且测试性能好。
为达到以上目的,本发明采取的技术方案是:
一种JS代码的测试方法,其用于测试JS代码是否正确,包括步骤:
在JS代码中集成JS引擎,并编写一用于执行JS代码的JS引擎接口,调用JS引擎接口得到JS代码的执行结果;
编写与所述JS代码功能相同的编译型语言代码,并执行所述编译型语言代码,获得该编译型语言代码的执行结果;
比较JS代码的执行结果和编译型语言代码的执行结果是否一致,并根据比较结果判断所述JS代码是否正确。
在上述技术方案的基础上,编写一用于执行JS代码的JS引擎接口的具体步骤为:创建JS引擎的全局初始化和环境;创建隔离区;设置JS引擎独立运行的环境;管理本地的Handle对象;创建运行的上下文;创建字符串转换对象;编译原始的JS代码;执行编译好的JS代码。
在上述技术方案的基础上,所述JS引擎为V8引擎。
在上述技术方案的基础上,所述编译型语言代码为C语言代码。
本发明还提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本发明还提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本发明还提供了一种JS代码的测试系统,所述系统包括第一模块、第二模块和比较模块;
所述第一模块用于在JS代码中集成JS引擎,并编写一用于执行JS代码的JS引擎接口,调用JS引擎接口得到JS代码的执行结果;
所述第二模块用于编写与待测试JS代码功能相同的编译型语言代码,并执行所述编译型语言代码,获得该编译型语言代码的执行结果;
所述比较模块用于比较JS代码的执行结果和编译型语言代码的执行结果是否一致,并根据比较结果判断所述JS代码是否正确。
在上述技术方案的基础上,所述第一模块包括创建单元、设置单元、管理单元、编译单元和执行单元;
所述创建单元用于创建JS引擎的全局初始化和环境,并创建隔离区,还用于创建运行的上下文,并创建字符串转换对象;
所述设置单元用于设置JS引擎独立运行的环境;
所述管理单元用于管理本地的Handle对象;
所述编译单元用于编译原始的JS代码;
所述执行单元用于执行编译好的JS代码。
在上述技术方案的基础上,所述JS引擎为V8引擎。
在上述技术方案的基础上,所述编译型语言代码为C语言代码。
与现有技术相比,本发明的优点在于:
本发明的JS代码的测试方法,通过在JS代码中集成JS引擎,并编写一用于执行JS代码的JS引擎接口,调用JS引擎接口得到JS代码的执行结果,同时,编写与待测试JS代码功能相同的编译型语言代码,并执行编译型语言代码,获得该编译型语言代码的执行结果,再对比两个执行结果是否一致,来判断待测试的JS代码是否正确,此种对比方法,运行速度快,可以快速测试出JS代码是否正确,从而可适用于测试大量的JavaScript代码,测试效率较高,而且测试性能好。
附图说明
图1为本发明实施例中JS代码的测试方法的流程图;
图2为本发明实施例中电子设备的连接框图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
参见图1所示,本发明实施例提供一种JS代码的测试方法,其用于测试JS代码是否正确,在本发明实施例中,该待检测的JS代码为自动生成的JavaScript代码,以实现加法功能的JavaScript代码为例,该JavaScript代码如下:
function AddFunc(a,b)
{
return a+b;
}
Var result1=AddFunc(2,3);
Var result2=AddFunc(-5,3);
Var result3=AddFunc(-5,-3);
Var result4=AddFunc(0,0);
Var result5=AddFunc(4294967295,2);
上述自动生成的JavaScript代码是一个加法函数,用于计算2个变量相加的结果。
本发明实施例中一种JS代码的测试方法具体包括步骤如下:
S1:在JS代码中集成JS引擎。在本发明实施例中,JS引擎选用的是V8引擎,由于V8引擎是开源的,可以在网上下载其相关源码进行编译,最终则可以编译出相应的库文件,从而在工程中引入库文件及相关头文件则可以使用V8引擎相应的功能,使用起来更加方便。
S2:编写一用于执行JS代码的JS引擎接口,在本发明实施例中,需要编写V8引擎的接口来执行相应的JavaScript的代码。具体接口如下:
Result=ExcuteJs(char*strJsCode,char*pName);
其中,接口名称是ExcuteJs,参数char*strJsCode则是要传入的JavaScript的代码,参数char*pName则是要获取的变量名称,Result则是得到的JS代码的执行结果。
编写一用于执行JS代码的JS引擎接口的具体步骤为:
S201:创建JS引擎的全局初始化和环境,在本实施例中,具体为创建V8的全局初始化和环境,实现代码如下:
v8::V8::InitializeICU();
通过V8的接口InitializeICU来初始化V8引擎的国际化库。
v8::Platform*pV8Platform=v8::platform::CreateDefaultPlatform();
v8::V8::InitializePlatform(pV8Platform);
v8::V8::Initialize()。
S202:创建隔离区,实现代码如下:
v8::Isolate*isolate=v8::Isolate::New(create_params);
创建一个隔离区,标示创建一个V8引擎的实例,每个实例是相互独立的,不共享变量。
S203:设置JS引擎独立运行的环境,实现代码如下:
v8::Isolate::Scope isolate_scope(isolate)。
S204:管理本地的Handle对象,实现代码如下:
v8::HandleScope handle_scope(isolate)。
S205:创建运行的上下文,实现代码如下:
v8::Local<v8::Context>context=v8::Context::New(isolate)。
S206:创建字符串转换对象,实现代码如下:
v8::Local<v8::String>source=v8::String::NewFromUtf8(isolate,strJsCode)。
S207:编译原始的JS代码,实现代码如下:
v8::Local<v8::Script>script=v8::Script::Compile(source);
S208:执行编译好的JS代码,实现代码如下:
script->Run()。
S209:获取执行的结果,实现代码如下:
v8::Handle<v8::Object>globalObj=context->Global()。
在调用JS引擎接口得到JS代码的执行结果时,获取全局管理对象,通过变量的名称得到变量的值,代码如下:
v8::Handle<v8::Value>value=globalObj->Get(v8::String::NewFrom Utf8(isolate,pName));
Return value;
其中pName即是变量的名称,value则是最终执行的结果。
S3:调用JS引擎接口得到JS代码的执行结果,具体实现如下:
Result=ExcuteJs(char*strJsCode,char*pName);
char*strJsCode表示要传入的JavaScript的代码,以传入加法功能的JavaScript代码为例,传入的JavaScript代码具体如下:
function AddFunc(a,b)
{
return a+b;
}
Var result1=AddFunc(2,3);
需要获取的变量名称result1,从而可以实现调用JS引擎接口得到该JS代码的执行结果。
S4:编写与待测试JS代码功能相同的编译型语言代码,并执行编译型语言代码,获得该编译型语言代码的执行结果。
本发明实施例中,编译型语言代码优选为C语言代码,采用编写对应的C语言代码来对比两个执行结果,如果结果一致则说明自动生成的JavaScript代码是正确的,否则说明JavaScript代码是有问题,从而可以去定位原因查找问题。
以加法功能为例,编写的C语言代码如下:
Int AddFunc(int a,int b)
{
return a+b;
}
int result1=AddFunc(2,3);
执行上述C语言代码,获得C语言代码的执行结果。
S5:比较JS代码的执行结果和编译型语言代码的执行结果是否一致,并根据比较结果判断JS代码是否正确。
在本发明实施例中,一方面,通过调用调用JS引擎接口得到JS代码的执行结果,得到JavaScript代码执行后得到的result1值,另一方面,通过编写与待测试JS代码功能相同的编译型语言代码,并执行编译型语言代码,获得该编译型语言代码的执行结果,可以得到此处C语言代码执行后得到的result1值,可以通过对比得到的两个result1值是否一致来判断自动生成的JS代码是否正确。在默认情况下,C语言代码执行后得到的result1值是正确的,若两个结果一致,则说明自动生成的JS代码正确,若两个结果一致,则说明自动生成的JS代码正确。
本发明的JS代码的测试方法,通过在JS代码中集成JS引擎,并编写一用于执行JS代码的JS引擎接口,调用JS引擎接口得到JS代码的执行结果,同时,编写与待测试JS代码功能相同的编译型语言代码,并执行编译型语言代码,获得该编译型语言代码的执行结果,再对比两个执行结果是否一致,来判断待测试的JS代码是否正确,此种对比方法,运行速度快,可以快速测试出JS代码是否正确,从而可适用于测试大量的JavaScript代码,测试效率较高,而且测试性能好。
本发明实施例还公开了一种存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法的步骤。
参见图2所示,本发明实施例还公开了一种电子设备,包括存储器、处理器及存储在存储器上并在处理器上运行的计算机程序,处理器执行计算机程序时实现上述方法的步骤。
本发明实施例还公开了一种JS代码的测试系统,系统包括第一模块、第二模块和比较模块;
第一模块用于在JS代码中集成JS引擎,并编写一用于执行JS代码的JS引擎接口,调用JS引擎接口得到JS代码的执行结果;
第二模块用于编写与待测试JS代码功能相同的编译型语言代码,并执行编译型语言代码,获得该编译型语言代码的执行结果;
比较模块用于比较JS代码的执行结果和编译型语言代码的执行结果是否一致,并根据比较结果判断JS代码是否正确。
具体地,第一模块包括创建单元、设置单元、管理单元、编译单元和执行单元;
创建单元用于创建JS引擎的全局初始化和环境,并创建隔离区,还用于创建运行的上下文,并创建字符串转换对象;
设置单元用于设置JS引擎独立运行的环境;
管理单元用于管理本地的Handle对象;
编译单元用于编译原始的JS代码;
执行单元用于执行编译好的JS代码。
优选地,JS引擎为V8引擎,编译型语言代码为C语言代码,由于V8引擎性能优良,C语言代码为基础的编译型语言,使用起来更加方便,且安全可靠。
本发明的JS代码的测试系统,通过在JS代码中集成JS引擎,并编写一用于执行JS代码的JS引擎接口,调用JS引擎接口得到JS代码的执行结果,同时,编写与待测试JS代码功能相同的编译型语言代码,并执行编译型语言代码,获得该编译型语言代码的执行结果,再对比两个执行结果是否一致,来判断待测试的JS代码是否正确,此种对比方法,运行速度快,可以快速测试出JS代码是否正确,从而可适用于测试大量的JavaScript代码,测试效率较高,而且测试性能好。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

Claims (10)

1.一种JS代码的测试方法,其用于测试JS代码是否正确,其特征在于,包括步骤:
在JS代码中集成JS引擎,并编写一用于执行JS代码的JS引擎接口,调用JS引擎接口得到JS代码的执行结果;
编写与所述JS代码功能相同的编译型语言代码,并执行所述编译型语言代码,获得该编译型语言代码的执行结果;
比较JS代码的执行结果和编译型语言代码的执行结果是否一致,并根据比较结果判断所述JS代码是否正确。
2.如权利要求1所述的JS代码的测试方法,其特征在于:编写一用于执行JS代码的JS引擎接口的具体步骤为:创建JS引擎的全局初始化和环境;创建隔离区;设置JS引擎独立运行的环境;管理本地的Handle对象;创建运行的上下文;创建字符串转换对象;编译原始的JS代码;执行编译好的JS代码。
3.如权利要求1所述的JS代码的测试方法,其特征在于:所述JS引擎为V8引擎。
4.如权利要求1所述的JS代码的测试方法,其特征在于:所述编译型语言代码为C语言代码。
5.一种存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现上述权利要求1至4中任一项所述方法的步骤。
6.一种电子设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的计算机程序,其特征在于:所述处理器执行所述计算机程序时实现上述权利要求1至4中任一项所述方法的步骤。
7.一种JS代码的测试系统,其特征在于:所述系统包括第一模块、第二模块和比较模块;
所述第一模块用于在JS代码中集成JS引擎,并编写一用于执行JS代码的JS引擎接口,调用JS引擎接口得到JS代码的执行结果;
所述第二模块用于编写与待测试JS代码功能相同的编译型语言代码,并执行所述编译型语言代码,获得该编译型语言代码的执行结果;
所述比较模块用于比较JS代码的执行结果和编译型语言代码的执行结果是否一致,并根据比较结果判断所述JS代码是否正确。
8.如权利要求7所述的JS代码的测试系统,其特征在于:所述第一模块包括创建单元、设置单元、管理单元、编译单元和执行单元;
所述创建单元用于创建JS引擎的全局初始化和环境,并创建隔离区,还用于创建运行的上下文,并创建字符串转换对象;
所述设置单元用于设置JS引擎独立运行的环境;
所述管理单元用于管理本地的Handle对象;
所述编译单元用于编译原始的JS代码;
所述执行单元用于执行编译好的JS代码。
9.如权利要求7所述的JS代码的测试系统,其特征在于:所述JS引擎为V8引擎。
10.如权利要求7所述的JS代码的测试系统,其特征在于:所述编译型语言代码为C语言代码。
CN201810024354.8A 2018-01-10 2018-01-10 一种js代码的测试方法、存储介质、设备和系统 Active CN110018952B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810024354.8A CN110018952B (zh) 2018-01-10 2018-01-10 一种js代码的测试方法、存储介质、设备和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810024354.8A CN110018952B (zh) 2018-01-10 2018-01-10 一种js代码的测试方法、存储介质、设备和系统

Publications (2)

Publication Number Publication Date
CN110018952A true CN110018952A (zh) 2019-07-16
CN110018952B CN110018952B (zh) 2022-12-27

Family

ID=67188189

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810024354.8A Active CN110018952B (zh) 2018-01-10 2018-01-10 一种js代码的测试方法、存储介质、设备和系统

Country Status (1)

Country Link
CN (1) CN110018952B (zh)

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050155027A1 (en) * 2004-01-09 2005-07-14 Wei Coach K. System and method for developing and deploying computer applications over a network
CN101246420A (zh) * 2007-12-29 2008-08-20 中国建设银行股份有限公司 多语言系统实现统一开发的方法及系统
US20120272132A1 (en) * 2011-04-21 2012-10-25 Qualcomm Innovation Center, Inc. Methods and apparatus for improved browsing performance by precompilation of high-priority javascripts in a webpage and delaying the removal of corresponding compiled code
CN102880452A (zh) * 2012-02-01 2013-01-16 日照市国软软件有限公司 一种可跨语言重用的编程语言
US20130159982A1 (en) * 2011-12-16 2013-06-20 Apostolos Lerios Language Translation Using Preprocessor Macros
CN103295053A (zh) * 2012-02-29 2013-09-11 汪风珍 多密码预警式内存锁银行卡
CN104572114A (zh) * 2015-01-23 2015-04-29 盟游(北京)科技有限公司 一种绑定装置、应用更新装置及方法以及应用
CN105653460A (zh) * 2016-02-29 2016-06-08 东南大学 触屏式产品人机接口测试动作录制与回放的方法及系统
CN106155756A (zh) * 2016-06-24 2016-11-23 北京普会科技有限公司 一种在计算机上实现跨人类语言编程的方法
CN106371829A (zh) * 2016-08-24 2017-02-01 北京邮电大学 基于模块化思想的模板框架设计方法及系统
GB201708974D0 (en) * 2017-06-06 2017-07-19 Canon Kk Method and apparatus for executing a scripting language
CN107038060A (zh) * 2016-09-29 2017-08-11 阿里巴巴集团控股有限公司 一种页面着色器代码调试方法、装置
CN107402881A (zh) * 2017-04-14 2017-11-28 阿里巴巴集团控股有限公司 一种项目测试的选取方法及装置
CN107480327A (zh) * 2017-07-03 2017-12-15 北京东土军悦科技有限公司 一种仿真验证方法、装置和电子设备

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050155027A1 (en) * 2004-01-09 2005-07-14 Wei Coach K. System and method for developing and deploying computer applications over a network
CN101246420A (zh) * 2007-12-29 2008-08-20 中国建设银行股份有限公司 多语言系统实现统一开发的方法及系统
US20120272132A1 (en) * 2011-04-21 2012-10-25 Qualcomm Innovation Center, Inc. Methods and apparatus for improved browsing performance by precompilation of high-priority javascripts in a webpage and delaying the removal of corresponding compiled code
US20130159982A1 (en) * 2011-12-16 2013-06-20 Apostolos Lerios Language Translation Using Preprocessor Macros
CN102880452A (zh) * 2012-02-01 2013-01-16 日照市国软软件有限公司 一种可跨语言重用的编程语言
CN103295053A (zh) * 2012-02-29 2013-09-11 汪风珍 多密码预警式内存锁银行卡
CN104572114A (zh) * 2015-01-23 2015-04-29 盟游(北京)科技有限公司 一种绑定装置、应用更新装置及方法以及应用
CN105653460A (zh) * 2016-02-29 2016-06-08 东南大学 触屏式产品人机接口测试动作录制与回放的方法及系统
CN106155756A (zh) * 2016-06-24 2016-11-23 北京普会科技有限公司 一种在计算机上实现跨人类语言编程的方法
CN106371829A (zh) * 2016-08-24 2017-02-01 北京邮电大学 基于模块化思想的模板框架设计方法及系统
CN107038060A (zh) * 2016-09-29 2017-08-11 阿里巴巴集团控股有限公司 一种页面着色器代码调试方法、装置
CN107402881A (zh) * 2017-04-14 2017-11-28 阿里巴巴集团控股有限公司 一种项目测试的选取方法及装置
GB201708974D0 (en) * 2017-06-06 2017-07-19 Canon Kk Method and apparatus for executing a scripting language
CN107480327A (zh) * 2017-07-03 2017-12-15 北京东土军悦科技有限公司 一种仿真验证方法、装置和电子设备

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JIM.LI: "在Android上使用Google V8 JS 引擎", 《HTTPS://BLOG.CSDN.NET/ABSURD/ARTICLE/DETAILS/47678463》 *
张云临: "在Android上使用Google V8 JS 引擎", 《HTTPS://WWW.SHUZHIDUO.COM/A/XL56ZVXY5R/》 *
落叶似秋: "多种编程语言执行效率的比较", 《HTTPS://BLOG.CSDN.NET/E_ONE/ARTICLE/DETAILS/75258920》 *

Also Published As

Publication number Publication date
CN110018952B (zh) 2022-12-27

Similar Documents

Publication Publication Date Title
Cruz-Filipe et al. Efficient certified RAT verification
US10831456B1 (en) External code integrations within a computing environment
Thierry-Mieg Symbolic model-checking using ITS-tools
Hills et al. An empirical study of PHP feature usage: a static analysis perspective
CN108614707A (zh) 静态代码检查方法、装置、存储介质和计算机设备
US9418230B2 (en) Automated tools for building secure software programs
US20070061641A1 (en) Apparatus and method for generating test driver
CN105389262B (zh) 一种针对界面测试生成测试建议的方法和装置
CN109725896A (zh) 一种在线编辑python代码的方法以及电子设备
US6990438B1 (en) Method and apparatus for observability-based code coverage
CN110196720A (zh) 一种Simulink生成动态链接库的优化方法
JP2014021982A (ja) オブジェクト指向言語のための記号テストドライバの反復生成
CN113094252B (zh) 测试用例生成方法、装置、计算机设备及存储介质
CN109614107A (zh) 一种软件开发工具包的集成方法和装置
US10169217B2 (en) System and method for test generation from software specification models that contain nonlinear arithmetic constraints over real number ranges
CN110018952A (zh) 一种js代码的测试方法、存储介质、设备和系统
KR100777103B1 (ko) 테스트 드라이버 생성 장치 및 방법
CN110018953A (zh) 使用python测试JS代码的方法、存储介质、设备和系统
Chen et al. Hopper: Interpretative fuzzing for libraries
CN110018951B (zh) 一种js代码的测试方法、存储介质、设备和系统
CN111078548B (zh) 测试用例解析方法、装置、存储介质及验证平台
Beckert et al. S em S lice: exploiting relational verification for automatic program slicing
CN107577476A (zh) 一种基于模块划分的安卓系统源码差异性分析方法、服务器及介质
CN109408395A (zh) 基于txt文件的解析测试系统
Curtis On language-agnostic abstract-syntax trees: student research abstract

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant