CN114968751A - 一种无代码开发平台的程序调试方法和程序调试装置 - Google Patents

一种无代码开发平台的程序调试方法和程序调试装置 Download PDF

Info

Publication number
CN114968751A
CN114968751A CN202110206336.3A CN202110206336A CN114968751A CN 114968751 A CN114968751 A CN 114968751A CN 202110206336 A CN202110206336 A CN 202110206336A CN 114968751 A CN114968751 A CN 114968751A
Authority
CN
China
Prior art keywords
debugging
program code
statement
breakpoint
program
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.)
Pending
Application number
CN202110206336.3A
Other languages
English (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 United Network Communications Group Co Ltd
China Unicom System Integration Ltd Corp
China Unicom Heilongjiang Industrial Internet Co Ltd
Original Assignee
China United Network Communications Group Co Ltd
China Unicom System Integration Ltd Corp
China Unicom Heilongjiang Industrial Internet 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 China United Network Communications Group Co Ltd, China Unicom System Integration Ltd Corp, China Unicom Heilongjiang Industrial Internet Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN202110206336.3A priority Critical patent/CN114968751A/zh
Publication of CN114968751A publication Critical patent/CN114968751A/zh
Pending legal-status Critical Current

Links

Images

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/3604Software analysis for verifying properties of programs
    • G06F11/3612Software analysis for verifying properties of programs by runtime analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请提出了一种无代码开发平台的程序调试方法和程序调试装置。本申请提出的技术方案中,浏览器端通过接收用户输入的指示断点位置的断点指示信息和指示断定调试的第一调试指令,并根据断点指示信息在指定断点位置处的语句之后添加断点语句,得到第二程序代码;然后向服务器端发送第一调试指令和第二程序代码,使得服务器端能够根据第一调试指令对包括断点语句的第二程序代码进行调试。该方法能够实现对无代码代发平台开发得到的程序的任意位置的断点调试,从而能够实现语句级的调试,进一步地,能够实现错误信息的精确定位。

Description

一种无代码开发平台的程序调试方法和程序调试装置
技术领域
本申请涉及互联网技术领域,尤其涉及一种无代码开发平台的程序调试方法和程序调试装置。
背景技术
基于浏览器/服务器(browser/server,B/S)架构的无代码开发平台是新兴起的一种软件开发方式。与基于传统开发平台开发的软件产品类似,基于B/S架构的无代码开发平台进行软件开发时,也需要进行软件调试,才能保证开发的软件上线使用时的正常运行。
目前,基于B/S架构的无代码开发能力平台进行软件调试时,只能以无代码开发能力平台提供的完整接口作为最小测试单元来完成调试。这种调试方法不能有效地检测出软件中的错误,从而影响软件的正常运行。
发明内容
本申请提供无代码开发平台的程序调试方法和程序调试装置,可以对程序进行语句级调试,从而实现对错误代码的精确定位。
第一方面,本申请提供一种无代码开发平台的程序调试方法,所述无代码开发平台是基于浏览器端和服务器端架构的开发平台,所述方法由所述浏览器端执行。
所述方法包括:获取第一程序代码,所述第一程序包括多条语句;接收用户输入的断点指示信息,所述断点指示信息用于指示对第一程序代码进行断点调试时的断点位置;在第一程序代码中的至少一个语句中每个语句之后添加断点语句,得到第二程序代码,所述至少一个语句包括断点位置所指示的语句;向服务器端发送第二程序代码;接收用户输入的第一调试指令,所述第一调试指令用于指示服务器端对第二程序代码进行断点调试;向服务器端发送第一调试指令。
本申请实施例提供的程序调试方法,通过在第一程序代码中的至少一个语句中每个语句之后添加断点语句,该至少一个语句包括需要断点调试的语句,从而当运行到程序的断点语句时能够停止程序的运行,获得调试的结果。本申请的技术方案,相比完整接口的调试方法,该调试方法可以定位到接口里面的语句,因此实现了语句级的调试,从而可以完成对错误信息的精确定位。
此外,通过浏览器端向服务器端发送第二调试代码和第一调试指令,与服务器端向浏览器端发送调试结果信息,克服了浏览器端与服务器端之间的跨平台调试的问题。
结合第一方面,在一种可能的实现方式中,所述至少一个语句包括第一程序代码中所有语句;所述方法还包括:接收用户输入的第二调试指令,所述第二调试指令用于指示所述服务器端对所述第二程序代码进行单句调试;向所述服务器端发送第二调试指令。
本申请实施例提供的程序调试方法,通过在第一程序代码中的所有语句之后添加断点语句,从而可以在执行完每一个语句时停止程序的运行。
结合第一方面或上述任意一种可能的实现方式,所述方法还包括:接收用户输入的第三调试指令,所述第三调试指令用于指示所述服务器端将第二程序代码执行到结束;向服务器端发送第三调试指令。
本申请实施例提供的程序调试方法,通过第三调试指令,来控制服务器端对第二程序代码的调试。由于服务器端在接收到该三调试指令后,不论第二程序代码中是否包括断点语句,都会跳过断点语句,运行至最后一个语句,增加了程序调试过程中的灵活性。
结合第一方面或上述任意一种可能的实现方式,所述方法还包括:接收用户输入的第四调试指令,所述第四调试指令用于指示服务器端停止执行第二程序代码;向服务器端发送第四调试指令。
第二方面,本申请提供一种无代码开发平台的程序调试方法,所述无代码开发平台是基于浏览器端和服务器端架构的开发平台,所述方法由所述服务器端执行。
所述方法包括:接收浏览器端发送的第二程序代码,所述第二程序代码包括在第一程序代码中的至少一个语句中每个语句之后添加断点语句的程序代码,所述至少一个语句包括断点位置所指示的语句,所述第一程序包括多条语句;接收浏览器端发送的第一调试指令,所述第一调试指令用于指示所述服务器端对第二程序代码进行断点调试;根据第一调试指令,对第二程序代码进行调试。
结合第二方面,在一种可能的实现方式中,所述至少一个语句包括第一程序代码中所有语句;所述方法还包括:接收浏览器端发送的第二调试指令,所述第二调试指令用于指示服务器端对第二程序代码进行单句调试;根据第二调试指令,对第二程序代码进行调试。
结合第二方面或上述任意一种可能的实现方式,所述方法还包括:接收浏览器端发送的第三调试指令,所述第三调试指令用于指示服务器端将第二程序代码执行到结束;根据第三调试指令,对第二程序代码进行调试。
结合第二方面或上述任意一种可能的实现方式,所述方法还包括:接收所述浏览器端发送的第四调试指令,所述第四调试指令用于指示服务器端停止执行所述第二程序代码;根据第四调试指令,对第二程序代码进行调试。
第三方面,本申请提供一种无代码开发平台的程序调试装置,所述无代码开发平台是基于浏览器端和服务器端架构的开发平台,所述调试装置应用于浏览器端,所述调试装置包括:获取模块,用于获取第一程序代码和用户输入的第一调试指令,所述第一程序包括多条语句;接收模块,用于接收用户输入的断点指示信息和第一调试指令,所述断点指示信息用于指示对第一程序代码进行断点调试时的断点位置,所述第一调试指令用于指示服务器端对第二程序代码进行断点调试;断点处理模块,用于在第一程序代码中的至少一个语句中每个语句之后添加断点语句,得到第二程序代码,所述至少一个语句包括断点位置所指示的语句;发送模块,用于向服务器端发送第二程序代码和第一调试指令。
结合第三方面,在一种可能的实现方式中,所述接收模块还用于:接收用户输入的第二调试指令,所述第二调试指令用于指示所述服务器端对所述第二程序代码进行单句调试;所述发送模块还用于:向所述服务器端发送第二调试指令。
结合第三方面或上述任意一种可能的实现方式,所述接收模块还用于:接收用户输入的第三调试指令,所述第三调试指令用于指示所述服务器端将第二程序代码执行到结束;所述发送模块还用于:向服务器端发送第三调试指令。
结合第三方面或上述任意一种可能的实现方式,所述接收模块还用于:接收用户输入的第四调试指令,所述第四调试指令用于指示服务器端停止执行第二程序代码;所述发送模块还用于:向服务器端发送第四调试指令。
第四方面,本申请提供一种无代码开发平台的程序调试装置,所述无代码开发平台是基于浏览器端和服务器端架构的开发平台,所述调试装置应用于服务器端,所述调试装置包括:接收模块,用于接收浏览器端发送的第二程序代码和第一调试指令,所述第二程序代码包括在第一程序代码中的至少一个语句中每个语句之后添加断点语句的程序代码,所述至少一个语句包括断点位置所指示的语句,所述第一程序包括多条语句,所述第一调试指令用于指示所述服务器端对所述第二程序代码进行断点调试;调试模块,用于根据所述第一调试指令,对所述第二程序代码进行调试。
结合第四方面,在一种可能的实现方式中,所述至少一个语句包括第一程序代码中所有语句;所述接收模块还用于:接收浏览器端发送的第二调试指令,所述第二调试指令用于指示服务器端对第二程序代码进行单句调试;相应地,所述调试模块还用于:根据所述第二调试指令,对所述第二程序代码进行调试。
结合第四方面或上述任意一种可能的实现方式,所述接收模块还用于:接收浏览器端发送的第三调试指令,所述第三调试指令用于指示服务器端将第二程序代码执行到结束;相应地,所述调试模块还用于:根据第三调试指令,对第二程序代码进行调试。
结合第四方面或上述任意一种可能的实现方式,所述接收模块还用于:接收所述浏览器端发送的第四调试指令,所述第四调试指令用于指示服务器端停止执行所述第二程序代码;相应地,所述调试模块还用于根据第四调试指令,对第二程序代码进行调试。
第五方面,本申请提供一种芯片,包括至少一个处理器和通信接口,所述通信接口和所述至少一个处理器通过线路互联,所述至少一个处理器用于运行计算机程序或指令,以执行如第一方面或第二方面或其中任意一种可能的实现方式所述的无代码开发平台的程序调试方法。
第六方面,本申请提供一种计算机可读介质,该计算机可读介质存储用于设备执行的程序代码,该程序代码包括用于执行如第一方面或第二方面或其中任意一种可能的实现方式所述的无代码开发平台的程序调试方法。
第七方面,本申请提供一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行如第一方面或第二方面或其中任意一种可能的实现方式所述的无代码开发平台的程序调试方法。
第八方面,本申请提供一种无代码开发平台的程序调试装置,包括与存储器耦合的处理器,所述存储器用于存储程序代码,所述处理器用于执行所述程序代码以实现如第一方面或第二方面或其中任意一种可能的实现方式所述的无代码开发平台的程序调试方法。
可选地,所述装置还可以包括所述存储器。可选地,所述装置还可以包括通信接口。
第九方面,本申请提供一种计算设备,包括与存储器耦合的处理器,所述存储器用于存储程序代码,所述处理器用于执行所述程序代码以实现如第一方面或第二方面或其中任意一种可能的实现方式所述的无代码开发平台的程序调试方法。
可选地,所述计算设备还可以包括所述存储器。可选地,所述装置还可以包括通信接口。
第十方面,本申请提供一种无代码开发平台的程序调试系统,包括存储和处理器,所述存储器用于存储程序代码,所述处理器用于执行所述程序代码以实现如第一方面或第二方面或其中任意一种可能的实现方式所述的无代码开发平台的程序调试方法。
附图说明
图1为本申请一个实施例提供的无代码开发平台的程序调试系统示意图;
图2为本申请一个实施例提供的无代码开发平台的程序调试方法的示意性流程图;
图3为本申请另一实施例提供的产生第一调试指令的示意性流程图;
图4为本申请一个实施例提供的无代码开发平台的程序调试装置的结构示意图;
图5为本申请一个实施例提供的无代码开发平台的程序调试装置的结构示意图;
图6为本申请另一个实施例提供的无代码开发平台的程序调试装置的结构示意图。
具体实施方式
为于理解,首先对本申请所涉及到的相关术语进行说明。
1、B/S架构
浏览器/服务器(browser/server,B/S)架构,是随着互联网技术的兴起,对客户端/服务器(client/server,C/S)架构的一种变化或者改进的架构。在这种架构下,用户工作界面是通过浏览器端来实现,但是主要事务逻辑在服务器端实现。B/S架构是全球广域网(world wide web,Web)兴起后的一种网络架构模式,这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,如网页浏览器(internet explorer,IE),服务器安装甲骨文(oracle)或结构化查询语言(structured query language server,SQL)等数据库,浏览器通过Web同数据库进行数据交互。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。
图1为本申请一个实施例提供的无代码开发平台的程序调试系统示意图。如图1所示,该调试系统100包括浏览器端110和服务器端120。其中,浏览器端110包括指令发生器111、代码处理器112、通信处理器113和结果展示器114。服务器端120包括通信处理器121、指令与代码处理器122、任务调度器123和调试执行器124。在此说明的是,浏览器端110可以是任意一种浏览器,例如IE浏览器或者谷歌浏览器,服务器端120可以是支持调试功能的服务器,此处对此不做限定。
对于图1所示的调试系统,由于是无代码开发平台,对于用户来说,与传统的编写代码不同,其看到的是一个一个的逻辑语句,因此用户可以通过在浏览器端110包括的功能界面上绘制程序,开发出具体的业务系统,而不需要写出具体的代码。当用户绘制好程序之后,需要对该程序进行调试,此时指令发生器111接收用户的指令产生调试的指令信息,代码处理器112可以将其绘制的程序转换为对应的代码程序,从而使得可以对程序进行调试。由于是跨浏览器端和服务器端的调试,因此通过浏览器端110的通信处理器113将指令信息与代码程序发送到服务器端的通信处理器121。当服务器端的通信处理器121接收到通信处理器113发送的信息后,首先通过指令与代码处理器122对发送过来的信息进行分析,从而能够获知需要调试的代码和当前的指令性或其他参数信息,然后再通过任务调度器123管理当前的调试任务和通过调试执行器124执行调试工作。在调试执行器124调试完成时,再将调试的结果信息返回给通信处理器121,通信处理器121再将该调试的结果信息返回给浏览器端110的通信处理器113,通信处理器113收到该调试的结果信息后,又发送给浏览器端的结果展示器114,以便用户对调试结果进行查看分析。
目前,图1所示调试方法主要是根据所在项目的实际情况,对表单项的超文本标记语言(hyper text markup language,HTML)代码结构进行配置;指定表单初始化接口地址或输入JSON格式数据源,JSON为JavaScript Object Notation的缩写;在数据展示区,以JSON格式展示整个初始化数据;在图形展示区,呈现最终的表单项;将表单输入项按照最初配置的数据格式,以JSON格式提交到接口;根据最初配置的数据格式,生成对应的HTML代码,并直接补充到项目代码中。
然而,现有的调试方法只能以无代码开发能力平台提供的完整接口作为最小测试单元来完成调试,这种调试方法不能有效地检测出软件中的错误,从而使得错误信息无法精确定位。作为一种示例,对于一个接口包括了10行语句,现有的调试方法只能将10个语句作为整体进行调试,而不能细化到该接口里面的每一个语句,因此当调试完成后,如果返回错误信息,不能够确定是该10行里面的哪一行。
图2为本申请一个实施例提供的无代码开发平台的程序调试方法的示意性流程图。本实施例中,所述无代码开发平台是基于浏览器端和服务器端架构的开发平台。如图2所示,本实施例的方法可以包括S201、S202、S203、S204、S205、S206和S207。该调试方法可以由图1所示的调试系统100来执行。
S201、获取第一程序代码,所述第一程序代码包括多条语句。
应理解,本申请实施例中的第一代码程序,可以是用户在无代码开发平台的浏览器端绘制的逻辑语句组合起来的逻辑程序,也可以是对逻辑语句组合起来的逻辑程序进行转化后的程序。
作为一种示例,用户在无代码开发平台的浏览器端绘制总共绘制了10条逻辑语句来完成某个功能。
作为另一种示例,用户在无代码开发平台的浏览器端绘制总共绘制了10条逻辑语句后,通过代码转化器将10条逻辑语句转化为对应的具体代码。
应理解,由于是无代码开发平台,因此,对于用户来说,其编写的程序不同于在传统编程里面的具体的代码,其看到的都是用于生成具体代码的逻辑语句。
S202、接收用户输入的断点指示信息,所述断点指示信息用于指示对第一程序代码进行断点调试时的断点位置。
应理解,程序中经常会或多或少出现错误,此时就需要对程序进行跟踪,找到语句出错的位置。
断点调试是调试中非常重要的一个手段。由于在执行到某些代码前需要执行许多其它代码,不可能用单步跟踪一条一条执行过来,这时只要在需要暂停的地方设置一个断点,然后让程序运行,当执行到这个断点位置时不需要用户干预就会暂停并返回集成调试程序,从而进一步找到错误处。
在一种可实现方式中,用户可以通过断点管理器为第一程序代码设置断点指示信息。作为一种示例,用户在无代码开发平台的浏览器端绘制应用程序的第一代码程序后,通过鼠标点击逻辑单元来表示断点指示信息。例如,对第一代码程序的某一逻辑语句奇次点击,表示设置该逻辑语句所在的行数为断点位置,如果是偶次点击,则可以移除该逻辑语句所在行的断点。
S203、在第一程序代码中的至少一个语句中每个语句之后添加断点语句,得到第二程序代码,所述至少一个语句包括断点位置所指示的语句。
例如,用户绘制的第一程序代码包括10行逻辑语句,在用户第6行与第9行的逻辑单元奇次点击,确定指示断点位置之后,在第6行与第9行的逻辑单元之后添加断点语句,该断点语句用于指示当程序运行到该断点位置时,程序停止,并返回调试结果信息。
应理解,本实施例中的第二代码程序是添加了断点语句之后的程序代码,是能够进行调试的程序代码。
作为一种示例,当第一代码程序为逻辑语句组合起来的逻辑程序时,在设置了断点的逻辑语句后面加入断点语句,然后通过代码转化器将加入了断点语句的逻辑程序转化为第二代码程序。
作为另一种示例,当第一代码程序为已经通过代码转化器转化为具体代码时,则根据断点指示信息,在具体代码的对应位置添加断点语句。
S204、接收用户输入的第一调试指令,所述第一调试指令用于指示服务器端对第二程序代码进行断点调试。
本申请实施例中,第一调试指令可以包括执行至下一个断点。
作为一种示例,对于包括10行语句的程序,当在第6行设置了断点信息后,如果第一调试指令为执行至下一个断点,则在调试的时候,程序将在运行完第6行代码后停止。
可选地,当获得第一调试指令后,如果当前无调试任务,则由指令发生器为本次调试任务生成任务唯一标识,并将该任务唯一标识加入到第一调试指令中。
可选地,若本次调试需要初始化的运行参数,则指令发生器获取用户设置的初始化参数,并将初始化参数加入到所述第一调试指令中。
S205、向服务器端发送第二程序代码和第一调试指令,相应地,服务器端接收浏览器端发送的第二程序代码和第一调试指令。
应理解,由于浏览器端与服务器端是跨平台的,因此,本申请实施例通过向服务器端发送第二程序代码和第一调试指令,让服务器获得需要进行调试的程序和如何去调试的控制信息。
在一种可实现方式中,可以通过浏览器端的通信处理器,将第二代码程序和第一调试指令发送到服务器端,从而用于与服务器端的调试通讯。
S206、服务器端根据第一调试指令,对第二程序代码进行调试。
应理解,第一调试指令中,可以包括调试的控制信息、初始化参数和调试任务的唯一标识,因此服务器接收到该第一调试指令中,应首先对第一调试指令进行分析,以得到第一调试指令中的控制信息、初始化参数和调试任务的唯一标识。
作为一种示例,当服务器接收到第二程序代码和调试指令后,由于第二代码中已经在需要进行断点调试的语句后面加入了断点语句,因此当第一调试指令中的控制信息为执行至下一个断点时,服务器将对第二程序进行调试,当执行到断点语句时,则停止当前程序的运行,并向浏览器端返回调试的结果信息,例如当前任务的初始化参数变化、系统参数变化信息、返回值等信息。
可选地,服务器端在获得调试任务的唯一标识之后,可以先通过任务调度器,根据调试任务唯一标识在无代码开发平台中正在调试的任务中查找该唯一标识所代表的调试任务,如果未查找到有效调试任务,并且控制信息为执行至下一个断点,则由任务调度器根据调试任务唯一标识创建调试任务,然后在创建调试任务后,对第二程序代码进行断点调试。
在此说明的是,调试的具体过程可以参考相关技术描述,此处不做限定。
本申请实施例提供的程序调试方法,通过在第一程序代码中的至少一个语句中每个语句之后添加断点语句,从而当运行到程序的断点语句时能够停止程序的运行,获得调试的结果,相比完整接口的调试方法,该调试方法可以定位到接口里面的语句,因此实现了语句级的调试,从而可以完成对错误信息的精确定位。
此外,通过浏览器端向服务器端发送第二调试代码和第一调试指令,与服务器端向浏览器端发送调试结果信息,克服了浏览器端与服务器端之间的跨平台调试的问题。
可选地,在上述S206之后,还可以包括S207:将服务器端调试的结果信息发送给浏览器端,从而使得用户可以在浏览器端对调试的结果信息进行分析。
图3为本申请另一实施例提供的产生第一调试指令的示意性流程图。如图3所示,本申请实施例的方法包括:
S301、判断本次需要调试的第二代码程序是否需要初始化参数,如果需要,则执行S302,否则,执行S303。
应理解,一些程序的运行需要初始化参数,因此,在用户输入第一调试指令前,先对程序运行是否需要初始化参数进行判断。
S302、设置初始化运行参数。
例如,如果本次调试的程序需要初始化参数,则用户可以对该初始化参数进行设置。
在一种可实施方式中,用户可以通过浏览器端的界面来设置初始化参数,例如点击浏览器端的设置执行参数按钮进行初始化参数的设置。
S303、接收用户输入的第一调试指令。
应理解,要对程序进行调试,就必须要让服务器端获知如何进行调试的指令。例如是单步执行、执行至下一个断点、运行至结束或者停止调试。
在一种可实现方式中,用户可以通过浏览器端的指令发生器按钮输入第一调试指令。
S304、判断是否有运行中的任务,如果有,执行S306,否则,则执行S305。
应理解,在进行程序调试的时候,可能有正在进行调试的程序,因此需要对是否有运行中的任务进行判断。
S305、创建调试任务唯一标识。
例如,当前用户输入了第一调试指令后,比如是执行至下一个断点,如果当前没有正在执行的调试程序,指令发生器便为此次调试创建调试任务唯一标识,用来标识此次调试。
S306、在第一调试指令中加入调试任务唯一标识和初始化运行参数。
应理解,当服务器端需要执行调试功能时,需要知道对哪个程序进行调试,也需要该如何去进行调试,因此在发送给服务器端的第一调试指令中,除了用户输入的指令信息,如执行至下一个断点,还应包括指令发生器为此次调试创建的任务唯一标识,如果程序的运行需要初始化参数信息,则也应该在第一调试指令中加入初始化运行参数信息。
本申请实施例提供的程序调试方法,通过在第一调试指令中加入调试任务唯一标识和初始化运行参数,使得服务器端可以根据第一调试指令去对第二程序代码进行调试。
作为一个可选的实施例,当S203中的至少一个语句包括第一程序代码中所有语句,此时,所述方法还包括:浏览器端接收用户输入的第二调试指令,所述第二调试指令用于指示服务器端对第二程序代码进行单句调试;向服务器端发送第二调试指令;相应地,服务器端接收浏览器端发送的第二调试指令;并根据第二调试指令,对第二程序代码进行调试。
本实施例中,当至少一个语句包括断点位置所指示的语句时,如果至少一个语句包括第一程序代码中所有语句,那么在在第一程序代码中的至少一个语句中每个语句之后添加断点语句,也就是在第一程序代码的所有语句后面都添加断点语句,相应地,第二程序代码中的每一个语句之后都有一个断点语句。此时,浏览器端还可以接收用户输入的单句调试指令,即第二调试指令。当将每个语句之后都有一个断点语句的第二代码程序和第二调试指令发送到服务器端后,服务器端可以根据第二调试指令对第二程序代码进行调试。
作为一种示例,获取的第一程序代码中包括10个语句,当至少一个语句包括第一程序代码中所有语句时,在该10个语句的每个语句后面添加断点语句,也就是说,第二程序代码总共包括20个语句,此时,在服务器端对第二程序代码进行调试时,如果服务器端接收到单句调试指令,例如是单步执行,则可以在每执行完一个语句后,根据其后面的断点语句而停下来,并返回该语句的调试信息。
应理解,本实施例中,服务器端也可以接收第一调试指令,此时服务器端在执行调试时,将会在执行完本次调试任务开始的第一行代码后,结束调试,并返回调试的结果信息。
本申请实施例提供的程序调试方法,通过在第一程序代码中的所有语句之后添加断点语句,从而可以在执行完每一个语句时停止程序的运行。
作为一个可选的实施例,所述方法还包括:浏览器端接收用户输入的第三调试指令,所述第三调试指令用于指示服务器端将第二程序代码执行到结束;向服务器端发送第三调试指令;相应地,服务器端接收浏览器端发送的第三调试指令;并根据第三调试指令,对所述第二程序代码进行调试。
应理解,用户有可能想在执行完所有程序之后,通过分析程序的执行结果来选择将断点语句设置在哪一行,因此,本申请实施例通过设置第三调试指令来指示服务器端对第二程序代码执行到结束。
还应理解,当服务器端接收到第三调试指令,例如运行至结束指令,此时不论第二程序代码中是否包含断点语句,服务器端都不执行断点语句,一直运行至第二程序代码的最后一个语句。
作为一种示例,假设第一程序代码包括10个语句,在第二程序代码中,第6行与第9行的代码语句之后有断点语句,该断点语句用于指示当程序运行到该断点位置时,程序停止,并返回调试结果信息。但是,如果此时服务器端接收到的指令是运行至结束,那么服务器端在执行第二程序代码时,将会跳过第6行与第9行之后的断点语句,一直执行到最后一行结束。
作为另一种示例,假设第一程序代码包括10个语句,在第二程序代码中,所有的代码语句之后都包括断点语句,该断点语句用于指示当程序运行到该断点位置时,程序停止,并返回调试结果信息。但是,如果此时服务器端接收到的指令是运行至结束,那么服务器端在执行第二程序代码时,将会跳过所有的断点语句,一直执行到最后一行结束。
本申请实施例提供的程序调试方法,通过第三调试指令,来控制服务器端对第二程序代码的调试。由于服务器端在接收到该三调试指令后,不论第二程序代码中是否包括断点语句,都会跳过断点语句,运行至最后一个语句,增加了程序调试过程中的灵活性。
可选地,所述方法还包括:浏览器端接收用户输入的第四调试指令,所述第四调试指令用于指示服务器端停止执行第二程序代码;向服务器端发送第四调试指令;相应地,服务器端接收浏览器端发送的第四调试指令;并根据第四调试指令,对第二程序代码进行调试。
应理解,用户有可能想要停止正在进行调试的程序,因此,本申请实施例通过设置第四调试指令来指示服务器端停止正在调试的程序。
作为一种示例,当服务器端接收到第二程序代码和第一调试指令时,所述服务器端将会在第二程序代码的第一个包括断点语句的位置停下来。但是,如果此时服务器端还没有执行到第一个断点语句,又接收到了第四调试指令,则服务器端将会停止对第二程序代码的调试。
可选地,服务器端在接收到第四调试指令后,可以通过调试执行器停止调试,并通过任务调度器删除调试任务。
图4为本申请一个实施例提供的无代码开发平台的程序调试装置的结构示意图。图4所示的程序调试装置可以用于执行前述任意一个实施例中与浏览器端对应的各个流程和/或步骤。
如图4所示,本实施例的程序调试装置400包括:获取模块401、接收模块402、断点处理模块403、发送模块404。
其中,获取模块401:用于获取第一程序代码和用户输入的第一调试指令,所述第一程序包括多条语句;接收模块402:用于接收用户输入的断点指示信息和第一调试指令,所述断点指示信息用于指示对所述第一程序代码进行断点调试时的断点位置,所述第一调试指令用于指示所述服务器端对所述第二程序代码进行断点调试;断点处理模块403:用于在所述第一程序代码中的至少一个语句中每个语句之后添加断点语句,得到第二程序代码,所述至少一个语句包括所述断点位置所指示的语句;发送模块404:用于向服务器端发送所述第二程序代码和第一调试指令。
作为一种示例,获取模块401可以用于执行图2所述的无代码开发平台的程序调试方法中的获取第一程序代码的步骤。例如,第一获取模块用于执行S201。
作为一种示例,断点处理模块403可以用于执行图2所述的无代码开发平台的程序调试方法中的添加断点语句的步骤。例如断点处理模块403用于执行S203。
作为一种示例,发送模块404可以用于执行图2所述的无代码开发平台的程序调试方法中的向服务器端发送第二程序代码和第一调试指令的步骤。例如发送模块404用于执行S205。
在一种可能的实现方式中,所述至少一个语句包括所述第一程序代码中所有语句;所述接收模块402还用于:接收用户输入的第二调试指令,所述第二调试指令用于指示所述服务器端对所述第二程序代码进行单句调试;相应地,所述发送模块404还用于:向所述服务器端发送第二调试指令。
在一种可能的实现方式中,所述接收模块402还用于:接收用户输入的第三调试指令,所述第三调试指令用于指示所述服务器端将所述第二程序代码执行到结束;相应地,所述发送模块404还用于:向所述服务器端发送第三调试指令。
在一种可能的实现方式中,所述接收模块402还用于:接收用户输入的第四调试指令,所述第四调试指令用于指示所述服务器端停止执行所述第二程序代码;相应地,所述发送模块404还用于:向所述服务器端发送第四调试指令。
图5为本申请一个实施例提供的无代码开发平台的程序调试装置的结构示意图。图5所示的程序调试装置可以用于执行前述任意一个实施例中与服务器端对应的各个流程和/或步骤。
如图5所示,本实施例的程序调试装置500包括:接收模块501、调试模块502。
其中,接收模块501:用于接收浏览器端发送的第二程序代码和第一调试指令,所述第二程序代码包括在第一程序代码中的至少一个语句中每个语句之后添加断点语句的程序代码,所述至少一个语句包括断点位置所指示的语句,所述第一程序包括多条语句,所述第一调试指令用于指示所述服务器端对所述第二程序代码进行断点调试。调试模块502:用于根据所述第一调试指令,对所述第二程序代码进行调试。
作为一种示例,接收模块501可以用于执行图2所述的无代码开发平台的程序调试方法中服务器端接收第二程序代码或者第一调试指令的步骤。例如,接收模块501用于执行S205。
作为一种示例,调试模块502可以用于执行图2所述的无代码开发平台的程序调试方法中的服务器端调试第二程序代码的步骤。例如调试模块502用于执行S206。
在一种可能的实现方式中,所述至少一个语句包括所述第一程序代码中所有语句;所述接收模块501还用于:接收所述浏览器端发送的第二调试指令,所述第二调试指令用于指示所述服务器端对所述第二程序代码进行单句调试;相应地,所述调试模块502还用于:根据所述第二调试指令,对所述第二程序代码进行调试。
在一种可能的实现方式中,所述接收模块501还用于:接收所述浏览器端发送的第三调试指令,所述第三调试指令用于指示所述服务器端将所述第二程序代码执行到结束;相应地,所述调试模块502还用于:根据所述第三调试指令,对所述第二程序代码进行调试。
在一种可能的实现方式中,所述接收模块501还用于:接收所述浏览器端发送的第四调试指令,所述第四调试指令用于指示所述服务器端停止执行所述第二程序代码;相应地,所述调试模块502还用于:根据所述第四调试指令,对所述第二程序代码进行调试。
本申请实施还提供了一种程序调试系统,该程序调试系统可以包括上述图4所示的装置(即装置400)和/或上述图5所示的装置(即装置500)。
图6为本申请另一个实施例提供的无代码开发平台的程序调试装置的结构示意图。图6所示的装置可以用于执行前述任意一个实施例所述的方法。
如图6所示,本实施例的装置600包括:存储器601、处理器602、通信接口603以及总线604。其中,存储器601、处理器602、通信接口603通过总线604实现彼此之间的通信连接。
存储器601可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM)。存储器601可以存储程序,当存储器601中存储的程序被处理器602执行时,处理器602用于执行图2所示的方法的各个步骤。
处理器602可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),或者一个或多个集成电路,用于执行相关程序,以实现本申请各个实施例中的方法。
处理器602还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请各个实施例的方法的各个步骤可以通过处理器602中的硬件的集成逻辑电路或者软件形式的指令完成。
上述处理器602还可以是通用处理器、数字信号处理器(digital signalprocessing,DSP)、专用集成电路(ASIC)、现成可编程门阵列(field programmable gatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器601,处理器602读取存储器601中的信息,结合其硬件完成本申请的装置包括的单元所需执行的功能,例如,可以执行图2或图3所示实施例的各个步骤/功能。
通信接口603可以使用但不限于收发器一类的收发装置,来实现装置600与其他设备或通信网络之间的通信。
总线604可以包括在装置600各个部件(例如,存储器601、处理器602、通信接口603)之间传送信息的通路。
应理解,本申请实施例所示的装置600可以是电子设备,或者,也可以是配置于电子设备中的芯片。
应理解,本申请实施例中的处理器可以为中央处理单元(central processingunit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random accessmemory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系,但也可能表示的是一种“和/或”的关系,具体可参考前后文进行理解。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (12)

1.一种无代码开发平台的程序调试方法,其特征在于,所述无代码开发平台是基于浏览器端和服务器端架构的开发平台,所述方法由所述浏览器端执行,所述方法包括:
获取第一程序代码,所述第一程序包括多条语句;
接收用户输入的断点指示信息,所述断点指示信息用于指示对所述第一程序代码进行断点调试时的断点位置;
在所述第一程序代码中的至少一个语句中每个语句之后添加断点语句,得到第二程序代码,所述至少一个语句包括所述断点位置所指示的语句;
向服务器端发送所述第二程序代码;
接收用户输入的第一调试指令,所述第一调试指令用于指示所述服务器端对所述第二程序代码进行断点调试;
向所述服务器端发送第一调试指令。
2.根据权利要求1所述的方法,其特征在于,所述至少一个语句包括所述第一程序代码中所有语句;
所述方法还包括:
接收用户输入的第二调试指令,所述第二调试指令用于指示所述服务器端对所述第二程序代码进行单句调试;
向所述服务器端发送第二调试指令。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
接收用户输入的第三调试指令,所述第三调试指令用于指示所述服务器端将所述第二程序代码执行到结束;
向所述服务器端发送第三调试指令。
4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
接收用户输入的第四调试指令,所述第四调试指令用于指示所述服务器端停止执行所述第二程序代码;
向所述服务器端发送第四调试指令。
5.一种无代码开发平台的程序调试方法,其特征在于,所述无代码开发平台是基于浏览器端和服务器端架构的开发平台,所述方法由所述服务器端执行,所述方法包括:
接收浏览器端发送的第二程序代码,所述第二程序代码包括在第一程序代码中的至少一个语句中每个语句之后添加断点语句的程序代码,所述至少一个语句包括断点位置所指示的语句,所述第一程序包括多条语句;
接收所述浏览器端发送的第一调试指令,所述第一调试指令用于指示所述服务器端对所述第二程序代码进行断点调试;
根据所述第一调试指令,对所述第二程序代码进行调试。
6.根据权利要求5所述的方法,其特征在于,所述至少一个语句包括所述第一程序代码中所有语句;
所述方法还包括:
接收所述浏览器端发送的第二调试指令,所述第二调试指令用于指示所述服务器端对所述第二程序代码进行单句调试;
根据所述第二调试指令,对所述第二程序代码进行调试。
7.根据权利要求5或6所述的方法,其特征在于,所述方法还包括:
接收所述浏览器端发送的第三调试指令,所述第三调试指令用于指示所述服务器端将所述第二程序代码执行到结束;
根据所述第三调试指令,对所述第二程序代码进行调试。
8.根据权利要求5或6所述的方法,其特征在于,所述方法还包括:
接收所述浏览器端发送的第四调试指令,所述第四调试指令用于指示所述服务器端停止执行所述第二程序代码;
根据所述第四调试指令,对所述第二程序代码进行调试。
9.一种无代码开发平台的程序调试装置,其特征在于,所述无代码开发平台是基于浏览器端和服务器端架构的开发平台,所述调试装置应用于浏览器端,所述调试装置包括:
获取模块,用于获取第一程序代码和用户输入的第一调试指令,所述第一程序包括多条语句;
接收模块,用于接收用户输入的断点指示信息和第一调试指令,所述断点指示信息用于指示对所述第一程序代码进行断点调试时的断点位置,所述第一调试指令用于指示所述服务器端对所述第二程序代码进行断点调试;
断点处理模块,用于在所述第一程序代码中的至少一个语句中每个语句之后添加断点语句,得到第二程序代码,所述至少一个语句包括所述断点位置所指示的语句;
发送模块,用于向服务器端发送所述第二程序代码和第一调试指令。
10.一种无代码开发平台的程序调试装置,其特征在于,所述无代码开发平台是基于浏览器端和服务器端架构的开发平台,所述调试装置应用于服务器端,所述调试装置包括:
接收模块,用于接收浏览器端发送的第二程序代码和第一调试指令,所述第二程序代码包括在第一程序代码中的至少一个语句中每个语句之后添加断点语句的程序代码,所述至少一个语句包括断点位置所指示的语句,所述第一程序包括多条语句,所述第一调试指令用于指示所述服务器端对所述第二程序代码进行断点调试;
调试模块,用于根据所述第一调试指令,对所述第二程序代码进行调试。
11.一种芯片,其特征在于,包括至少一个处理器和通信接口,所述通信接口和所述至少一个处理器通过线路互联,所述至少一个处理器用于运行计算机程序或指令,以执行如权利要求1至8中任一项所述的方法。
12.一种计算机可读介质,其特征在于,所述计算机可读介质存储用于计算机执行的程序代码,该程序代码包括用于执行如权利要求1至8中任一项所述的方法的指令。
CN202110206336.3A 2021-02-24 2021-02-24 一种无代码开发平台的程序调试方法和程序调试装置 Pending CN114968751A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110206336.3A CN114968751A (zh) 2021-02-24 2021-02-24 一种无代码开发平台的程序调试方法和程序调试装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110206336.3A CN114968751A (zh) 2021-02-24 2021-02-24 一种无代码开发平台的程序调试方法和程序调试装置

Publications (1)

Publication Number Publication Date
CN114968751A true CN114968751A (zh) 2022-08-30

Family

ID=82974231

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110206336.3A Pending CN114968751A (zh) 2021-02-24 2021-02-24 一种无代码开发平台的程序调试方法和程序调试装置

Country Status (1)

Country Link
CN (1) CN114968751A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117076314A (zh) * 2023-08-22 2023-11-17 深圳计算科学研究院 一种轻量级的pl/sql语言调试器实现方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719093A (zh) * 2009-12-09 2010-06-02 上海普元信息技术有限责任公司 企业Web应用系统中实现跨浏览器Javascript调试的系统及其方法
CN103473177A (zh) * 2013-09-25 2013-12-25 北京大学 一种在线调试c/c++程序的方法
CN104424100A (zh) * 2013-09-03 2015-03-18 博雅网络游戏开发(深圳)有限公司 线上flash的调试方法和系统
CN108829591A (zh) * 2018-05-31 2018-11-16 北京理工大学 一种基于Web的协同调试系统及方法
CN111984235A (zh) * 2020-08-19 2020-11-24 上海翘腾科技有限公司 一种可定制化的前端低代码开发系统及方法
CN112256570A (zh) * 2020-10-19 2021-01-22 网易(杭州)网络有限公司 远程调试方法、装置、设备及存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101719093A (zh) * 2009-12-09 2010-06-02 上海普元信息技术有限责任公司 企业Web应用系统中实现跨浏览器Javascript调试的系统及其方法
CN104424100A (zh) * 2013-09-03 2015-03-18 博雅网络游戏开发(深圳)有限公司 线上flash的调试方法和系统
CN103473177A (zh) * 2013-09-25 2013-12-25 北京大学 一种在线调试c/c++程序的方法
CN108829591A (zh) * 2018-05-31 2018-11-16 北京理工大学 一种基于Web的协同调试系统及方法
CN111984235A (zh) * 2020-08-19 2020-11-24 上海翘腾科技有限公司 一种可定制化的前端低代码开发系统及方法
CN112256570A (zh) * 2020-10-19 2021-01-22 网易(杭州)网络有限公司 远程调试方法、装置、设备及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117076314A (zh) * 2023-08-22 2023-11-17 深圳计算科学研究院 一种轻量级的pl/sql语言调试器实现方法

Similar Documents

Publication Publication Date Title
Sadowski et al. Tricorder: Building a program analysis ecosystem
US10621068B2 (en) Software code debugger for quick detection of error root causes
AU2017327823B2 (en) Test case generator built into data-integration workflow editor
US8336032B2 (en) Implementing enhanced template debug
US20140372985A1 (en) API Rules Verification Platform
US20080301648A1 (en) Model oriented debugging
CN103577168A (zh) 测试用例创建系统及方法
US20090319995A1 (en) Enhancing source code debugging and readability using visual symbols
US9648139B2 (en) Inserting server-side breakpoints requested by remote development clients
JP2012513648A (ja) デバッグパイプライン
CN113778848A (zh) 测试代码生成方法、装置、计算机系统及介质
CN110704297A (zh) 代码评审方法、装置、计算机设备及存储介质
CN110955409B (zh) 在云平台上创建资源的方法和装置
US20180173520A1 (en) Transactional distributed data analysis and transformation
CN110908915B (zh) 一种测试覆盖率的展示方法、装置及计算机系统
JP2017117442A (ja) コンパイラー型情報を利用するプロセッサトレースログにおけるデータフロー分析のための方法及び装置
CN111897727A (zh) 软件测试方法、装置、计算机设备及存储介质
CN111459814A (zh) 自动化测试用例生成方法、装置及电子设备
KR101689984B1 (ko) 프로그래머블 컨트롤러, 프로그래머블 컨트롤러 시스템 및 실행 에러 정보 작성 방법
Ghosh et al. A systematic review on program debugging techniques
Fedorova et al. Performance comprehension at WiredTiger
CN114968751A (zh) 一种无代码开发平台的程序调试方法和程序调试装置
CN111324332A (zh) 大数据任务的处理方法及系统、电子设备、存储介质
CN113220586A (zh) 一种自动化的接口压力测试执行方法、装置和系统
CN114741294A (zh) 一种页面的调试方法、装置、设备及存储介质

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