CN103198017B - 一种测试数据完整性保护的方法及装置 - Google Patents
一种测试数据完整性保护的方法及装置 Download PDFInfo
- Publication number
- CN103198017B CN103198017B CN201310116682.8A CN201310116682A CN103198017B CN 103198017 B CN103198017 B CN 103198017B CN 201310116682 A CN201310116682 A CN 201310116682A CN 103198017 B CN103198017 B CN 103198017B
- Authority
- CN
- China
- Prior art keywords
- interrupt operation
- test
- application
- data record
- interrupt
- 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
Links
Abstract
本发明适用于数据存储领域,提供一种测试数据完整性保护的方法及装置,所述方法包括:根据待测试的应用,设置中断参数并生成测试脚本;执行所述测试脚本,在达到中断时间时进行中断操作,当应用执行失败且中断操作前后的数据记录一致时,逐步微调中断时间进行中断操作,直至应用执行成功且中断操作前后的数据记录一致。本发明技术方案中,达到中断时间后对应用自动进行中断操作,无需测试人员对应用进行不断的异常操作,降低了测试人员的工作强度,而且由于中断时间可自动微调,保证了测试的质量,实现了自动化测试。
Description
技术领域
本发明属于数据存储领域,尤其涉及一种测试数据完整性保护的方法及装置。
背景技术
随着系统应用的不断推广和完善,特别是在数据存储领域,系统应用的使用也越来越广泛,对于系统应用数据处理的完整性也日益受到关注。
数据完整性保护是数据存储中的一项基本特性,它要在处理执行应用过程中,任意时刻对应用进行中断操作时,应用中的数据是完整的,执行应用要么全部完成,要么根本没有执行,不允许出现数据更新了一部分,但还有一部分没有更新或更新不对的情况,为了避免上述情况,因此在开发一种应用时,需要进行相应的数据完整性保护的测试。
在金融交易过程中典型的数据完整性保护是要保证交易的完整性,不能出现存折中金额已改变但交易明细却没有更新的情况。在数据写入过程中断电,重新上电后,要求读出的内容要么不变,要么全为写入的内容。从一开始写数据时就断电,不断加大写数据的时间,重复执行应用直到应用执行结果返回成功,而且读出的内容与写入内容一致。
现有数据完整性保护的测试过程当中,测试具有随机性,并且要求测试人员不断的对系统应用进行异常操作,这无疑增加了测试人员的工作强度,降低了测试效率,并且测试的质量也难以保障。
发明内容
鉴于上述问题,本发明的目的在于提供一种测试数据完整性保护的方法及装置,旨在解决现有测试数据完整性保护的方案中,要求测试人员不断的对系统应用进行异常操作,并且测试时间点比较随机,使得测试人员工作强度大而且测试效果不佳的技术问题。
一方面,所述测试数据完整性保护的方法包括下述步骤:
根据待测试的应用,设置中断参数并生成测试脚本;
执行所述测试脚本,在达到中断时间时进行中断操作,当应用执行失败且中断操作前后的数据记录一致时,逐步微调中断时间进行中断操作,直至应用执行成功,且中断操作前后的数据记录一致表示中断操作前后数据不冲突。
另一方面,所述测试数据完整性保护的装置包括:
脚本生成单元,用于根据待测试的应用,设置中断参数并生成测试脚本;
脚本执行单元,用于执行所述测试脚本,在达到中断时间时进行中断操作,当应用执行失败且中断操作前后的数据记录一致时,逐步微调中断时间进行中断操作,直至应用执行成功且中断操作前后的数据记录一致。
本发明的有益效果是:在本发明技术方案中,首先设置中断参数,在测试时,达到中断时间后对应用自动进行中断操作,无需测试人员对应用进行不断的异常操作,降低了测试人员的工作强度,而且由于中断时间可自动微调,基本可以模拟出在执行应用过程,任意时间点出现异常操作的情况,保证了测试的质量,实现了自动化测试。
附图说明
图1是本发明第一实施例提供的测试数据完整性保护的方法的流程图;
图2是本发明第二实施例提供的测试数据完整性保护的方法的流程图;
图3是本发明第三实施例提供的测试数据完整性保护的装置的结构方框图;
图4是本发明第四实施例提供的测试数据完整性保护的装置的结构方框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例一:
图1示出了本发明第一实施例提供的测试数据完整性保护的方法的流程,为了便于说明仅示出了与本发明实施例相关的部分。
本实施例提供的测试数据完整性保护的方法包括:
步骤S101、根据待测试的应用,设置中断参数并生成测试脚本。
本实施例可以测试各种不同的应用,对于不同的应用设置对应的中断参数即可,比如中断起始时间、步长,以及在中断操作后重新执行所述应用的起始点和结束点等,所述步长可以设置的很小,通常为微秒数量级(比如10微秒),因此可以认为中断操作可以发生在应用执行过程中的任意时刻,保证了测试质量。此外,由于进行设置相关的中断参数,在修改或增加应用时,脚本维护代价非常小,降低测试人员的工作强度,减少测试过程中的开发和维护成本。
步骤S102、执行所述测试脚本,在达到中断时间时进行中断操作,当应用执行失败且中断操作前后的数据记录一致时,逐步微调中断时间进行中断操作,直至应用执行成功且中断操作前后的数据记录一致。
生成脚本后即可开始测试,首先执行需要测试的应用,此时开始执行所述测试脚本,根据所述测试脚本,在达到中断时间时进行中断操作,即模拟出应用的异常操作,在对应用执行中断操作后,此时会返回应用执行结果表示应用执行失败或是成功,所述中断操作前后的数据记录一致表示中断操作前后的数据不冲突,比如对于圈存操作,查询中断操作后系统内余额及交易记录,以及进行中断操作前的系统余额,假设中断操作前的系统余额为1000元,中断操作后,交易记录用户表明用户圈存成功且存入200元,那么当中断操作后系统余额为1200元时才可认定中断操作前后的数据记录一致;若中断操作后,交易记录表明用户圈存不成功,那么当中断操作后系统余额为1000元时才可认定中断操作前后的数据记录一致。
当中断操作后发现应用执行失败且中断操作前后的数据记录一致,此时进一步微调中断时间,在到达所述中断时间后再次进行中断操作,直至应用执行成功且中断操作前后的数据记录一致,此时即可认定该应用的数据完整性保护测试通过。
通过本发明实施例,在设置中断参数后执行中断操作,由于本实施例中可以逐步微调中断时间,可以认为模拟出了在执行应用的过程中的任意时刻点发生异常操作,通过查询应用执行结果以及中断操作前后的数据记录,即可知晓所述应用的数据完整性保护测试是否通过。通过本实施例可以自动实现数据完整性保护测试,降低了测试人员的工作强度,而且还保证了测试质量。
实施例二:
图2示出了本发明第二实施例提供的测试数据完整性保护的方法的流程,为了便于说明仅示出了与本发明实施例相关的部分。
本实施例提供的测试数据完整性保护的方法包括:
步骤S201、根据待测试的应用,设置中断参数并生成测试脚本。
假设待测试的应用为金融交易中的圈存操作,所述中断参数包括中断起始时间、步长,以及在中断操作后重新执行圈存操作的起始点和结束点。这里作为一种具体的参数设置方式,所述中断起始时间为100微秒,步长为10微秒,即从开始执行圈存操作的100微秒后进行第一次中断操作,在后续进行中断操作时,中断时间以10微秒为单位逐步递增。
步骤S202、执行所述测试脚本,在到达中断时间时进行中断操作。
当开始第一次执行圈存操作时,所述中断时间为中断起始时间,在中断操作后,需要重新进行圈存操作时,在所述中断起始时间的基础上,以所述步长为单位逐步增加中断时间。比如第一次执行圈存操作时,在100微秒处执行中断操作,在第二次执行圈存操作时,在110微秒处执行中断操作,在第三次执行圈存操作时,在120微秒处执行中断操作,依次类推。
步骤S203、获取应用执行结果以及中断操作前后的数据记录;
在圈存操作中,应用执行结果以返回状态码的形式表示,当返回8400时表示应用执行失败,当返回9000时表示成功,所述中断操作前后的数据记录在实施例一的步骤S102中已有详细描述,此处不再赘述,本实施例中需要获取应用执行结果以及中断操作前后的数据记录,并对此作出判断。
步骤S204、当所述应用执行失败且中断操作前后的数据记录一致时,按照所述步长递增调整所述中断时间,并在所述起始点时刻重新执行所述应用。
在本步骤中对于圈存操作,获取到状态码后,该状态码为8400且系统内余额及交易记录与圈存之前的记录对比一致,此时在中断起始时间的基础上,以所述步长为单位逐步增加中断时间,并且在所述设置的起始点时刻开始重新执行圈存操作,返回步骤S202,继续进行中断操作。
步骤S205、当所述应用执行成功且中断操作前后的数据记录一致时,跳转至所述结束点并返回测试成功信息。
在本步骤中对于圈存操作,获取到状态码后,该状态码为9000且系统内余额及交易记录与圈存之前的记录对比一致,表明圈存操作成功并且通过数据完整性保护测试,此时跳转至所述设置的结束点并返回测试成功信息,所述测试成功信息可以以任何形式表现出来,比如可以将相关信息发送到显示屏端显示出来,也可以不同颜色的LED灯来区分显示,本实施例不做具体限定。
步骤S206、当所述中断操作前后的数据记录不一致时,结束测试并返回测试失败信息。
在本步骤中对于圈存操作,获取到状态码后,无论是该状态码为8400还是9000,只要中断操作前后的数据记录不一致,那么就说明数据完整性保护测试没有通过,此时结束测试并返回测试失败信息,同样这里测试失败信息可以以任意方式表示,测试人员获知测试未通过后,需要通知开发人员进一步对应用的数据完整性保护方案进行修改和优化,直至达到数据完整性保护的要求。
本实施例在实施例一的基础上,公开了步骤S102的一种具体优选的实施步骤,特别是以圈存操作为例进行详细说明,通过本实施例方案,实现了数据完整性保护的自动化测试的同时,保证了测试质量。需要说明的是,本实施例只是以圈存操作为例进行测试说明,显然本实施例所述保护的内容不限定于圈存操作,可以适用于任一应用。
实施例三:
图3示出了本发明第三实施例提供的测试数据完整性保护的装置的结构,为了便于说明仅示出了与本发明实施例相关的部分。
本实施例提供的测试数据完整性保护的装置包括:
脚本生成单元301,用于根据待测试的应用,设置中断参数并生成测试脚本;
脚本执行单元302,用于执行所述测试脚本,在达到中断时间时进行中断操作,当应用执行失败且中断操作前后的数据记录一致时,逐步微调中断时间进行中断操作,直至应用执行成功且中断操作前后的数据记录一致。
本实施例提供功能单元301和302对应实现了实施例一所述的步骤S101和S102,本实施例中,脚本生成单元301在生成测试脚本后,脚本执行单元302执行所述测试脚本,并在达到中断时间时进行中断操作,根据反馈的应用执行结果以及中断操作前后的数据记录,来判断测试是否通过。通过本实施例可以自动实现数据完整性保护测试,降低了测试人员的工作强度,而且还保证了测试质量。
实施例四:
图4示出了本发明第四实施例提供的测试数据完整性保护的装置的结构,为了便于说明仅示出了与本发明实施例相关的部分。
本实施例提供的测试数据完整性保护的装置包括:
脚本生成单元41,用于根据待测试的应用,设置中断参数并生成测试脚本;
脚本执行单元42,用于执行所述测试脚本,在达到中断时间时进行中断操作,当应用执行失败且中断操作前后的数据记录一致时,逐步微调中断时间进行中断操作,直至应用执行成功且中断操作前后的数据记录一致。
其中,所述脚本执行单元42包括:
中断操作模块421,用于执行所述测试脚本,在到达中断时间时进行中断操作;
信息获取模块422,用于获取应用执行结果以及中断操作前后的数据记录;
中断时间调整模块423,用于当所述应用执行失败且中断操作前后的数据记录一致时,按照所述步长递增调整所述中断时间,并在所述起始点时刻重新执行所述应用;
成功返回模块424,用于当所述应用执行成功且中断操作前后的数据记录一致时,跳转至所述结束点并返回测试成功信息;
失败返回模块425,用于当所述中断操作前后的数据记录不一致时,结束测试并返回测试失败信息。
本实施例提供的功能单元及各个功能模块对应实现了实施二中的各个步骤,另一方面,本实施例在实施例三上进一步公开了脚本执行单元42的一种具体优选的结构,当所述应用执行失败且中断操作前后的数据记录一致时,中断时间调整模块423按照所述步长递增调整所述中断时间,并在所述起始点时刻重新执行所述应用,当所述应用执行成功且中断操作前后的数据记录一致时,成功返回模块424跳转至所述结束点并返回测试成功信息,当所述中断操作前后的数据记录不一致时,失败返回模块425结束测试并返回测试失败信息。通过本实施例方案,实现了数据完整性保护的自动化测试的同时,保证了测试质量。
本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以在存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种测试数据完整性保护的方法,其特征在于,所述方法包括:
根据待测试的应用,设置中断参数并生成测试脚本;
执行所述测试脚本,在达到中断时间时进行中断操作,当应用执行失败且中断操作前后的数据记录一致时,逐步微调中断时间进行中断操作,直至应用执行成功,且中断操作前后的数据记录一致表示中断操作前后数据不冲突。
2.如权利要求1所述方法,其特征在于,所述中断参数包括中断起始时间、步长,以及在中断操作后重新执行所述应用的起始点和结束点。
3.如权利要求2所述方法,其特征在于,所述执行所述测试脚本,在达到中断时间时进行中断操作,当应用执行失败且中断操作前后的数据记录一致时,逐步微调中断时间进行中断操作,直至应用执行成功且中断操作前后的数据记录一致的步骤,具体包括:
执行所述测试脚本,在到达中断时间时进行中断操作;
获取应用执行结果以及中断操作前后的数据记录;
当所述应用执行失败且中断操作前后的数据记录一致时,按照所述步长递增调整所述中断时间,并在所述起始点时刻重新执行所述应用;
当所述应用执行成功且中断操作前后的数据记录一致时,跳转至所述结束点并返回测试成功信息。
4.如权利要求3所述方法,其特征在于,所述获取应用执行结果以及中断操作前后的数据记录步骤之后,还包括:
当所述中断操作前后的数据记录不一致时,结束测试并返回测试失败信息。
5.如权利要求2-4任一项所述方法,其特征在于,所述步长为微秒数量级。
6.一种测试数据完整性保护的装置,其特征在于,所述装置包括:
脚本生成单元,用于根据待测试的应用,设置中断参数并生成测试脚本;
脚本执行单元,用于执行所述测试脚本,在达到中断时间时进行中断操作,当应用执行失败且中断操作前后的数据记录一致时,逐步微调中断时间进行中断操作,直至应用执行成功且中断操作前后的数据记录一致。
7.如权利要求6所述装置,其特征在于,所述中断参数包括中断起始时间、步长,以及在中断操作后重新执行所述应用的起始点和结束点。
8.如权利要求7所述装置,其特征在于,所述脚本执行单元包括:
中断操作模块,用于执行所述测试脚本,在到达中断时间时进行中断操作;
信息获取模块,用于获取应用执行结果以及中断操作前后的数据记录;
中断时间调整模块,用于当所述应用执行失败且中断操作前后的数据记录一致时,按照所述步长递增调整所述中断时间,并在所述起始点时刻重新执行所述应用;
成功返回模块,用于当所述应用执行成功且中断操作前后的数据记录一致时,跳转至所述结束点并返回测试成功信息。
9.如权利要求8所述装置,其特征在于,所述脚本执行单元还包括:
失败返回模块,用于当所述中断操作前后的数据记录不一致时,结束测试并返回测试失败信息。
10.如权利要求7-9任一项所述装置,其特征在于,所述步长为微秒数量级。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310116682.8A CN103198017B (zh) | 2013-04-07 | 2013-04-07 | 一种测试数据完整性保护的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310116682.8A CN103198017B (zh) | 2013-04-07 | 2013-04-07 | 一种测试数据完整性保护的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103198017A CN103198017A (zh) | 2013-07-10 |
CN103198017B true CN103198017B (zh) | 2016-04-13 |
Family
ID=48720599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310116682.8A Active CN103198017B (zh) | 2013-04-07 | 2013-04-07 | 一种测试数据完整性保护的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103198017B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106371996B (zh) * | 2016-09-07 | 2019-05-28 | 东信和平科技股份有限公司 | 一种断电测试方法及系统 |
CN112596941B (zh) * | 2020-12-28 | 2023-10-03 | 凌云光技术股份有限公司 | 一种工业图像处理软件的工具结果判定方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1505399A2 (de) * | 2003-06-24 | 2005-02-09 | Giesecke & Devrient GmbH | Verfahren zum Erzeugen von Testdaten zum Austesten der Funktionsfähigkeit einer datenverarbeitenden Schaltung |
CN101052020A (zh) * | 2007-05-21 | 2007-10-10 | 中兴通讯股份有限公司 | 一种自动化测试执行过程的监控方法和系统 |
CN101135989A (zh) * | 2006-08-31 | 2008-03-05 | 中国银联股份有限公司 | 一种Web应用系统的自动化测试的方法和装置 |
CN101739313A (zh) * | 2009-11-27 | 2010-06-16 | 华中科技大学 | 一种连续数据保护和恢复方法 |
CN101989225A (zh) * | 2009-07-29 | 2011-03-23 | 中兴通讯股份有限公司 | 基于断点的自动化测试方法及装置 |
-
2013
- 2013-04-07 CN CN201310116682.8A patent/CN103198017B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1505399A2 (de) * | 2003-06-24 | 2005-02-09 | Giesecke & Devrient GmbH | Verfahren zum Erzeugen von Testdaten zum Austesten der Funktionsfähigkeit einer datenverarbeitenden Schaltung |
CN101135989A (zh) * | 2006-08-31 | 2008-03-05 | 中国银联股份有限公司 | 一种Web应用系统的自动化测试的方法和装置 |
CN101052020A (zh) * | 2007-05-21 | 2007-10-10 | 中兴通讯股份有限公司 | 一种自动化测试执行过程的监控方法和系统 |
CN101989225A (zh) * | 2009-07-29 | 2011-03-23 | 中兴通讯股份有限公司 | 基于断点的自动化测试方法及装置 |
CN101739313A (zh) * | 2009-11-27 | 2010-06-16 | 华中科技大学 | 一种连续数据保护和恢复方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103198017A (zh) | 2013-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106095620B (zh) | 一种嵌入式Linux存储分区的开发方法 | |
CN101814038B (zh) | 一种加快计算机启动速度的方法 | |
US11556348B2 (en) | Bootstrapping profile-guided compilation and verification | |
CN103164523A (zh) | 数据一致性检查方法、装置及系统 | |
CN101819543A (zh) | 快照数据处理方法和系统以及存储设备 | |
CN104375933A (zh) | 一种单元测试方法和装置 | |
CN105224343A (zh) | 一种应用程序的更新提示方法和装置 | |
CN110321339B (zh) | 一种数据迁移方法、装置、设备和存储介质 | |
CN102667720A (zh) | 没有排序依赖的一致性 | |
CN109542495A (zh) | 一种软件升级方法及装置 | |
US20130185492A1 (en) | Memory Watch | |
CN108270626A (zh) | 一种升级服务器固件的方法、装置、设备及可读存储介质 | |
CN103902562A (zh) | 一种终端数据库升级方法及相关装置 | |
WO2020238860A1 (zh) | 分布式文件批处理方法、装置、与可读存储介质 | |
CN103019789B (zh) | 一种签名软件升级方法、装置及移动终端 | |
CN103198017B (zh) | 一种测试数据完整性保护的方法及装置 | |
US20220230200A1 (en) | Optimization of promotional content campaigns | |
CN103412800A (zh) | 一种虚拟机热备份方法和设备 | |
CN107832106A (zh) | 一种在低Kernel版本OS下在线更新硬盘FW的方法及系统 | |
CN103365674A (zh) | 一种基于移动终端的插件管理方法、装置和系统 | |
CN102184112B (zh) | 控件升级方法及装置 | |
CN111651177B (zh) | 基于安卓平台的写号方法、设备及计算机可读介质 | |
CN103177085A (zh) | 一种检查点操作方法及装置 | |
CN108446219B (zh) | 应用程序的操作方法、系统、介质和计算设备 | |
CN106210025A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |