CN103902454A - 一种软件故障的定位方法和装置 - Google Patents

一种软件故障的定位方法和装置 Download PDF

Info

Publication number
CN103902454A
CN103902454A CN201410138417.4A CN201410138417A CN103902454A CN 103902454 A CN103902454 A CN 103902454A CN 201410138417 A CN201410138417 A CN 201410138417A CN 103902454 A CN103902454 A CN 103902454A
Authority
CN
China
Prior art keywords
zero hour
fault
software
running status
location
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
CN201410138417.4A
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.)
Anyi Hengtong Beijing Technology Co Ltd
Original Assignee
Anyi Hengtong Beijing 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 Anyi Hengtong Beijing Technology Co Ltd filed Critical Anyi Hengtong Beijing Technology Co Ltd
Priority to CN201410138417.4A priority Critical patent/CN103902454A/zh
Publication of CN103902454A publication Critical patent/CN103902454A/zh
Priority to KR1020157037064A priority patent/KR101748833B1/ko
Priority to US14/902,476 priority patent/US9983987B2/en
Priority to PCT/CN2014/094302 priority patent/WO2015154517A1/zh
Priority to BR112015032883A priority patent/BR112015032883A2/pt
Priority to JP2016533818A priority patent/JP6259522B2/ja
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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • 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/366Software debugging using diagnostics

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)
  • Debugging And Monitoring (AREA)
  • Software Systems (AREA)

Abstract

本发明提供了一种软件故障的定位方法及装置,方法包括:确定定位开始时刻;获得定位开始时刻的***环境;在所述定位开始时刻的***环境中,重现软件从定位开始时刻到故障发生时刻的运行状态;根据重现的运行状态确定导致软件故障的问题。装置包括:确定模块、获得模块、重现模块和分析模块。本发明提供的方案,可以实现软件故障的自动定位,帮助用户意识到操作问题,帮助软件研发人员获得软件设计的缺陷。

Description

一种软件故障的定位方法和装置
技术领域
本发明涉及计算机领域,尤其涉及一种软件故障的定位方法和装置。
背景技术
现有技术中,当计算机中运行的软件发生故障时,只能等待软件自行恢复或者强行停止软件运行。用户并没有任何一种途径确定软件故障的发生原因,比如到底是自己的操作问题,还是软件本身的问题。如果是用户的操作问题导致的软件故障,而且用户并没有认识到,那么下一次用户的同样操作仍然会导致软件故障。即便用户求助于软件的研发人员,研发人员也无法定位导致故障的原因。
发明内容
本发明的目的在于提供一种软件故障的定位方法和装置。
为达到上述目的,一方面,本发明提供了一种软件故障的定位方法,包括:
确定定位开始时刻;
获得定位开始时刻的***环境;
在所述定位开始时刻的***环境中,重现软件从定位开始时刻到故障发生时刻的运行状态;
根据重现的运行状态确定导致软件故障的问题。
另一方面,本发明提供了一种软件故障的定位装置,包括:
确定模块,用于确定定位开始时刻;
获得模块,用于获得定位开始时刻的***环境;
重现模块,用于在所述定位开始时刻的***环境中,重现软件从定位开始时刻到故障发生时刻的运行状态;
分析模块,用于根据重现的运行状态确定导致软件故障的问题。
本发明提供的方案,可以实现软件故障的自动定位,帮助用户意识到操作问题,帮助软件研发人员获得软件设计的缺陷。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明实施例一提供的软件故障的定位方法流程图;
图2为本发明实施例二提供的软件故障的定位装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的实施例作详细描述。
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
图1为本发明实施例一提供的软件故障的定位方法流程图,如图1所示,该方法包括:
101、确定定位开始时刻;
102、获得定位开始时刻的***环境;
103、在所述定位开始时刻的***环境中,重现软件从定位开始时刻到故障发生时刻的运行状态;
104、根据重现的运行状态确定导致软件故障的问题。
对于上述101中提到的确定定位开始时刻需要说明的是,定位开始时刻与软件的开始运行时刻并不是相同的概念。本发明提供了这样一种确定定位开始时刻的方法:
将软件出现故障的本次运行,在时间上切分为多个时间切片;
选择第i个时间切片的开始时刻作为定位开始时刻,所述i为常数。
也就是说,将软件的开始运行时刻到软件的故障发生时刻,作为软件正常的运行时间T,那么将T切分为多个时间切片,可以等分,也可以不等分,不做限定。选择第i个时间切片的开始时刻作为定位开始时刻,其中的i为常数。这里的常数i通常从距离故障发生时刻最近的时间切片开始选择。这种选择方式是为了在103中的重现过程尽可能短,避免对用户***性能的过多影响。
在软件正常的运行时间T内,可以不断的保存时间点与***环境之间的关系,这样102中就可以根据定位开始时刻来获得***环境。
103中重现软件从定位开始时刻到故障发生时刻的运行状态,具体包括:根据已记录的从定位开始时刻到故障发生时刻的鼠标点击事件,重现从定位开始时刻到故障发生时刻的运行状态。
进一步的,在重现从定位开始时刻到故障发生时刻的运行状态之前,将已记录的鼠标点击事件中的无效点击事件进行删除,获得有效点击事件。这样可以进一步提高103中的重现效率。
还需要说明的是,根据重现的运行状态确定导致软件故障的问题,包括:
如果重现的运行状态与故障发生时刻的运行状态不符,则重新确定定位开始时刻;
如果重现的运行状态与故障发生时刻的运行状态相符,则分析上述所有的有效点击事件,确定软件的执行逻辑,进而定位软件故障的发生原因。
本发明提供的软件故障的定位方法,通过重现故障发生之前一段时间内的软件运行状态来实现软件故障的自动定位,不需要占用太多的资源,帮助用户意识到操作问题,帮助软件研发人员获得软件设计的缺陷。
还需要说明的是,本发明提供的方法可以实施为计算机程序软件,例如根据本发明的实施例可以是一种计算机程序产品,运行该程序产品使计算机执行用于所示范的方法。所述计算机程序产品包括计算机可读存储介质,该介质上包含计算机程序逻辑或代码部分,用于实现所述移动终端的消息的内容的处理方法。所述计算机可读存储介质可以是被安装在计算机中的内置介质或者可从计算机主体拆卸的可移动介质(例如热拔插技术存储设备)。所述内置介质包括但不限于可重写的非易失性存储器,例如RAM、ROM、快闪存储器和硬盘。所述可移动介质包括但不限于:光存储媒体(例如CD-ROM和DVD)、磁光存储媒体(例如MO)、磁存储媒体(例如盒带或移动硬盘)、具有内置的可重写的非易失性存储器的媒体(例如存储卡)和具有内置ROM的媒体(例如ROM盒)。
图2为本发明实施例二提供的软件故障的定位装置结构示意图,如图2所示,该装置是上述方法实施例的执行主体,方法步骤可以参考上述实施例的描述,本实施例中不做赘述。该装置包括:
确定模块201,用于确定定位开始时刻;
获得模块202,用于获得定位开始时刻的***环境;
重现模块203,用于在所述定位开始时刻的***环境中,重现软件从定位开始时刻到故障发生时刻的运行状态;
分析模块204,用于根据重现的运行状态确定导致软件故障的问题。
一种实施方式下,确定模块201包括:
切分单元,用于将软件出现故障的本次运行,在时间上切分为多个时间切片;
选择单元,用于选择第i个时间切片的开始时刻作为定位开始时刻,所述i为常数。
又一种实施方式下,重现模块203包括:
重现单元,用于根据已记录的从定位开始时刻到故障发生时刻的鼠标点击事件,重现从定位开始时刻到故障发生时刻的运行状态。
在上述实施方式的基础上,重现模块203还包括:
获得单元,用于将已记录的鼠标点击事件中的无效点击事件进行删除,获得有效点击事件。
在上述任一实施方式的基础上,确定模块201还用于:
如果重新模块203重现的运行状态与故障发生时刻的运行状态不符,则重新确定定位开始时刻。
本发明提供的软件故障的定位装置,通过重现故障发生之前一段时间内的软件运行状态来实现软件故障的自动定位,不需要占用太多的资源,帮助用户意识到操作问题,帮助软件研发人员获得软件设计的缺陷。
本领域技术人员应当理解,任何具有适当编程装置的计算机***都将能够执行包含在程序产品中的本发明的方法的诸步骤。尽管本说明书中描述的多数具体实施方式都侧重于软件程序,但是作为固件和硬件实现本发明提供的方法的替代实施例同样在本发明要求保护的范围之内。
本发明提供的方案,有效监测了待测界面的流畅度,而且在检测到待测界面卡顿时,可以根据待测界面的类型,如软件界面还是视频界面,来为用户提供更为方便快捷的服务,有效提高了自动化处理的程度和用户的体验。
以上所揭露的仅为本发明的一些较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (10)

1.一种软件故障的定位方法,其特征在于,包括:
确定定位开始时刻;
获得定位开始时刻的***环境;
在所述定位开始时刻的***环境中,重现软件从定位开始时刻到故障发生时刻的运行状态;
根据重现的运行状态确定导致软件故障的问题。
2.根据权利要求1所述的方法,其特征在于,所述确定定位开始时刻包括:
将软件出现故障的本次运行,在时间上切分为多个时间切片;
选择第i个时间切片的开始时刻作为定位开始时刻,所述i为常数。
3.根据权利要求1所述的方法,其特征在于,所述重现软件从定位开始时刻到故障发生时刻的运行状态,具体包括:
根据已记录的从定位开始时刻到故障发生时刻的鼠标点击事件,重现从定位开始时刻到故障发生时刻的运行状态。
4.根据权利要求3所述的方法,其特征在于,所述重现从定位开始时刻到故障发生时刻的运行状态之前,将已记录的鼠标点击事件中的无效点击事件进行删除,获得有效点击事件。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述根据重现的运行状态确定导致软件故障的问题,包括:
如果重现的运行状态与故障发生时刻的运行状态不符,则重新确定定位开始时刻。
6.一种软件故障的定位装置,其特征在于,包括:
确定模块,用于确定定位开始时刻;
获得模块,用于获得定位开始时刻的***环境;
重现模块,用于在所述定位开始时刻的***环境中,重现软件从定位开始时刻到故障发生时刻的运行状态;
分析模块,用于根据重现的运行状态确定导致软件故障的问题。
7.根据权利要求6所述的装置,其特征在于,所述确定模块包括:
切分单元,用于将软件出现故障的本次运行,在时间上切分为多个时间切片;
选择单元,用于选择第i个时间切片的开始时刻作为定位开始时刻,所述i为常数。
8.根据权利要求6所述的装置,其特征在于,所述重现模块具体包括:
重现单元,用于根据已记录的从定位开始时刻到故障发生时刻的鼠标点击事件,重现从定位开始时刻到故障发生时刻的运行状态。
9.根据权利要求8所述的装置,其特征在于,所述重现模块还包括:
获得单元,用于将已记录的鼠标点击事件中的无效点击事件进行删除,获得有效点击事件。
10.根据权利要求6至9中任一项所述的装置,其特征在于,确定模块还用于:
如果重新模块重现的运行状态与故障发生时刻的运行状态不符,则重新确定定位开始时刻。
CN201410138417.4A 2014-04-08 2014-04-08 一种软件故障的定位方法和装置 Pending CN103902454A (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201410138417.4A CN103902454A (zh) 2014-04-08 2014-04-08 一种软件故障的定位方法和装置
KR1020157037064A KR101748833B1 (ko) 2014-04-08 2014-12-19 소프트웨어 고장의 위치 확정 방법, 장치 및 설비
US14/902,476 US9983987B2 (en) 2014-04-08 2014-12-19 Method, apparatus, and device for locating a software failure
PCT/CN2014/094302 WO2015154517A1 (zh) 2014-04-08 2014-12-19 一种软件故障的定位方法、装置及设备
BR112015032883A BR112015032883A2 (pt) 2014-04-08 2014-12-19 método, aparelho e dispositivo para localização de falhas de software
JP2016533818A JP6259522B2 (ja) 2014-04-08 2014-12-19 ソフトウェア障害の位置標定方法、装置及び設備

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410138417.4A CN103902454A (zh) 2014-04-08 2014-04-08 一种软件故障的定位方法和装置

Publications (1)

Publication Number Publication Date
CN103902454A true CN103902454A (zh) 2014-07-02

Family

ID=50993789

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410138417.4A Pending CN103902454A (zh) 2014-04-08 2014-04-08 一种软件故障的定位方法和装置

Country Status (6)

Country Link
US (1) US9983987B2 (zh)
JP (1) JP6259522B2 (zh)
KR (1) KR101748833B1 (zh)
CN (1) CN103902454A (zh)
BR (1) BR112015032883A2 (zh)
WO (1) WO2015154517A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104932979A (zh) * 2015-07-01 2015-09-23 王沛 一种软件故障查找方法和装置
CN104965775A (zh) * 2015-04-23 2015-10-07 腾讯科技(深圳)有限公司 应用软件故障现场的重建方法、服务器及终端
WO2015154517A1 (zh) * 2014-04-08 2015-10-15 安一恒通(北京)科技有限公司 一种软件故障的定位方法、装置及设备
CN114489014A (zh) * 2022-01-27 2022-05-13 东风商用车有限公司 一种总线控制器故障排查方法与***

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107133168B (zh) * 2017-04-25 2020-08-11 中国船舶工业综合技术经济研究院 一种事件序列故障定位方法
CN110489967B (zh) * 2018-05-15 2021-07-27 北京国双科技有限公司 程序运行风险的分析方法及装置
JP7134903B2 (ja) * 2019-03-05 2022-09-12 株式会社日立製作所 不具合再現支援システム、不具合再現支援方法
CN112634696B (zh) * 2020-12-21 2023-01-31 贝壳技术有限公司 故障定位练习方法、装置、电子设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101046765A (zh) * 2006-03-29 2007-10-03 华为技术有限公司 一种定位软件故障的方法
CN102184138A (zh) * 2011-05-19 2011-09-14 广东威创视讯科技股份有限公司 一种软件错误自动重现和定位的方法及***
US20120317554A1 (en) * 2011-06-08 2012-12-13 The Mathworks, Inc. Identifying and triaging software bugs through backward propagation of under-approximated values and empiric techniques

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6298457B1 (en) * 1997-10-17 2001-10-02 International Business Machines Corporation Non-invasive networked-based customer support
US7665019B2 (en) * 2003-09-26 2010-02-16 Nbor Corporation Method for recording and replaying operations in a computer environment using initial conditions
CN101399821B (zh) * 2007-09-28 2015-05-06 国际商业机器公司 记录/重放***、记录器/播放器、和方法
US8677174B2 (en) * 2007-12-28 2014-03-18 International Business Machines Corporation Management of runtime events in a computer environment using a containment region
JP2009205502A (ja) 2008-02-28 2009-09-10 Nec Corp アプリケーション記録再生装置、アプリケーションの巻き戻し方法、アプリケーション記録再生プログラム
JP2009223743A (ja) 2008-03-18 2009-10-01 Fujitsu Ltd 障害解析支援システム及び障害解析支援方法
JP5463780B2 (ja) 2009-07-31 2014-04-09 ブラザー工業株式会社 情報処理装置
JP5483965B2 (ja) * 2009-09-14 2014-05-07 株式会社日立製作所 ウェブアプリケーションの操作記録・再生方法およびシステム
CN102902625B (zh) 2012-11-14 2015-04-22 北京奇虎科技有限公司 软件性能测试***和方法
CN103902454A (zh) 2014-04-08 2014-07-02 安一恒通(北京)科技有限公司 一种软件故障的定位方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101046765A (zh) * 2006-03-29 2007-10-03 华为技术有限公司 一种定位软件故障的方法
CN102184138A (zh) * 2011-05-19 2011-09-14 广东威创视讯科技股份有限公司 一种软件错误自动重现和定位的方法及***
US20120317554A1 (en) * 2011-06-08 2012-12-13 The Mathworks, Inc. Identifying and triaging software bugs through backward propagation of under-approximated values and empiric techniques

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"航天型号高可靠软件***调试原理与技术: "《航天型号高可靠软件***调试原理与技术》", 31 August 2008 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015154517A1 (zh) * 2014-04-08 2015-10-15 安一恒通(北京)科技有限公司 一种软件故障的定位方法、装置及设备
US9983987B2 (en) 2014-04-08 2018-05-29 Iyuntian Co., Ltd. Method, apparatus, and device for locating a software failure
CN104965775A (zh) * 2015-04-23 2015-10-07 腾讯科技(深圳)有限公司 应用软件故障现场的重建方法、服务器及终端
CN104932979A (zh) * 2015-07-01 2015-09-23 王沛 一种软件故障查找方法和装置
CN114489014A (zh) * 2022-01-27 2022-05-13 东风商用车有限公司 一种总线控制器故障排查方法与***
CN114489014B (zh) * 2022-01-27 2023-07-28 东风商用车有限公司 一种总线控制器故障排查方法与***

Also Published As

Publication number Publication date
BR112015032883A2 (pt) 2017-09-26
JP2017512322A (ja) 2017-05-18
US20170075800A1 (en) 2017-03-16
US9983987B2 (en) 2018-05-29
KR20160029754A (ko) 2016-03-15
WO2015154517A1 (zh) 2015-10-15
KR101748833B1 (ko) 2017-06-19
JP6259522B2 (ja) 2018-01-10

Similar Documents

Publication Publication Date Title
CN103902454A (zh) 一种软件故障的定位方法和装置
WO2017124808A1 (zh) 一种故障信息的重现方法和重现装置
CN104424094A (zh) 一种异常信息获取方法、装置及智能终端设备
US9189135B2 (en) Three-dimensional GUI object stores in automation test tools
WO2021208512A1 (zh) 用户界面的控件信息的获取方法、装置、终端及存储介质
US8489941B2 (en) Automatic documentation of ticket execution
CN105589795A (zh) 基于预测模型的磁盘故障预测方法及装置
US8959400B2 (en) System, program, and method for collecting errors which occur while a user uses a computer
CN111752793A (zh) ***异常的监控方法、装置、计算机设备及存储介质
US20240020215A1 (en) Analyzing large-scale data processing jobs
JP6119535B2 (ja) トレース方法、処理プログラム、および情報処理装置
KR102390688B1 (ko) 보편적인 인터렉션으로 컨텐츠를 영구 저장부에 캡쳐하는 기법
CN103019899A (zh) 一种智能终端事件回放的方法、***和智能终端
CN103778056A (zh) 无线应用稳定性测试方法及***
WO2012078691A2 (en) Platform-agnostic diagnostic data collection and display
US11294746B2 (en) Extracting moving image data from an error log included in an operational log of a terminal
US9164746B2 (en) Automatic topology extraction and plotting with correlation to real time analytic data
US8370815B2 (en) Electronic device and method for debugging programs
CN103245915B (zh) 基于实时pmu数据的励磁***在线监视方法
US9165007B2 (en) Log message optimization to ignore or identify redundant log messages
CN103593290B (zh) 一种测试软件稳定性的方法和装置
CN115454770A (zh) 埋点信息的上报方法及装置、存储介质、电子设备
US9940068B2 (en) Device and method for determining memory leaks
CN103914377A (zh) 接口测试方法及装置
CN101060686B (zh) 一种移动终端中异常诊断和错误环境再现的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20140702

RJ01 Rejection of invention patent application after publication