CN109921915A - 测试实时时钟模块唤醒功能的方法、装置及电子设备 - Google Patents
测试实时时钟模块唤醒功能的方法、装置及电子设备 Download PDFInfo
- Publication number
- CN109921915A CN109921915A CN201910014718.9A CN201910014718A CN109921915A CN 109921915 A CN109921915 A CN 109921915A CN 201910014718 A CN201910014718 A CN 201910014718A CN 109921915 A CN109921915 A CN 109921915A
- Authority
- CN
- China
- Prior art keywords
- message
- mentioned
- devices under
- wake
- time
- 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
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请公开了一种测试实时时钟模块唤醒功能的方法、装置、电子设备及计算机可读存储介质,其中,该方法包括:设定被测试设备的目标唤醒方式;向测试设备发送休眠报文,并触发被测试设备进入休眠状态,其中,休眠报文携带有报文类型标识符及拟休眠时长;当被测试设备从休眠状态中被唤醒时,向测试设备发送唤醒报文,以使得测试设备基于休眠报文及唤醒报文得到本轮测试结果,其中,唤醒报文携带有报文类型标识符及拟休眠时长;等待预设时长后,重复执行设定所述被测试设备的目标唤醒方式的步骤及后续步骤,直至达到预设的测试轮数或测试时间。通过本申请方案,可实现对实时时钟模块唤醒功能的自动测试,使得测试结果更为准确。
Description
技术领域
本申请属于设备测试技术领域,尤其涉及一种测试实时时钟模块唤醒功能的方法、装置、电子设备及计算机可读存储介质。
背景技术
在各种智能移动设备和嵌入式设备中,通常需要使用到实时时钟(Real TimeClock,RTC)模块的休眠唤醒功能。为了确定不同电子设备中RTC模块所提供的休眠唤醒功能的可靠性,通常所采用的做法是在被测试设备上设置RTC唤醒时刻,随即让设备进入休眠,接着等候被测试设备被RTC闹钟唤醒;与此同时,人工控制一个第三方的钟表或计时仪器,抓取得到被测试设备进入休眠的时刻及被RTC唤醒的时刻;最后,根据抓取得到的被测试设备进入休眠的时刻及被RTC唤醒的时刻,计算和分析被测试设备的RTC模块所提供的休眠唤醒功能的可靠性及准确程度。
然而,上述人工抓取操作的准确性难以得到保证,且在循环压力可靠性测试中,上述人工抓取操作的工作量较为繁重,导致人工成本增加。
发明内容
有鉴于此,本申请实施例提供了一种测试实时时钟模块唤醒功能的方法、装置、电子设备及计算机可读存储介质,可在节约人工成本的情况下,实现对实时时钟模块唤醒功能的自动测试,使得测试结果更为准确。
本申请的第一方面提供了一种测试实时时钟模块唤醒功能的方法,应用于被测试设备,包括:
设定上述被测试设备的目标唤醒方式,用以确定上述被测试设备的唤醒时刻及拟休眠时长;
向测试设备发送休眠报文,并触发上述被测试设备进入休眠状态,其中,上述休眠报文携带有报文类型标识符及拟休眠时长;
当上述被测试设备从上述休眠状态中被唤醒时,向上述测试设备发送唤醒报文,以使得上述测试设备基于上述休眠报文及上述唤醒报文得到本轮测试结果,其中,上述唤醒报文携带有报文类型标识符及拟休眠时长;
等待预设时长后,重复执行上述设定上述被测试设备的目标唤醒方式,用以确定上述被测试设备的唤醒时刻及拟休眠时长的步骤及后续步骤,直至达到预设的测试轮数或测试时间。
本申请的第二方面提供了一种测试实时时钟模块唤醒功能的方法,应用于测试设备,包括:
当接收到被测试设备发送的第一报文时,对上述第一报文进行解析,基于上述第一报文中携带的报文类型标识符确定上述第一报文的类型;
若上述第一报文为休眠报文,则记录接收到上述第一报文的时间作为第一时间,并获取上述第一报文中携带的拟休眠时长;
在接收到上述第一报文后,若接收到上述被测试设备发送的第二报文,则对上述第二报文进行解析,基于上述第二报文中携带的报文类型标识符确定上述第二报文的类型;
若上述第二报文为唤醒报文,则记录接收到上述第二报文的时间作为第二时间;
基于上述第一时间、上述第二时间及上述拟休眠时长,计算得到本轮测试结果;
重复执行上述当接收到被测试设备发送的第一报文时,对上述第一报文进行解析,基于上述第一报文中携带的报文类型标识符确定上述第一报文的类型的步骤及后续步骤,直至达到预设的测试轮数或测试时间。
本申请的第三方面提供了一种测试实时时钟模块唤醒功能的装置,应用于被测试设备,包括:
设定单元,用于设定上述被测试设备的目标唤醒方式,用以确定上述被测试设备的唤醒时刻及拟休眠时长;
第一发送单元,用于向测试设备发送休眠报文,并触发上述被测试设备进入休眠状态,其中,上述休眠报文携带有报文类型标识符及上述计算单元计算的拟休眠时长;
第二发送单元,用于当上述被测试设备从上述休眠状态中被唤醒时,向上述测试设备发送唤醒报文,以使得上述测试设备基于上述休眠报文及上述唤醒报文得到本轮测试结果,其中,上述唤醒报文携带有报文类型标识符及拟休眠时长;
其中,上述设定单元在等待预设时长后再次被触发,直至达到预设的测试轮数或测试时间。
本申请的第四方面提供了一种测试实时时钟模块唤醒功能的装置,应用于测试设备,包括:
第一解析单元,用于当接收到被测试设备发送的第一报文时,对上述第一报文进行解析,基于上述第一报文中携带的报文类型标识符确定上述第一报文的类型;
第一记录单元,用于若上述第一解析单元确定上述第一报文为休眠报文,则记录接收到上述第一报文的时间作为第一时间,并获取上述第一报文中携带的拟休眠时长;
第二解析单元,用于在接收到上述第一报文后,若接收到上述被测试设备发送的第二报文,则对上述第二报文进行解析,基于上述第二报文中携带的报文类型标识符确定上述第二报文的类型;
第二记录单元,用于若上述第二解析单元确定上述第二报文为唤醒报文,则记录接收到上述第二报文的时间作为第二时间;
结果计算单元,用于基于上述第一单元记录的第一时间、上述第二单元记录的第二时间及上述拟休眠时长,计算得到本轮测试结果;
其中,上述第一解析单元在上述结果计算单元执行完成后被再次触发,直至达到预设的测试轮数或测试时间。
本申请的第五方面提供了一种被测试设备,上述被测试设备包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上第一方面的方法的步骤。
本申请的第六方面提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如上第一方面的方法的步骤。
本申请的第七方面提供了一种计算机程序产品,上述计算机程序产品包括计算机程序,上述计算机程序被一个或多个处理器执行时实现如上述第一方面的方法的步骤。
本申请的第八方面提供了一种测试设备,上述测试设备包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上第二方面的方法的步骤。
本申请的第九方面提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如上第二方面的方法的步骤。
本申请的第十方面提供了一种计算机程序产品,上述计算机程序产品包括计算机程序,上述计算机程序被一个或多个处理器执行时实现如上述第二方面的方法的步骤。
由上可见,通过本申请方案,在被测试设备中,首先设定上述被测试设备的目标唤醒方式,用以确定上述被测试设备的唤醒时刻及拟休眠时长,接着向测试设备发送休眠报文,并触发上述被测试设备进入休眠状态,其中,上述休眠报文携带有报文类型标识符及拟休眠时长,当上述被测试设备从上述休眠状态中被唤醒时,向上述测试设备发送唤醒报文,以使得上述测试设备基于上述休眠报文及上述唤醒报文得到本轮测试结果,其中,上述唤醒报文携带有报文类型标识符及拟休眠时长,并在等待预设时长后,重复执行上述设定上述被测试设备的目标唤醒方式,用以确定上述被测试设备的唤醒时刻及拟休眠时长的步骤及后续步骤,直至达到预设的测试轮数或测试时间。通过本申请方案,由被测试设备在休眠及唤醒时分别向测试设备发送休眠报文及测试报文,以使得测试设备基于上述两种报文的接收时间计算实时时钟模块唤醒功能的准确程度,以此实现在节约人工成本的情况下对实时时钟模块唤醒功能的自动测试,使得测试结果更为准确。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种测试实时时钟模块唤醒功能的方法的实现流程示意图;
图2是本申请实施例提供的另一种测试实时时钟模块唤醒功能的方法的实现流程示意图;
图3是本申请实施例提供的测试实时时钟模块唤醒功能的方法中,被测试设备及测试设备在测试过程中的时间轴示意图;
图4是本申请实施例提供的一种测试实时时钟模块唤醒功能的装置的结构框图;
图5是本申请实施例提供的另一种测试实时时钟模块唤醒功能的装置的结构框图;
图6是本申请实施例提供的被测试设备的示意图;
图7是本申请实施例提供的测试设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的***、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
为了说明本申请上述的技术方案,下面通过具体实施例来进行说明。
实施例一
下面对本申请实施例提供的一种测试实时时钟模块唤醒功能的方法进行描述,请参阅图1,本申请实施例中的测试实时时钟模块唤醒功能的方法应用于被测试设备,该方法包括:
在步骤101中,设定上述被测试设备的目标唤醒方式,用以确定上述被测试设备的唤醒时刻及拟休眠时长;
在本申请实施例中,由于是对被测试设备的实时时钟RTC模块的唤醒功能进行测试,因而,需要由用户或者被测试设备的***预先设定好每一轮测试时的目标唤醒方式。具体地,用户可以从固定延时唤醒、整点唤醒、随机延时唤醒及混合唤醒中,选择所需要进行测试的唤醒方式作为目标唤醒方式。在选择了目标唤醒方式后,被测试设备将会基于该目标唤醒方式确定其唤醒时刻及拟休眠时长。
在步骤102中,向测试设备发送休眠报文,并触发上述被测试设备进入休眠状态;
在本申请实施例中,被测试设备在确定上述拟休眠时长后,基于该拟休眠时长生成休眠报文,具体地,上述休眠报文中除了携带有拟休眠时长之外,还携带有报文类型标识符。上述休眠报文的结构采用C语言的示例如下:
其中,上述type为报文类型标识符,当type为“S”(意为“sleep”)时,用于标识本报文为休眠报文。上述sleep_time为拟休眠时长。
具体地,上述测试设备也配备有RTC模块,且其时间精度满足RTC唤醒准确度测试的要求。
在向上述测试设备发送了休眠报文后,触发上述被测试设备进入休眠状态。上述被测试设备在休眠状态下,将不运行任何指令。
在步骤103中,当上述被测试设备从上述休眠状态中被唤醒时,向上述测试设备发送唤醒报文,以使得上述测试设备基于上述休眠报文及上述唤醒报文得到本轮测试结果;
在本申请实施例中,当上述被测试设备被RTC唤醒源从上述休眠状态中被唤醒时,向上述被测试设备发送唤醒报文,其中,上述唤醒报文携带有报文类型标识符及拟休眠时长,且该唤醒报文与上述休眠报文的长度相等。实际上,在一轮测试中,上述休眠报文与唤醒报文的差别仅在于其所携带的报文类型标识符不同。当type(即报文类型标识符)为“W”(意为“Wake”)时,用于标识本报文为唤醒报文。由于报文传输到测试设备需要一定时间,也即,从被测试设备发送报文到测试设备接收报文会产生一定时延。当休眠报文的传输过程与唤醒报文的传输过程所产生的时延相等时,理论上可避免上述传输损耗所带来的时间误差,因而要求唤醒报文与休眠报文的长度相等。
在步骤104中,等待预设时长后,检测是否达到预设的测试轮数或测试时间,若是,则执行步骤105,若否,则返回执行步骤101及后续步骤。
在本申请实施例中,可以是等待一预设时长后,检测出是否达到预设的测试轮数或测试时间,在已达到预设的测试轮数或测试时间时,结束本次测试,在未达到预设的测试轮数或测试时间时,返回执行步骤101及后续步骤,也即开始新一轮测试;也可以是先检测是否达到预设的测试轮数或测试时间,若已达到预设的测试轮数或测试时间,则直接结束本次测试,若未达到预设的测试轮数或测试时间,则等待预设时长、再返回执行步骤101及后续步骤,也即开始新一轮测试。也即,上述等待预设时长与上述检测是否达到预设的测试轮数或测试时间的执行顺序不固定。具体地,上述预设的测试轮数或测试时间由用户所设定。可以是在本次测试开始前,输出测试结束条件选择框,用户可以自行选择是根据测试轮数作为测试结束的条件,或者根据测试时间作为测试结束的条件,此处不作限定。具体地,上述等待预设时长是为了让被测试设备的***充分恢复工作状态,其取值可以由用户根据实际情况而预先设定,例如,可将上述预设时长设定为3秒。实际上,在被测试设备结束一轮测试,从休眠状态中被唤醒后,如果立即调用休眠函数进入下一轮测试,则上述休眠函数很可能调用失败,也即,被测试设备的***一般要求连续两次调用休眠函数之间需至少等候一个最小间隔时长,该最小间隔时长在不同的***中有所差别,典型值为3秒。因而,在一轮测试后,需要等待预设时长后,才可执行下一轮测试操作,即,在被测试设备被唤醒后,需要至少等待预设时长Tw后才可再次调用休眠函数休眠。
在步骤105中,测试结束。
可选地,上述步骤101具体包括:
A1、接收输入的唤醒方式选择指令;
A2、基于上述唤醒方式选择指令,在预设的两个以上唤醒方式中,确定目标唤醒方式;
在本申请实施例中,用户可以在测试开始前,向被测试设备输入唤醒方式选择指令,以使得被测试设备基于上述唤醒方式选择指令,在预设的两个以上唤醒方式中,确定目标唤醒方式。具体地,上述两个以上唤醒方式包括但不限于:固定延时唤醒、整点唤醒、随机延时唤醒及混合唤醒。具体地,对上述几种不同的唤醒方式的说明如下:
上述固定延时唤醒,指的是从发起休眠的当前时刻开始,等候一固定延时时长(例如1分钟或1小时等)后即刻唤醒设备。在选择该唤醒方式时,固定延时时长的具体取值由用户进行设置,此处不对其具体取值作出限定。
上述整点唤醒,指的是从发起休眠的当前时刻开始,在下一整点时刻唤醒设备。例如,若发起休眠的当前时刻是09:05:50,则在10:00:00时刻唤醒设备。
上述随机延时唤醒,指的是从发起休眠的当前时刻开始,等候一随机延时时长(例如1至3600秒范围内的任一随机数)后即刻唤醒设备。上述随机数的范围可以根据设备的应用特性和测试进度要求自行设置。在选择该方式时,随机数的取值区间(即随机数所能够取的最小值及最大值)由用户进行设置,随后设备利用随机数生成函数在该取值区间内生成一个随机延时时长值。通过人工设置上述随机数的取值区间,可以增加测试的灵活性。具体地,若选定唤醒方式为随机延时唤醒(或混合唤醒),则可以在测试前,输出提醒框,例如“请输入随机数的取值区间(单位:秒)”,随后接收用户输入的两个整数,如1,100或者10,600等,分别标识随机数的取值区间为1~100秒及10~600秒。在调用随机延时唤醒生成拟休眠时长时,将在上述取值区间内生成随机数作为拟休眠时长。
混合唤醒,指的是从固定延时唤醒、整点唤醒、随机延时唤醒中随机选择一种方式进行唤醒。在选择该方式时,固定延时唤醒的固定延时时长的具体取值和随机延时的取值区间由用户预先进行设置,每一轮测试开始前,均需要先确定本轮测试所采用的唤醒方式,也即,若用户选定本次测试采用混合唤醒,则在每轮测试开始前,均从固定延时唤醒、整点唤醒、随机延时唤醒中随机选择一种方式进行唤醒。
可选地,可以由用户在每轮测试开始时均重新选择目标唤醒方式;或者,也可以是用户只在首轮测试时选择目标唤醒方式,后续每轮测试均基于首轮测试所选择的目标唤醒方式进行设定;在用户仅对首轮测试进行设定的情况下,在一次测试所进行的多轮测试中,如果用户首轮测试选择了固定延时唤醒、整点唤醒或随机延时唤醒,则每轮唤醒方式不变;如果用户选择了混合唤醒,则每轮唤醒方式均为被测试设备的随机选择,即每轮唤醒方式可能自动发生改变。
可选地,为了提高测试效率和减少人工工作,人工设置一次后的参数将持续作用于一次测试的每轮测试中,直到本次测试完成。完成后,可以再次设置不同的参数,并进行下一次的多轮测试。具体地,开发工具的基本库函数中,都有随机数生成函数,例如,可以采用C语言中的随机数生成函数rand()来生成随机延时唤醒方式下的随机数作为拟休眠时长。作为一具体示例,若要生成10至600之间的随机数,则其C语言代码如下:
int i;
srand((unsigned)time(NULL));
i=rand();
i=10+i%(600-10+1);
上述代码中,srand((unsigned)time(NULL))用于设置随机数种子,以便产生随机效果;上述i=rand()用于产生一个随机数i;上述i=10+i%(600-10+1)用于使产生的随机数i满足指定的取值范围。
A3、根据上述目标唤醒方式设定上述被测试设备的唤醒时刻及拟休眠时长。
可选地,休眠报文及唤醒报文中所携带的拟休眠时长可记为Ts。根据上述唤醒方式的不同,上述拟休眠时长Ts的计算方式也有所不同,具体为:
对于固定延时唤醒,Ts等于已设定的固定延时时长;对于随机延时唤醒,Ts等于最新生成的随机延时时长;对于整点唤醒,Ts等于下一整点时钟值减去当前时钟值的差值;而对于混合唤醒,由于该混合唤醒最终会从上述固定延时唤醒、随机延时唤醒及整点唤醒中选择其中之一作为本轮测试的唤醒方式,因而Ts将在上述混合唤醒确定本轮所采用的唤醒方式后,基于所确定的唤醒方式计算Ts的取值。
可选地,在上述向测试设备发送休眠报文之前,上述方法还包括:
B1、获取上述被测试设备与上述测试设备之间的通讯方式;
B2、在上述被测试设备中,打开与上述通讯方式相关的通讯端口,以使得上述被测试设备通过上述通讯端口向上述测试设备发送报文。
在本申请实施例中,上述通讯方式包括但不限于串口通讯、USB通讯、以太网通讯。基于被测试设备与上述测试设备之间的通讯方式,选择不同的通讯端口传输测试过程中所产生的休眠报文及唤醒报文。具体地,若为串口通讯,则在上述被测试设备中打开与上述串口通讯相关的通讯端口,使得被测试设备与测试设备采用相同的波特率和通讯格式(数据位数、停止位数、字符校验方式)进行通讯;若为USB通讯,则在上述被测试设备中打开与上述串口通讯相关的通讯端口,使得被测试设备与测试设备中的其中一个设备采用设备模式,另一设备采用主机模式,采用相同的总线速率及相同的传输协议进行通讯;若为以太网通讯,则被测试设备与测试设备采用传输控制协议(Transmission Control Protocol,TCP)和客户机/服务器模式进行通讯,具体地,被测试设备作为客户机,其通讯口打开函数中的目的IP地址应是测试设备的IP地址、目的端口号应是测试设备的TCP端口号,相应地,测试设备作为服务器,其通讯口打开函数中的对端IP地址应填写“表示任意IP地址”的值,服务端端口号应填写测试设备的TCP端口号。
由上可见,在本申请实施例中,被测试设备仅需要在每轮测试时向测试设备发送休眠报文及唤醒报文,由测试设备通过休眠报文及唤醒报文自动计算每轮测试的测试结果,此过程中不再需要用户人工进行计时、比对及计算,在提升测试结果准确性的前提下,大大节约了人工成本。
实施例二
下面对本申请实施例提供的一种测试实时时钟模块唤醒功能的方法进行描述,请参阅图2,本申请实施例中的测试实时时钟模块唤醒功能的方法应用于被测试设备,该方法包括:
在步骤201中,当接收到被测试设备发送的第一报文时,对上述第一报文进行解析,基于上述第一报文中携带的报文类型标识符确定上述第一报文的类型;
在本申请实施例中,由于不清楚上述第一报文的类型,因而,需要首先对该第一报文进行解析,基于上述第一报文中携带的报文类型标识符确定上述第一报文的类型。具体地,若确定上述第一报文中携带的报文类型标识符与预设的休眠报文标识符相等,例如为“S”,则代表上述第一报文为休眠报文;反之,若确定上述第一报文中携带的报文类型标识符与预设的唤醒报文标识符相等,例如为“W”,则代表上述第一报文为唤醒报文。
在步骤202中,若上述第一报文为休眠报文,则记录接收到上述第一报文的时间作为第一时间,并获取上述第一报文中携带的拟休眠时长;
在本申请实施例中,当确定上述第一报文为休眠报文时,测试设备将记录下接收到上述第一报文的时间作为第一时间。具体地,可以将上述第一时间记录于数据库或者其他存储区域中,此处不作限定。进一步地,还可以获取上述第一报文中携带的拟休眠时长,上述拟休眠时长即为上述被测试设备本轮测试过程的期望休眠时长。
在步骤203中,在接收到上述第一报文后,若接收到上述被测试设备发送的第二报文,则对上述第二报文进行解析,基于上述第二报文中携带的报文类型标识符确定上述第二报文的类型;
在本申请实施例中,在接收到第一报文后,若测试设备再次接收到了报文,则将再次接收到的报文记为第二报文。与步骤201相似地,若确定上述第二报文中携带的报文类型标识符与预设的休眠报文标识符相等,例如为“S”,则代表上述第二报文为休眠报文;反之,若确定上述第一报文中携带的报文类型标识符与预设的唤醒报文标识符相等,例如为“W”,则代表上述第二报文为唤醒报文。
在步骤204中,若上述第二报文为唤醒报文,则记录接收到上述第二报文的时间作为第二时间;
在本申请实施例中,当确定上述第二报文为唤醒报文时,测试设备将记录下接收到上述第二报文的时间作为第二时间。具体地,可以将上述第二时间与上述步骤202中的第一时间一起,作为同一轮测试的计时时间,记录于数据库或者其他存储区域中,此处不作限定。
在步骤205中,基于上述第一时间、上述第二时间及上述拟休眠时长,计算得到本轮测试结果;
在本申请实施例中,当上述第一报文为休眠报文时,该第一报文是被测试设备在休眠前发送的;而当上述第二报文为唤醒报文时,该第二报文是被测试设备在唤醒后发送的;因而,可以将上述第一时间作为上述被测试设备的实际休眠时刻、将上述第二时间作为上述被测试设备的实际唤醒时刻,将上述第一时间及第二时间的差值作为被测试设备实际处于休眠状态下的时长,即实际休眠时长。接着计算上述时间休眠时间与上述拟休眠时长的误差,得到RTC模块唤醒功能的准确度,也即得到本轮测试结果。具体地,RTC模块唤醒功能的准确度可以通过下述公式获得:准确度=[1-|(T2-T1)-Ts|/Ts]*100%。其中,T2为第二时间,T1为第一时间,Ts为拟休眠时长,|(T2-T1)-Ts|/Ts表示一轮测试过程(即被测试设备从进入休眠状态到被唤醒这一过程)中,实际休眠时时长与期望休眠时长(即拟休眠时长)的相对误差,1减去该相对误差后即可得到本轮RTC模块唤醒功能的准确度。
在步骤206中,检测是否达到预设的测试轮数或测试时间,若是,则执行步骤207,若否,则返回执行步骤201及后续步骤。
在本申请实施例中,可以在测试设备进入报文接收状态前,由测试设备输出测试结束条件选择框,用户可以自行选择是根据测试轮数作为测试结束的条件,或者根据测试时间作为测试结束的条件,此处不作限定。在用户选择好后,测试设备接收用户输入的测试结束条件选择指令,设定上述测试论述或测试时间,同时,向被测试设备发送上述测试结束条件选择指令,用以告知被测试设备结束本次测试的条件;或者,也可以是测试设备接收到上述测试结束条件选择指令后,先不告知测试设备,等到本次测试达到预设的测试论述或测试时间时,再向被测试设备发送测试结束指令,触发上述被测试设备结束测试,此处不作限定。可选地,若用户选择以测试轮数作为测试结束条件,则定义测试轮数变量,并将其初始值赋为0,每轮测试结束后该测试轮数变量加1,并在每轮测试结束后检测是否达到预设的测试轮数;若用户选择以测试时间作为测试结束条件,则定义测试时间变量,并将其初始值赋为本次测试开始时的当前时钟值,在每轮测试结束后,再次读取当前时钟值,将再次读取到的当前时钟值减去上述测试时间变量,得到本次测试的测试时长,并检测该测试时长是否达到预设的测试时间。通过上述过程,可以实现对测试的自动停止,避免采用人工计数的方式决定是否测试完成。
在步骤207中,测试结束。
可选地,上述方法还包括:
C1、获取上述测试设备与上述被测试设备之间的通讯方式;
C2、在上述测试设备中,打开与上述通讯方式相关的通讯端口;
C3、通过上述通讯端口接收上述被测试设备所发送的报文。
在本申请实施例中,上述通讯方式包括但不限于串口通讯、USB通讯、以太网通讯。基于被测试设备与上述测试设备之间的通讯方式,选择不同的通讯端口传输测试过程中所产生的休眠报文及唤醒报文。具体地,若为串口通讯,则在上述测试设备中打开与上述串口通讯相关的通讯端口,使得测试设备与被测试设备采用相同的波特率和通讯格式(数据位数、停止位数、字符校验方式)进行通讯;若为USB通讯,则在上述测试设备中打开与上述串口通讯相关的通讯端口,使得测试设备与被测试设备中的其中一个设备采用设备模式,另一设备采用主机模式,采用相同的总线速率及相同的传输协议进行通讯;若为以太网通讯,则测试设备与被测试设备采用TCP协议和客户机/服务器模式进行通讯,具体地,测试设备作为服务器,其通讯口打开函数中的对端IP地址应填写“表示任意IP地址”的值,服务端端口号应填写测试设备的TCP端口号,相应地,被测试设备作为客户机,其通讯口打开函数中的目的IP地址应是测试设备的IP地址、目的端口号应是测试设备的TCP端口号。在打开了上述测试设备的相关通讯端口后,可通过上述通讯端口接收上述被测试设备所发送的报文。具体地,还可以对上述通讯端口进行监听,用以及时获取上述被测试设备所发送的报文。
可选地,上述方法还包括:
D1、在上述测试设备等待接收被测试设备发送的报文的过程中,实时获取上述测试设备的接收等待时长,其中,上述报文包括第一报文及第二报文;
D2、若上述接收等待时长超过了预设的接收等待时长阈值,则输出接收超时消息。
在本申请实施例中,上述接收等待时长阈值与测试设备当前所等待接收的报文的报文类型相关。具体地,在一种应用场景下,若上述被测试设备所等待接收的为唤醒报文(即第二报文),则上述接收等待时长实际为唤醒报文的接收超时时长,上述接收等待时长阈值可以基于拟休眠时长而设定,通常为大于上述拟休眠时长,例如,可以将上述接收等待时长阈值设定为两倍的拟休眠时长。实际上,正常情况下,若本轮测试设备休眠100秒,则在发送了休眠报文的100秒后,测试设备即可接收到唤醒报文。但考虑到实际应用中上述唤醒过程是最容易出现错误的过程,很可能出现一直无法唤醒、实际唤醒时刻慢于指定的唤醒时刻等错误,因而此处可设定上述唤醒报文的接收等待时长阈值为2*100秒,额外增加了一倍的时长,使得即使被测试设备出现非重大的唤醒错误,测试设备也仍然能够接收到唤醒报文。需要注意的是,考虑到测试效率,上述接收等待时长阈值没有被设定为无限大值,即此处没有设定为无限等候唤醒报文。具体地,在计时时间超过了上述接收等候时长阈值时,若仍未接收到上述被测试设备发送的第二报文,则认为被测试设备的唤醒过程出现了错误,此时,可以输出接收超时消息,例如,输出“未接收到唤醒报文”,并结束本轮测试。
在另一种应用场景下,若上述被测试设备所等待接收的为休眠报文(即第一报文),则上述接收等待时长即为休眠报文的接收超时时长,上述接收等待时长阈值可以基于上述被测试设备完成一轮测试后的等待时间而设定。假定被测试设备完成一轮测试后(即从休眠状态中唤醒后),需要等待Tw秒才再次进入下一轮测试(即等待Tw秒才再次进入休眠状态),则可以将上述接收等待时长阈值设定为Tw+3秒,当然,用户也可以自行设定上述被测试设备的Tw的值,此处不作限定。因为被测试设备一般要求连续两次调用休眠函数需等候一个最小间隔时长,因而测试设备收到唤醒报文后,被测试设备会等候Tw秒后再次进入休眠,为了更保险起见,将测试设备的休眠报文的接收等待时长阈值设定为Tw+3秒,额外增加了3秒钟的超时,以免误报接收超时错误。当然,也可以将上述接收等待时长阈值设定为Tw+5秒或者Tw+10秒,此处不作限定。具体地,若接收等待时长超过了上述接收等待时长阈值时,仍未接收到上述被测试设备发送的第一报文,则认为被测试设备的休眠过程出现了错误,此时,可以输出接收超时消息,例如,输出“未接收到休眠报文”,并结束本轮测试。
由上可见,在本申请实施例中,被测试设备仅需要在每轮测试时向测试设备发送休眠报文及唤醒报文,由测试设备通过休眠报文及唤醒报文自动计算每轮测试的测试结果,此过程中不再需要用户人工进行计时、比对及计算,在提升测试结果准确性的前提下,大大节约了人工成本。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
需要注意的是,上述实施例二中应用于测试设备上的方法应先被启动运行,使得测试设备进入报文接收等待状态;随后再启动运行上述实施例一中应用于被测试设备上的方法;在测试设备接收到被测试设备所发送的第一个报文后,被测试设备及测试设备即可进入同步状态,即可保证上述两套方法的同时运行。这样一来,由于测试设备优先启动,可使得被测试设备所发送的报文不会发生丢失情况,能够避免测试结果被影响。
为了更好的说明本申请实施例所提供的技术方案,下面通过被测试设备与测试设备在测试过程中的时间轴对测试实时时钟模块唤醒功能的方法作出说明,请参阅图3:
F1、在被测试设备上设置唤醒方式;并且,在测试设备上设置循环方式,即,选择结束条件;
F2、测试设备与被测试设备根据通讯方式,分别打开相应的通讯端口;
F3、第一轮测试开始,测试设备等候接收休眠报文;被测试设备发送休眠报文后进入休眠状态;测试设备接收休眠报文,并记录下当前时刻T1,随之开始等候接收唤醒报文;
F4、达到唤醒时间,被测试设备被唤醒,并向测试设备发送唤醒报文;被测试设备接收唤醒报文,并记录下当前时刻T2,并等到接收下一轮测试被测试设备所发送的的休眠报文;
F5、被测试设备被唤醒后,等待预设时间Tw,第二轮测试开始,其过程与F3、F4相似,经过若干轮测试后,达到本次测试达到所选择的结束条件,本次测试结束。
为了更好的说明本申请实施例所提供的技术方案,下面给出具体的测试结果实例:
表1
其中,上述表1示出了在随机延时唤醒的唤醒方式(随机数范围为10至600),结束条件为1000轮测试下的部分测试流水记录;
当然,基于一次测试下多轮测试的结果,还可以统计本次测试的平均准确度、平均误差率、均方误差等可选指标。例如:
实际测试轮数 | 2000 |
最小准确度 | 95 |
最大准确度 | 100 |
平均准确度 | 98.8 |
是否出现休眠报文未收到情况 | 否 |
是否出现唤醒报文未收到情况 | 否 |
测试结论 | 通过 |
表2
其中,上述表2示出了在随机延时唤醒的唤醒方式(随机数范围为10至600),结束条件为2000轮测试下的测试结果的部分可选指标的统计;由于已确保采用可信任的测试设备和测试环境,若出现报文未收到情况,通常指示被测试设备上出现了不能唤醒或死机等严重***故障。
实施例三
本发明实施例提供了一种测试实时时钟模块唤醒功能的装置,应用于被测试设备,如图4所示,本发明实施例中的测试实时时钟模块唤醒功能的装置400包括:
设定单元401,用于设定上述被测试设备的目标唤醒方式,用以确定上述被测试设备的唤醒时刻及拟休眠时长;
第一发送单元402,用于向测试设备发送休眠报文,并触发上述被测试设备进入休眠状态,其中,上述休眠报文携带有报文类型标识符及上述计算单元计算的拟休眠时长;
第二发送单元403,用于当上述被测试设备从上述休眠状态中被唤醒时,向上述测试设备发送唤醒报文,以使得上述测试设备基于上述休眠报文及上述唤醒报文得到本轮测试结果,其中,上述唤醒报文携带有报文类型标识符及拟休眠时长;
其中,上述设定单元401在等待预设时长后再次被触发,直至达到预设的测试轮数或测试时间。
可选地,上述设定单元401包括:
选择指令接收子单元,用于接收输入的唤醒方式选择指令;
目标唤醒方式确定子单元,用于基于上述唤醒方式选择指令,在预设的两个以上唤醒方式中,确定目标唤醒方式;
唤醒参数设定子单元,用于根据上述目标唤醒方式设定上述被测试设备的唤醒时刻及拟休眠时间。
可选地,上述装置400还包括:
通讯方式获取单元,用于获取上述被测试设备与上述测试设备之间的通讯方式;
通讯端口打开单元,用于在上述被测试设备中,打开与上述通讯方式相关的通讯端口,以使得上述被测试设备通过上述通讯端口向上述测试设备发送报文。
由上可见,在本申请实施例中,被测试设备仅需要在每轮测试时向测试设备发送休眠报文及唤醒报文,由测试设备通过休眠报文及唤醒报文自动计算每轮测试的测试结果,此过程中不再需要用户人工进行计时、比对及计算,在提升测试结果准确性的前提下,大大节约了人工成本。
实施例四
本发明实施例提供了一种测试实时时钟模块唤醒功能的装置,应用于测试设备,如图5所示,本发明实施例中的测试实时时钟模块唤醒功能的装置500包括:
第一解析单元501,用于当接收到被测试设备发送的第一报文时,对上述第一报文进行解析,基于上述第一报文中携带的报文类型标识符确定上述第一报文的类型;
第一记录单元502,用于若上述第一解析单元确定上述第一报文为休眠报文,则记录接收到上述第一报文的时间作为第一时间,并获取上述第一报文中携带的拟休眠时长;
第二解析单元503,用于在接收到上述第一报文后,若接收到上述被测试设备发送的第二报文,则对上述第二报文进行解析,基于上述第二报文中携带的报文类型标识符确定上述第二报文的类型;
第二记录单元504,用于若上述第二解析单元确定上述第二报文为唤醒报文,则记录接收到上述第二报文的时间作为第二时间;
结果计算单元505,用于基于上述第一单元记录的第一时间、上述第二单元记录的第二时间及上述拟休眠时长,计算得到本轮测试结果;
其中,上述第一解析单元501上述结果计算单元505执行完成后被再次触发,直至达到预设的测试轮数或测试时间。
可选地,上述装置500还包括:
通讯方式获取单元,用于获取上述测试设备与上述被测试设备之间的通讯方式;
通讯端口打开单元,用于在上述测试设备中,打开与上述通讯方式相关的通讯端口;
报文接收单元,用于通过上述通讯端口接收上述被测试设备所发送的报文。
可选地,上述装置500还包括:
接收等待时长获取单元,用于在上述测试设备等待接收被测试设备发送的报文的过程中,实时获取上述测试设备的接收等待时长,其中,上述报文包括第一报文及第二报文;
超时消息输出单元,用于若上述接收等待时长超过了预设的接收等待时长阈值,则输出接收超时消息。
由上可见,在本申请实施例中,被测试设备仅需要在每轮测试时向测试设备发送休眠报文及唤醒报文,由测试设备通过休眠报文及唤醒报文自动计算每轮测试的测试结果,此过程中不再需要用户人工进行计时、比对及计算,在提升测试结果准确性的前提下,大大节约了人工成本。
实施例五
本发明实施例提供一种被测试设备,请参阅图6,本发明实施例中的被测试设备包括:存储器601,一个或多个处理器602(图6中仅示出一个)及存储在存储器601上并可在处理器上运行的计算机程序。其中:存储器601用于存储软件程序以及模块,处理器602通过运行存储在存储器601的软件程序以及单元,从而执行各种功能应用以及数据处理,以获取上述预设事件对应的资源。具体地,处理器602通过运行存储在存储器601的上述计算机程序时实现以下步骤:
设定上述被测试设备的目标唤醒方式,用以确定上述被测试设备的唤醒时刻及拟休眠时长;
向测试设备发送休眠报文,并触发上述被测试设备进入休眠状态,其中,上述休眠报文携带有报文类型标识符及拟休眠时长;
当上述被测试设备从上述休眠状态中被唤醒时,向上述测试设备发送唤醒报文,以使得上述测试设备基于上述休眠报文及上述唤醒报文得到本轮测试结果,其中,上述唤醒报文携带有报文类型标识符及拟休眠时长;
等待预设时长后,重复执行上述设定上述被测试设备的目标唤醒方式,用以确定上述被测试设备的唤醒时刻及拟休眠时长的步骤及后续步骤,直至达到预设的测试轮数或测试时间。
假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,上述设定上述被测试设备的目标唤醒方式,用以确定上述被测试设备的唤醒时刻及拟休眠时长,包括:
接收输入的唤醒方式选择指令;
基于上述唤醒方式选择指令,在预设的两个以上唤醒方式中,确定目标唤醒方式;
根据上述目标唤醒方式设定上述被测试设备的唤醒时刻及拟休眠时长。
在上述第一种可能的实施方式作为基础而提供的第三种可能的实施方式中,处理器602通过运行存储在存储器601的上述计算机程序时实现以下步骤:
获取上述被测试设备与上述测试设备之间的通讯方式;
在上述被测试设备中,打开与上述通讯方式相关的通讯端口,以使得上述被测试设备通过上述通讯端口向上述测试设备发送报文。
进一步,如图6所示,上述被测试设备还可包括:一个或多个输入设备603(图6中仅示出一个)和一个或多个输出设备604(图6中仅示出一个)。存储器601、处理器602、输入设备603和输出设备604通过总线605连接。
应当理解,在本发明实施例中,所称处理器602可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
输入设备603可以包括键盘、触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备604可以包括显示器、扬声器等。
存储器601可以包括只读存储器和随机存取存储器,并向处理器602提供指令和数据。存储器601的一部分或全部还可以包括非易失性随机存取存储器。例如,存储器601还可以存储设备类型的信息。
由上可见,通过本申请实施例,被测试设备仅需要在每轮测试时向测试设备发送休眠报文及唤醒报文,由测试设备通过休眠报文及唤醒报文自动计算每轮测试的测试结果,此过程中不再需要用户人工进行计时、比对及计算,在提升测试结果准确性的前提下,大大节约了人工成本。
实施例六
本发明实施例提供一种测试设备,请参阅图7,本发明实施例中的测试设备包括:存储器701,一个或多个处理器702(图4中仅示出一个)及存储在存储器701上并可在处理器上运行的计算机程序。其中:存储器701用于存储软件程序以及模块,处理器702通过运行存储在存储器701的软件程序以及单元,从而执行各种功能应用以及数据处理,以获取上述预设事件对应的资源。具体地,处理器702通过运行存储在存储器701的上述计算机程序时实现以下步骤:
当接收到被测试设备发送的第一报文时,对上述第一报文进行解析,基于上述第一报文中携带的报文类型标识符确定上述第一报文的类型;
若上述第一报文为休眠报文,则记录接收到上述第一报文的时间作为第一时间,并获取上述第一报文中携带的拟休眠时长;
在接收到上述第一报文后,若接收到上述被测试设备发送的第二报文,则对上述第二报文进行解析,基于上述第二报文中携带的报文类型标识符确定上述第二报文的类型;
若上述第二报文为唤醒报文,则记录接收到上述第二报文的时间作为第二时间;
基于上述第一时间、上述第二时间及上述拟休眠时长,计算得到本轮测试结果;
重复执行上述当接收到被测试设备发送的第一报文时,对上述第一报文进行解析,基于上述第一报文中携带的报文类型标识符确定上述第一报文的类型的步骤及后续步骤,直至达到预设的测试轮数或测试时间。
假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,处理器702通过运行存储在存储器701的上述计算机程序时还实现以下步骤:
获取上述测试设备与上述被测试设备之间的通讯方式;
在上述测试设备中,打开与上述通讯方式相关的通讯端口;
通过上述通讯端口接收上述被测试设备所发送的报文。
在上述第一种可能的实施方式作为基础而提供的第三种可能的实施方式中,处理器702通过运行存储在存储器701的上述计算机程序时还实现以下步骤:
在上述测试设备等待接收被测试设备发送的报文的过程中,实时获取上述测试设备的接收等待时长,其中,上述报文包括第一报文及第二报文;
若上述接收等待时长超过了预设的接收等待时长阈值,则输出接收超时消息。
进一步,如图7所示,上述测试设备还可包括:一个或多个输入设备703(图7中仅示出一个)和一个或多个输出设备704(图7中仅示出一个)。存储器701、处理器702、输入设备703和输出设备704通过总线705连接。
应当理解,在本发明实施例中,所称处理器702可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
输入设备703可以包括键盘、触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备704可以包括显示器、扬声器等。
存储器701可以包括只读存储器和随机存取存储器,并向处理器702提供指令和数据。存储器701的一部分或全部还可以包括非易失性随机存取存储器。例如,存储器701还可以存储设备类型的信息。
由上可见,通过本申请实施例,被测试设备仅需要在每轮测试时向测试设备发送休眠报文及唤醒报文,由测试设备通过休眠报文及唤醒报文自动计算每轮测试的测试结果,此过程中不再需要用户人工进行计时、比对及计算,在提升测试结果准确性的前提下,大大节约了人工成本。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的***实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上上述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种测试实时时钟模块唤醒功能的方法,其特征在于,应用于被测试设备,包括:
设定所述被测试设备的目标唤醒方式,用以确定所述被测试设备的唤醒时刻及拟休眠时长;
向测试设备发送休眠报文,并触发所述被测试设备进入休眠状态,其中,所述休眠报文携带有报文类型标识符及拟休眠时长;
当所述被测试设备从所述休眠状态中被唤醒时,向所述测试设备发送唤醒报文,以使得所述测试设备基于所述休眠报文及所述唤醒报文得到本轮测试结果,其中,所述唤醒报文携带有报文类型标识符及拟休眠时长;
等待预设时长后,重复执行所述设定所述被测试设备的目标唤醒方式,用以确定所述被测试设备的唤醒时刻及拟休眠时长的步骤及后续步骤,直至达到预设的测试轮数或测试时间。
2.如权利要求1所述的方法,其特征在于,所述设定所述被测试设备的目标唤醒方式,用以确定所述被测试设备的唤醒时刻及拟休眠时长,包括:
接收输入的唤醒方式选择指令;
基于所述唤醒方式选择指令,在预设的两个以上唤醒方式中,确定目标唤醒方式;
根据所述目标唤醒方式设定所述被测试设备的唤醒时刻及拟休眠时长。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述被测试设备与所述测试设备之间的通讯方式;
在所述被测试设备中,打开与所述通讯方式相关的通讯端口,以使得所述被测试设备通过所述通讯端口向所述测试设备发送报文。
4.一种测试实时时钟模块唤醒功能的方法,其特征在于,应用于测试设备,包括:
当接收到被测试设备发送的第一报文时,对所述第一报文进行解析,基于所述第一报文中携带的报文类型标识符确定所述第一报文的类型;
若所述第一报文为休眠报文,则记录接收到所述第一报文的时间作为第一时间,并获取所述第一报文中携带的拟休眠时长;
在接收到所述第一报文后,若接收到所述被测试设备发送的第二报文,则对所述第二报文进行解析,基于所述第二报文中携带的报文类型标识符确定所述第二报文的类型;
若所述第二报文为唤醒报文,则记录接收到所述第二报文的时间作为第二时间;
基于所述第一时间、所述第二时间及所述拟休眠时长,计算得到本轮测试结果;
重复执行所述当接收到被测试设备发送的第一报文时,对所述第一报文进行解析,基于所述第一报文中携带的报文类型标识符确定所述第一报文的类型的步骤及后续步骤,直至达到预设的测试轮数或测试时间。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:
获取所述测试设备与所述被测试设备之间的通讯方式;
在所述测试设备中,打开与所述通讯方式相关的通讯端口;
通过所述通讯端口接收所述被测试设备所发送的报文。
6.如权利要求4所述的方法,其特征在于,所述方法还包括:
在所述测试设备等待接收被测试设备发送的报文的过程中,实时获取所述测试设备的接收等待时长,其中,所述报文包括第一报文及第二报文;
若所述接收等待时长超过了预设的接收等待时长阈值,则输出接收超时消息。
7.一种被测试设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至3任一项所述方法的步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述方法的步骤。
9.一种测试设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求4至6任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求4至6任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910014718.9A CN109921915B (zh) | 2019-01-08 | 2019-01-08 | 测试实时时钟模块唤醒功能的方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910014718.9A CN109921915B (zh) | 2019-01-08 | 2019-01-08 | 测试实时时钟模块唤醒功能的方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109921915A true CN109921915A (zh) | 2019-06-21 |
CN109921915B CN109921915B (zh) | 2021-04-23 |
Family
ID=66960181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910014718.9A Active CN109921915B (zh) | 2019-01-08 | 2019-01-08 | 测试实时时钟模块唤醒功能的方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109921915B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112333766A (zh) * | 2020-11-13 | 2021-02-05 | 北京美斯顿科技开发有限公司 | 一种无线通信方法、***、终端通信设备及电子设备 |
CN113207148A (zh) * | 2021-03-19 | 2021-08-03 | 深圳市有方科技股份有限公司 | 数据传输方法、装置、通信设备和存储介质 |
CN113391936A (zh) * | 2021-06-15 | 2021-09-14 | 西安联乘智能科技有限公司 | 用于车载智能天线设备的可靠性测试方法及*** |
CN113965484A (zh) * | 2021-10-21 | 2022-01-21 | 奇瑞商用车(安徽)有限公司 | 汽车总线休眠唤醒台架测试方法及*** |
CN113965483A (zh) * | 2021-10-21 | 2022-01-21 | 奇瑞商用车(安徽)有限公司 | Autosar网管预休眠到休眠的时间测试装置及方法 |
CN113992555A (zh) * | 2021-10-27 | 2022-01-28 | 奇瑞商用车(安徽)有限公司 | 一种主节点网络自动化测试方法及*** |
CN114124767A (zh) * | 2021-11-29 | 2022-03-01 | 奇瑞商用车(安徽)有限公司 | 网关网络管理策略的自动测试方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101662777A (zh) * | 2009-09-11 | 2010-03-03 | 北京交通大学 | 基于概率统计的无线传感器网络分布式休眠方法 |
CN102023912A (zh) * | 2009-09-11 | 2011-04-20 | 鸿富锦精密工业(深圳)有限公司 | 休眠唤醒测试***及方法 |
US20120120958A1 (en) * | 2010-02-01 | 2012-05-17 | Priya Mahadevan | Deep sleep mode management for a network switch |
CN105302726A (zh) * | 2015-11-13 | 2016-02-03 | 浪潮电子信息产业股份有限公司 | 一种测试的方法及装置 |
-
2019
- 2019-01-08 CN CN201910014718.9A patent/CN109921915B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101662777A (zh) * | 2009-09-11 | 2010-03-03 | 北京交通大学 | 基于概率统计的无线传感器网络分布式休眠方法 |
CN102023912A (zh) * | 2009-09-11 | 2011-04-20 | 鸿富锦精密工业(深圳)有限公司 | 休眠唤醒测试***及方法 |
US20120120958A1 (en) * | 2010-02-01 | 2012-05-17 | Priya Mahadevan | Deep sleep mode management for a network switch |
CN105302726A (zh) * | 2015-11-13 | 2016-02-03 | 浪潮电子信息产业股份有限公司 | 一种测试的方法及装置 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112333766A (zh) * | 2020-11-13 | 2021-02-05 | 北京美斯顿科技开发有限公司 | 一种无线通信方法、***、终端通信设备及电子设备 |
CN113207148A (zh) * | 2021-03-19 | 2021-08-03 | 深圳市有方科技股份有限公司 | 数据传输方法、装置、通信设备和存储介质 |
CN113207148B (zh) * | 2021-03-19 | 2023-09-01 | 深圳市有方科技股份有限公司 | 数据传输方法、装置、通信设备和存储介质 |
CN113391936A (zh) * | 2021-06-15 | 2021-09-14 | 西安联乘智能科技有限公司 | 用于车载智能天线设备的可靠性测试方法及*** |
CN113965484A (zh) * | 2021-10-21 | 2022-01-21 | 奇瑞商用车(安徽)有限公司 | 汽车总线休眠唤醒台架测试方法及*** |
CN113965483A (zh) * | 2021-10-21 | 2022-01-21 | 奇瑞商用车(安徽)有限公司 | Autosar网管预休眠到休眠的时间测试装置及方法 |
CN113965483B (zh) * | 2021-10-21 | 2023-10-31 | 奇瑞商用车(安徽)有限公司 | Autosar网管预休眠到休眠的时间测试装置及方法 |
CN113965484B (zh) * | 2021-10-21 | 2024-05-28 | 奇瑞汽车股份有限公司 | 汽车总线休眠唤醒台架测试方法及*** |
CN113992555A (zh) * | 2021-10-27 | 2022-01-28 | 奇瑞商用车(安徽)有限公司 | 一种主节点网络自动化测试方法及*** |
CN113992555B (zh) * | 2021-10-27 | 2024-06-04 | 奇瑞汽车股份有限公司 | 一种主节点网络自动化测试方法及*** |
CN114124767A (zh) * | 2021-11-29 | 2022-03-01 | 奇瑞商用车(安徽)有限公司 | 网关网络管理策略的自动测试方法及装置 |
CN114124767B (zh) * | 2021-11-29 | 2024-06-04 | 奇瑞汽车股份有限公司 | 网关网络管理策略的自动测试方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109921915B (zh) | 2021-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109921915A (zh) | 测试实时时钟模块唤醒功能的方法、装置及电子设备 | |
CN104904309B (zh) | 一种发送心跳消息的方法及移动终端 | |
CN1992635B (zh) | 模拟snmp网元及用该网元进行网管***测试的方法 | |
CN107547300B (zh) | 一种网络质量检测方法及装置 | |
CN109788027A (zh) | 数据同步方法、装置、服务器及计算机存储介质 | |
Inçki et al. | Runtime verification of IoT systems using complex event processing | |
CN106897219A (zh) | 移动终端***稳定性测试方法及装置 | |
CN109142861A (zh) | 智能电表的通讯方法及装置、智能电表 | |
CN107704317B (zh) | 智能设备及其应用管理方法和具有存储功能的装置 | |
CN112601199A (zh) | 一种基于低功耗蓝牙的智能接触感知方法、设备及*** | |
CN113965904A (zh) | 设备注册方法、装置和存储介质 | |
CN102937893A (zh) | 一种动态重载定时长度的软件定时方法 | |
CN105528546B (zh) | 一种挖掘漏洞的方法、装置及电子设备 | |
CN114615358A (zh) | 智能电子设备的仿真方法、电子设备和存储介质 | |
CN106730847B (zh) | 一种游戏外挂检测方法及装置 | |
CN108964822A (zh) | 一种多方案并行获取网络时间的方法及*** | |
CN106445660B (zh) | 移动终端的应用控制方法及移动终端 | |
CN107608723A (zh) | 一种应用对齐唤醒方法、终端及计算机可读存储介质 | |
CN106982156B (zh) | 优先级设置方法、装置、通信***、设备及可读存储介质 | |
CN106686697B (zh) | zigbee终端设备节点管理的方法 | |
CN107171921B (zh) | 一种基于rs485网络的实时通信方法 | |
CN109213589A (zh) | 一种消息处理的方法及装置 | |
CN109040937A (zh) | 麦克风堵塞提醒方法及相关装置 | |
CN108834204A (zh) | 寻呼方法、***及网络设备 | |
CN114390114A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |