自动化测试的方法、计算机装置以及用户接口与流程

文档序号:30184646发布日期:2022-05-26 17:43阅读:237来源:国知局
自动化测试的方法、计算机装置以及用户接口与流程
自动化测试的方法、计算机装置以及用户接口
1.本技术是申请日为2018年11月14日、申请号为201811352745.9、发明名称为“自动化测试的方法、计算机装置以及用户接口”的发明申请的分案申请。
技术领域
2.本技术涉及一种自动化测试机制,特别有关于一种对多个待测存储装置进行自动化测试的方法、计算机装置以及用户接口。


背景技术:

3.一般而言,目前工厂量产多个存储装置(例如固态硬盘ssd),工厂端自己的传统现有的验证测试流程是通过采用市面上经过认可/认证过的一些标准化的不同测试工具软件来进行测试,该些不同测试工具软件彼此是互相独立运作的,因此,工厂端的操作员需要逐次人工一个一个地开启执行不同的测试工具软件来执行不同的测试,并且每次开启执行一个测试工具软件时也仅能够对于一个存储装置来进行测试,此外,每次开启执行一个测试工具软件时操作员也需要自己人工点击并设定相关的测试设定参数及栏位,而在每次一个测试工具软件执行之后,操作员也需要自己人工储存相关的测试结果以及人工检查该存储装置是否有通过该项目的测试。如此旷日废时的测试方式实不符合现今高效率生产制作的利益。


技术实现要素:

4.因此,本技术的目的之一在于公开一种能够自动开启/执行/设定不同测试工具软件来对多个不同存储装置进行自动化测试的程序/方法及对应的装置,以解决现有技术的难题。
5.根据本技术的实施例,其公开了一种对多个待测固态硬盘存储装置进行自动化测试的方法,所述多个待测固态硬盘存储装置通过第一外部连接端口与第二外部连接端口分别连接至计算机装置,所述第一外部连接端口不同于所述第二外部连接端口,所述计算机装置具有用户接口,所述自动化测试由所述计算机装置分别通过所述第一外部连接端口与所述第二外部连接端口,逐一或同时地发送多个测试讯号至连接于所述第一外部连接端口与所述第二外部连接端口的所述多个待测固态硬盘存储装置的多个闪存控制器来进行测试,所述多个闪存控制器根据所接收的所述多个测试讯号来接着对所述多个待测固态硬盘存储装置的多个闪存芯片进行相应的测试,以分别得到并记录所述多个待测固态硬盘存储装置的多个测试结果,以及所述多个闪存控制器通过所述第一外部连接端口与所述第二外部连接端口将所述多个测试结果分别回报给所述计算机装置,令所述计算机装置储存所述多个测试结果于所述计算机装置的一存储电路。所述方法包含:提供所述用户接口,令用户可通过所述用户接口输入执行测试工具软件对所述多个待测固态硬盘存储装置进行测试工作时的设定参数;根据所述设定参数,自动设定所述测试工具软件执行测试工作时所需要参照的栏位信息;根据所述栏位信息,自动执行所述测试工具软件以分别对所述多个待
测固态硬盘存储装置进行所述测试工作;以及自动储存所述测试工具软件完成所述测试工作的测试结果,并显示所述测试结果于所述用户接口,以通知所述用户。其中,根据所述栏位信息自动执行所述测试工具软件以分别对所述多个待测固态硬盘存储装置进行所述测试工作的步骤包含:执行特定程序代码,以辨识得到启动所述测试工具软件的所述测试工作的所需要的物件的访问控制权;以及根据所述物件的所述访问控制权,启动所述测试工具软件的所述测试工作。
6.根据本技术的实施例,另公开了一种计算机装置,用以对多个待测固态硬盘存储装置进行自动化测试,所述多个待测固态硬盘存储装置通过第一外部连接端口与第二外部连接端口分别连接至所述计算机装置,所述第一外部连接端口不同于所述第二外部连接端口,所述计算机装置具有用户接口,所述自动化测试由所述计算机装置分别通过所述第一外部连接端口与所述第二外部连接端口,逐一或同时地发送多个测试讯号至连接于所述第一外部连接端口与所述第二外部连接端口的所述多个待测固态硬盘存储装置的多个闪存控制器来进行测试,所述多个闪存控制器根据所接收的所述多个测试讯号来接着对所述多个待测固态硬盘存储装置的多个闪存芯片进行相应的测试,以分别得到并记录所述多个待测固态硬盘存储装置的多个测试结果,以及所述多个闪存控制器通过所述第一外部连接端口与所述第二外部连接端口将所述多个测试结果分别回报给所述计算机装置,令所述计算机装置储存所述多个测试结果于所述计算机装置的存储电路。所述计算机装置包含:所述用户接口,令所述用户可通过所述用户接口输入执行测试工具软件对所述多个待测固态硬盘存储装置进行测试工作时的设定参数;所述存储电路,用以储存进行所述自动化测试的特定程序代码;一处理器,耦接至所述存储电路及所述用户接口,用以从所述存储电路读取所述特定程序代码,执行所述特定程序代码:根据所述设定参数,自动设定所述测试工具软件执行测试工作时所需要参照的栏位信息;根据所述栏位信息,自动执行所述测试工具软件以分别对所述多个待测固态硬盘存储装置进行所述测试工作;以及自动储存所述测试工具软件完成所述测试工作的测试结果,并显示所述测试结果于所述用户接口,以通知所述用户。其中,所述处理器执行特定程序代码以进行:辨识得到启动所述测试工具软件的所述测试工作的所需要的物件的访问控制权;以及根据所述物件的所述访问控制权,启动所述测试工具软件的所述测试工作。
附图说明
7.图1为使用本技术的实施例的进行自动化测试的装置示意图。
8.图2为应用本技术的方法流程于计算机装置时用户于计算机装置的用户接口上可操作及设定的项目的画面范例示意图。
9.图3为本技术实施例启动执行一测试工具软件或一测试工具软件程序实体的自动化测试流程的范例示意图。
10.其中,附图标记说明如下:
11.100
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
计算机装置
12.101
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
处理器
13.102
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
存储电路
14.103
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
用户接口
15.104a
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
网桥
16.104b、104c
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
集线器
17.105a、105b、105c
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
固态硬盘存储装置
18.106a、106b、106c
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
闪存控制器
19.107a、107b、107c
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
闪存芯片
20.200
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
用户接口的画面
21.205、210、215、220、225、230
ꢀꢀꢀꢀ
画面上的操作区
具体实施方式
22.本技术旨在于公开一种具有人工智能的自动化测试的程序及方法,该自动化测试程序是通过一特定程序代码/软件程序包整合兼容市面上常用或所有可能的标准化测试工具软件,通过该自动化测试程序,用户或工厂端的操作员只要通过计算机装置的一个用户接口先以人工设定需要执行的一或多个测试工具软件、对哪些存储装置进行测试(选取哪些存储装置作为待测的存储装置)、是单端口循序测试或多埠同时测试、及/或其他相关或常用的一或多组的设定参数,后续该自动化测试程序就能够自动地开启执行所需要的不同测试工具软件、自动对待测的存储装置进行测试、自动选择以循序或同时的方式进行测试、自动地设定完成不同测试工具软件的测试参数以及自动完成不同测试工具软件的不同测试工作等等。
23.此外,本技术的自动化测试程序亦可以令同一测试工具软件对一或多个存储装置进行自动重复测试。因此,对于用户或操作员来说,具有极大的便利性,以及对于工厂端的产线运作来说,更可大幅提升量产测试流程的效率、省去等待时间以及提升产线测试运作的正确性。
24.请参照图1,图1是使用本技术的实施例进行自动化测试的装置示意图。如图1所示,本技术的实施例的自动化测试程序系执行于计算机装置100上,计算机装置100例如是搭载有窗口操作系统软件程序的一计算机装置,例如是微软的窗口操作系统windows 7或windows 10、苹果的mac os、或是一个与操作系统相整合的窗口系统;窗口操作系统的类型及版本均并非本技术的限制。此外,计算机装置100包括一处理器101例如中央处理器、一存储电路102例如一内存以及一用户接口103。
25.本技术的实施例的自动化测试程序的方法流程可被实现为一段具有人工智能的一特定程序代码并被打包于一软件程序包,该软件程序包可通过网络下载并储存于存储电路102,令处理器110可读取、执行该软件程序包内的该特定程序代码,或是在其他实施例该软件程序包被储存于一携带型的存储装置,通过将该携带型的存储装置连接至计算机装置100,令处理器110可读取、执行该软件程序包内的该特定程序代码。
26.此外,该软件程序包另包括多个测试工具软件程序,其中该些测试工具软件程序可以部分为免安装程序(亦即可直接执行的一免安装的测试工具软件程序),或是需要被安装才可以执行的程序,举例来说,该些测试工具软件程序可包括一固态硬盘性能测试的工具软件程序(例如as ssd benchmark软件程序)、一检测硬盘的工具软件程序(例如crystaldiskinfo软件程序)、硬盘检测维修的工具软件程序(例如hdtunepro软件程序)、一烧机测试的工具软件程序(例如burnintest软件程序)、读写速度测试的工具软件程序
(h2testw软件程序)、一创造硬盘槽位的测试工具软件(createpartition软件程序)及/或一删除硬盘槽位的测试工具软件(deletepartition软件程序)等,测试工具软件的项目可以是多个不同的软件程序项目,这并非是本技术的限制。例如,某些测试工具软件在执行时的需求是不需要槽位的,本技术的自动化测试程序可以先执行删除硬盘槽位的测试工具软件,将原先规画好的槽位信息删除,待稍后执行完成该不需要槽位的测试工具软件后,再自动地执行创造硬盘槽位的测试工具软件,以恢复槽位信息。此外,对于某些测试工具软件在执行时的需求是必需要有槽位的,本技术的自动化测试程序也可以先执行创造硬盘槽位的测试工具软件,先产生多个存储装置的各自的槽位信息,以便让稍后执行的必需要有槽位的测试工具软件可以顺利自动执行。
27.此外,计算机装置100可通过一或多个连接端口连接至多个外接的且要被测试的存储装置,例如是图1所示的固态硬盘(ssd)存储装置105a~105c或是其他闪存装置,但不限定。此外,一固态硬盘存储装置例如包含有一闪存控制器及至少一闪存芯片例如是nand型闪存芯片或nor型闪存芯片,例如图1所示的闪存控制器106a~106c等以及闪存芯片107a~107c等等;该闪存控制器系进行错误检查/纠正(ecc)、磨损平衡、坏块映射、缓存控制、垃圾回收、加密以及读/写、抹除该闪存芯片的储存页或储存区块等等,此外,计算机装置100的处理器101执行一个测试工具软件以测试一个或多个固态硬盘存储装置时,通过计算机装置100的一或多个的外部连接端口分别发送一或多个相应的测试讯号至一个或多个固态硬盘存储装置的各自的闪存控制器,例如,如果处理器101所执行的是进行读/写的测试软件(但不限定),则一或多个各自的闪存控制器会接收到进行读/写的相应的测试讯号,接着对各自相应的闪存芯片进行多次的读/写并记录多次的读/写的测试结果,之后由该些闪存控制器通过上述的外部连接端口回报该些测试结果给计算机装置100的处理器101。如图1所示,第一连接端口例如usb接口,并通过usb转sata的网桥接口104(bridge)而连接至第一个要被测试的存储装置105a,该存储装置105a的槽位例如是在d槽,此外,第二连接端口例如是usb接口,并通过多个usb集线器(hub)104b、104c而连接至多个待测的存储装置,例如第二个要被测试的存储装置105b的槽位是在e槽,第三个要被测试的存储装置105c的槽位是在f槽等,依此类推。
28.用户或操作员可通过操控计算机装置100的一用户接口而可选定或设定一或多个测试工具软件程序来循序地及/或同时地对所决定的多个要被测试的存储装置进行自动化测试、自动产生测试结果并且储存/显示。相比于现有技术方案均只采用人工操作的方式来进行测试,本技术的方法流程可令用户节省相当多的时间,提高生产工厂的量产作业效率。
29.请参照图2,图2是应用本技术的方法流程于计算机装置100时用户于计算机装置100的用户接口103上可操作及设定的项目的画面范例示意图,如图2所示,计算机装置100的操作接口103的画面200包含并且可以切割为多个操作区域,例如第一操作区为一测试脚本设定区205,该测试脚本设定区205可以包含一或多个具有不同测试工具软件设定的测试脚本(script),图2仅显示了一种测试脚本的设定,但此并非本技术的限制,用户可于勾选一个测试脚本之前的方框

以表示选定该测试脚本进行测试,此外,该测试脚本之下包括有上述多个不同的测试项目软件程序,用户可勾选想要进行测试的软件程序项目以表示选定该一或多个测试项目以进行测试。此外,该测试脚本设定区205的右方另具有一方向按键
“→”
,当用户按下该方向按键
“→”
时,所勾选选定的测试脚本及/或测试项目会被选进于计
算机装置100的接口200的第二操作区210。应注意的是,为简化画面内容,多个测试项目软件程序系以ap1至ap7来表示之,然而此并非限定测试工具软件的数目。
30.第二操作区210是一测试项目的顺序调整区,于该顺序调整区210中,索引“idx”表示的数字为不同测试项目的执行顺序,例如数字0表示第一个被执行的测试项目是软件程序ap5,例如一创造硬盘槽位的软件程序(deletepartition),而数字4表示最后一个被执行的测试项目是软件程序ap6,例如读写速度测试的工具软件程序(h2testw),此外,“selected ap”表示所选到的相同或不同测试脚本的多个测试工具软件项目,此外,用户可通过先反白或反灰选定好某一个测试项目的软件程序,例如选择ap3,通过按下按键
“×”
来删除该选择到的测试项目软件程序,或通过按下方向按键
“↑”
将所选择到的测试项目上移一格,或通过按下按键
“↓”
将所选择到的测试项目下移一格,或通过按下按键”save”来储存多个测试项目的执行顺序,如果一个测试项目的名称过长,用户亦可移动控制该顺序调整区210下方的水平滚动条(bar),往左或往右移动来显示某一测试项目的名称。
31.此外,计算机装置100的操作接口所包括的第三操作区是一测试工具软件设定区215,当用户于该测试项目的顺序调整区210中通过先反白/反灰选定好某一个测试项目时,在本实施例,该测试工具软件设定区215会相应地显示出该所选定的测试项目的名称以及可被调整的多组设定参数及内容,例如在图2中,该测试工具软件设定区215显示了名称是软件程序ap3,例如创造硬盘槽位的测试工具软件(createpartition),并列举了多个可供用户设定调整的一组设定参数,例如cluster大小(clustersize)、是否格式化(enableformat)、是否快速格式化(quickformat)等等,测试工具软件设定区215内所显示的设定例如类似以文本文件方式作为储存,用户要修改设定时可直接于测试工具软件设定区215内进行修改并储存,例如,用户可以通过按下测试工具软件设定区215上方的按键“save”,以原先使用的测试脚本档名进行储存,或是通过按下按键“save as”,以用户所想要的测试脚本档名进行储存。此外,在其他实施例,测试工具软件设定区215所呈现的用户修改格式亦可以采用选项点选及/或滚动条拉选的方式实现,令用户可以通过简单的点选/勾选以及简单的拉选就可以完成设定一测试工具软件的一组设定参数。此外,该些设定参数可以是某一测试工具软件的所有可设定的设定参数,或是某一测试工具软件较常使用或较重要的设定参数,此外,本技术的软件程序包亦可以主动过一测试工具软件的所有设定参数,在测试工具软件设定区215将较常使用或较重要的设定参数显示或提供给用户,供用户自己进行设定。
32.此外,计算机装置100的操作接口所包括的第四操作区是一槽位设定区220,于该槽位设定区220,显示出计算机装置100目前所连接或外接的要被测试的所有存储装置及对应的槽位,例如图2的例子显示了目前有三个待测的存储装置,分别对应于d、e、g槽,可显示出三个待测的存储装置分别的名称及制造商信息,此外,用户可于该三个待测的存储装置的名称前面的方框

进行勾选,以表示要测试该存储装置,例如,图2所示的是勾选了e槽及g槽的两个待测的存储装置,因此,稍后自动化测试的方法流程启动后将只会对e槽及g槽的两个待测的存储装置进行自动化测试,而不测试d槽的存储装置;此非本技术的限制。此外,用户可以通过按下槽位设定区220右上角的按键“scan”来扫描一遍以更新目前所有连接的待测存储装置的信息。
33.再者,本方法流程的软件程序包被执行时可自动扫描所有外接ssd装置的名称及
产品序号,并且可以过滤掉系统碟(即c槽)。
34.此外,本方法流程亦可重复进行所设定好的自动化测试的程序或步骤,例如,图2显示了栏位“loop”,该栏位“loop”的数值若为n(整数),则表示本方法流程会重复地再执行n次所设定好的自动化测试的程序或步骤,亦即总共执行n+1次,例如,该栏位“loop”的数值若为1,则总共执行2次,而若为0,则只进行一次的所设定好的自动化测试的程序或步骤。用户可自己填入整数数值于该栏位“loop”。
35.该接口200另包括有启动按键“run”及停止/暂停按键“stop”,当按下启动按键“run”时,本方法流程立即开始执行上述所设定好的自动化测试的程序或步骤,而当按下停止/暂停按键“stop”时,本方法流程会立刻暂停所执行的测试工具软件操作。
36.此外,计算机装置100的操作接口另包括了第五操作区,该第五操作区是一测试项目状态及进度区225,当用户按下该启动按键“run”后,于该测试项目状态及进度区225内,会显示出已经测试过的测试工具软件项目、目前执行中的测试工具软件项目以及等待被执行的测试工具软件项目分别的名称“item”、测试状态“status”以及被测试的先后顺序“idx”,例如图2所示,测试工具软件ap5、ap7均已被分别执行过两次,在对所选定的一或多个存储装置所进行测试的状态为通过“pass”,第一次被执行的测试工具软件ap3也己经被执行,而对所选定的一或多个存储装置所进行测试的状态为通过“pass”,第二次被执行的测试工具软件ap3的状态是目前正被执行中“running”,此外,测试工具软件ap2、ap6的状态是目前正等待被执行中“waiting”。另外,该测试项目状态及进度区225另包括了一删除按键
“×”
、清除所有的按键“clear all”以及一进度条,用户可以选择其中一个测试项目的状态,之后按下删除按键来进行删除,如此可删除该测试项目所进行测试的结果与详细内容,此外,用户如果按下清除所有的按键,则本方法流程会删除所有测试项目进行测试的结果与详细内容。
37.另外,计算机装置100的操作接口另包括了第六操作区,该第六操作区是一测试项目的详细结果区230,前述所设定好的一或多个测试项目软件程序对于一或多个储装置进行测试的详细结果会依序地列举并显示于该测试项目的详细结果区230中,此外,该测试项目的详细结果区包括有一删除按键
“×”
、一储存按键“save”以及一日志按键“log”,当用户按下删除按键时,本方法流程会删除该详细结果区230所显示的内容,而按下储存按键,本方法流程会储存该详细结果区230所显示的内容,此外,当按下日志按键时,本方法流程将存该详细结果区230所显示的内容以日志文件的方式呈现示给用户。
38.实际执行时,本方法流程的软件程序包整合兼容了市面上常用的不同测试工具软件并实现于同一个软件程序包内,将该软件程序包的多个测试工具软件储存于一特定数据夹内,该多个测试工具软件包括部分的免安装的测试工具软件及部分的需要安装执行的测试工具软件,例如软件程序burnintest需要安装,而前述所提到的其他软件程序均为免安装的测试工具软件,例如,处理器101执行该特定程序代码以启动本方法流程,自动地安装需要进行安装的测试工具软件,并记录其安装后的软件程序执行路径,此外,对于免安装的测试工具软件,则处理器101执行该特定程序代码以记录其各自的免安装软件程序的执行路径。
39.处理器101执行该特定程序代码以开启一个测试工具软件,在计算机装置100所执行的窗口操作系统中,执行该特定程序代码会启动一个相对应的子窗口,该子窗口会有一
个相对应的窗口标题名称(title),以及该测试工具软件被启动后也有一个相对应的访问控制权(handle),该访问控制权用以控制该相对应的子窗口,该访问权限可以用代码、地址或是识别值等等来表示,本方法的一实施例是处理器101执行该特定程序代码以呼叫标准化的windows api函数,例如findwindow函数,辨识以找到相对应的子窗口名称,得到相对应的访问控制权,如此控制/操作该测试工具软件的子窗口,从该子窗口的访问控制权,再辨识得到该子窗口的某一按键的访问控制权,根据该按键的访问控制权即可设定该按键的状态,从而实现模拟人工点击或点选该按键的效果。这样一来,便可自动地进入至该测试工具软件的设定页面,进而对该测试工具软件的一或多个测试参数进行设定。
40.举例来说,执行该特定程序代码通过findwindow函数找到相对应的子窗口名称,辨识得到相对应的访问控制权,并且从该子窗口的访问控制权来辨识得到该窗口的某一按键的访问控制权,例如辨识得到按键「是(y)」或是按键「下一步(next)」等的访问控制权,根据按键的访问控制权来设定按键的状态,仿真人工点击或点选不同的按键,例如,一个测试工具软件可能先后会产生多个子窗口,例如产生第一个子窗口、按键「下一步(next)」、接着会产生第二个子窗口与按键「是(y)」、最后才能够进入到设定页面(但不限定),本方法于处理器101执行该特定程序代码启动该测试工具软件时,可以通过呼叫findwindow函数来辨识找到第一个子窗口的标题名称及访问控制权,接着根据第一个子窗口的访问控制权,辨识得到按键「下一步(next)」的访问控制权,并接着根据按键「下一步(next)」的访问控制权来设定按键「下一步(next)」的状态,自动仿真人工点选该按键,接着画面会产生并进入第二个子窗口,而本方法可以再呼叫findwindow函数来辨识找到第二个子窗口的标题名称及访问控制权,接着根据第二个子窗口的访问控制权,辨识得到按键「是(y)」的访问控制权,并接着根据按键「是(y)」的访问控制权来设定按键「是(y)」的状态,自动仿真人工点选该按键,因此,最后即可自动化地进入到该测试工具软件的设定页面进行设定。接着设定时,类似地,本方法通过处理器101执行该特定程序代码也可以辨识找到设定页面的标题名称及对应的访问控制权,从而根据访问控制权来设定该设定页面的不同栏位的状态及数值,以完成该测试工具软件的自动化设定过程。设定完成后,例如回到该测试工具软件的主画面,此时该特定程序代码亦可通过呼叫findwindow函数来辨识找到主画面窗口的标题名称及得到访问控制权,据此得到主画面窗口的一启动按键(start)的访问控制权,根据启动按键(start)的访问控制权来设定启动按键(start)的状态,自动地模拟人工点选该启动按键,令接着自动启动执行该测试工具软件的一测试工作。
41.本方法的程序会产生一个线程(thread)来观察所正在执行的测试工具软件,该线程会不断定期地轮询(polling)该测试工具软件,令该测试工具软件回报目前执行的进度及详细内容等等,例如可以产生一个文字窗口来显示进度,如果该测试工具软件完成测试,则该文字窗口会显示成功讯息,反之有错的话,会显示错误的讯息,处理器101执行该特定程序代码会抓取并检视是否产生上述的关键词,当抓取到成功讯息时,代表该测试工具软件已经完成测试并且结果是通过,则该特定程序代码会进入到该测试工具软件所执行产生的日志文件(log文件)以抓取出日志文件,并以用户所要观看的格式储存,接着该特定程序代码关掉该测试工具软件,并接着启动下一个等候被执行的测试工具软件。相同地,该特定程序代码启动下一个等候被执行的测试工具软件之后的实际操作亦类似于上述的操作,于此不再重述,以简化说明书的篇幅。
42.此外,前述是通过呼叫findwindow函数来实现得到访问控制权,然而在不同实施例亦可采用不同的工具软件程序来辨识找到相对应程序对象的id,并根据该id来设定、控制该程序对象的状态、带有的数值、行为及操作,例如,在启动一测试工具软件(例如h2testw)之后,该特定程序代码可采用并执行windows窗口操作系统带有的spy工具软件程序(但不限定)来辨识找到每个程序对象的id,例如是抓取到上述任一按键的程序对象的id及/或上述设定页面的程序对象的id,接着通过id就可以控制按键的程序对象或是设定页面的程序对象,进而控制按键的状态及设定页面的栏位设定,仿真对该按键进行点选控制,设定该些设定栏位的数值或数据。
43.此外,本技术的自动化测试程序码可以达到单端口循序测试或多端口同时测试的功能。单埠循序测试系指一次只测试一个存储装置,而多端口同时测试则是一次可以测试多个存储装置,例如,以测试工具软件burnintest而言,其本身就支持同时测试的功能,因此,例如本技术的特定程序代码会取得对应的访问控制权,进入设定页面进行设定多个同时测试的功能,并且选取多个槽位。
44.而对于测试工具软件h2testw,本身虽然不支持同时测试的功能,然而,该特定程序代码会同时开启执行多个测试工具软件h2testw,例如多个程序执行实体(instance),每一个程序执行实体均执行findwindow函数来辨识找到不同对象的id,藉此得到不同对象的访问控制权,于设定多个程序实体的多个设定页面的栏位及参数时,系采用循序的方式来设定,先将一个程序实体的设定页面设定完成,再开启另一个程序实体的设定页进行设定,对象id是一样的,但是通过执行findwindow函数所找到的对象的访问控制权是不同的,也就是,不同的存储装置所对应到的测试工具软件的多个设定页面的多个对象的多个访问控制权是不同的,例如两个先后执行的程序实体可能采用同一个对象id去得到两个不同的访问控制权,例如两个先后执行的程序实体均有的一按键的功能,稍后,当第一个程序实体需要按下该按键时,通过控制其对应的访问控制权来设定该按键的状态实现自动化按下该按键,另外,当第二个程序实体需要按下该按键时,通过控制其另一个对应的访问控制权来设定该按键的状态实现自动化按下该按键,因此不同程序实体通过同一对象id来得到不同的访问控制权,该操作并不会出错。
45.为使读者更能明了本技术的实施例的技术精神,请参照图3,图3是本技术实施例启动执行一测试工具软件或一测试工具软件程序实体的自动化测试流程的范例示意图。倘若大体上可达到相同的结果,并不需要一定照图3所示的流程中的步骤顺序来进行,且图3所示的步骤不一定要连续进行,亦即其它步骤亦可插入其中。流程步骤的说明描述在下:
46.步骤305:开始;
47.步骤310:用户通过计算机装置100的用户接口200进行测试工具软件项目的设定;
48.步骤315:用户启动自动化测试程序;
49.步骤320:根据数据夹的程序路径,自动化测试程序开启并执行所选定的一测试工具软件;
50.步骤325:自动化测试程序通过呼叫findwindow函数,找到设定该测试工具软件的相对应的子窗口名称,以得到相对应的访问控制权,或是抓取相对应程序对象的id,以得到相对应的访问控制权;
51.步骤330:自动化测试程序根据相对应的访问控制权,取得按键或其他对象的访问
控制权,据此设定按键或其他对象的状态;
52.步骤335:进入该测试工具软件的设定页面,根据用户所选定的设定参数,设定相对应的栏位及参数;
53.步骤340:回到执行该测试工具软件的主画面;
54.步骤345:取得该主画面窗口的启动按键的名称或相对应的对象id,得到相对应的访问控制权,以及根据相对应的访问控制权,设定启动按键的状态为启动,以启动执行该测试工具软件的测试工作;
55.步骤350:轮询该测试工具软件,检查是否完成测试;如果测试完成,则进行步骤355,反之,则继续步骤350;
56.步骤355:检查是否所选定的测试工具软件是最后一个被执行的软件程序?如果是,则进行步骤360,反之,则进行步骤365;
57.步骤360:选定下一个测试工具软件;以及
58.步骤365:结束。
59.需注意的是,如果是设定为单埠顺序执行,则步骤345在启动执行该测试工具软件的测试工作后,该测试工具软件系逐一对所有待测的存储装置进行测试工作,而如果是设定为多埠同时执行,则步骤345在启动执行该测试工具软件的测试工作后,该测试工具软件系同时对所有待测的存储装置进行测试工作,在这个情况中,如果该测试工具软件本身不支持多端口同时测试的功能,则本技术的自动化测试程序会开启该测试工具软件的多个程序实体来同时对多个不同的待测存储装置进行测试工作。
60.再者,本技术的方法流程于实现时会去抓取每一个外接的存储装置的产品序号,因此,当测试工具软件执行测试,可根据序号的不同而得知目前正测试哪一个存储装置、哪些存储装置已经被测试过且通过测试以及哪一些存储装置仍在等待被测试,因此,如果不依照槽位来看,本技术的方法流程通过根据序号的不同仍可正确判断哪些存储装置是已经测试完成并通过测试。再者,本技术的方法流程可于每次完成一个测试脚本的执行后通过照相软件程序(例如snapshot)将不同测试工具软件执行的结果照相并储存。
61.以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1