CN108959078A - 一种Windows端软件自动化测试方法及*** - Google Patents

一种Windows端软件自动化测试方法及*** Download PDF

Info

Publication number
CN108959078A
CN108959078A CN201810670300.9A CN201810670300A CN108959078A CN 108959078 A CN108959078 A CN 108959078A CN 201810670300 A CN201810670300 A CN 201810670300A CN 108959078 A CN108959078 A CN 108959078A
Authority
CN
China
Prior art keywords
test
software
module
case
result
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
CN201810670300.9A
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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201810670300.9A priority Critical patent/CN108959078A/zh
Publication of CN108959078A publication Critical patent/CN108959078A/zh
Pending legal-status Critical Current

Links

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/3684Test management for test design, e.g. generating new test cases
    • 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

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)

Abstract

本发明实施例公开了一种Windows端软件自动化测试方法及***,包括:获取软件信息;模拟人工操作;根据所述模拟人工操作编写测试用例;根据所述软件信息执行所述测试用例;生成测试报告。本发明中通过模拟软件测试过程中的人工操作编写测试用例并通过spy++工具获取被测软件信息,编写的测试用例加载到测试框架中,然后连接测试框架与被测软件后依次运行测试用例进行测试,最后根据测试结果生成测试报告,整个测试结果自动运行,其每条测试用例可以重复使用,能够提高软件测试效率。

Description

一种Windows端软件自动化测试方法及***
技术领域
本发明涉及软件测试技术领域,特别是涉及一种Windows端软件自动化测试方法及***。
背景技术
Windows操作***是目前使用最多的桌面***,大部分软件都存在支持windows的版本,当开发人员开发一个windows软件时,需要对其进行测试。
现有技术中,可以使用的自动化测试方法比较少,常用的有QTP软件,QTP软件通过录制屏幕上对待测试软件的操作生成测试用例,之后执行生成的测试用例来执行测试。另一种是手动测试,手动测试就是测试人员通过鼠标和键盘操作软件,然后记录测试过程中的数据来执行测试。
然而,QTP软件价格昂贵,而手动测试在每次测试时都需要重复进行相同的操作,且操作过程中无法准确记录测试数据及结果,影响了测试效率。
发明内容
本发明实施例中提供了一种Windows端软件自动化测试方法及***,以解决现有技术中测试效率低的问题。
为了解决上述技术问题,本发明实施例公开了如下技术方案:
本发明第一方面提供了一种Windows端软件自动化测试方法,包括:
获取软件信息;
模拟人工操作;
根据所述模拟人工操作编写测试用例;
根据所述软件信息执行所述测试用例;
生成测试报告。
优选地,获取软件信息具体包括:
通过spy++工具获取被测软件窗口信息。
优选地,模拟人工操作具体包括:
模拟软件打开关闭过程;
模拟用户软件操作过程:
模拟结果获取过程。
优选地,根据所述模拟人工操作编写测试用例具体包括:
对每个测试项的模拟人工操作编写一条测试用例。
优选地,根据所述软件信息执行所述测试用例具体包括:
将所述测试用例加载至测试框架;
运行被测软件;
将所述测试框架与被测软件连接;
依次运行所述测试用例。
优选地,生成测试报告具体包括:
获取全部用例测试结果;
根据所述全部用例测试结果统计测试通过个数及测试失败个数;
根据测试通过个数以及测试用例总个数计算测试通过率。
优选地,所方法还包括:
调用邮件发送测试报告。
优选地,所述方法还包括:
设置测试开始时间点。
本发明第二方面提供了一种Windows端软件自动化测试***,包括:软件信息获取模块、用例编写模块、测试模块以及结果生成模块,所述软件信息获取模块、用例编写模块以及结果生成模块分别连接所述测试模块,其中,软件信息获取模块用于获取被测软件窗口信息;所述用例编写模块用于根据模拟人工操作结果编写测试用例;测试模块用于连接测试框架与被测软件并执行所述测试用例;结果生成模块用于根据测试结果生成测试报告。
优选地,所述***还包括:定时模块和邮件调用模块,其中,所述定时模块与所述测试模块连接,用于设置测试时间点;所述邮件调用模块与所述结果生成模块连接,用于发送测试报告。
由以上技术方案可见,本发明中通过模拟软件测试过程中的人工操作编写测试用例并通过spy++工具获取被测软件信息,编写的测试用例加载到测试框架中,然后连接测试框架与被测软件后依次运行测试用例进行测试,最后根据测试结果生成测试报告,整个测试结果自动运行,其每条测试用例可以重复使用,能够提高软件测试效率。
另外,本发明实施例中还可以设置测试时间点,实现在特定时间自动进行测试,节省了测试时间。
附图说明
了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种Windows端软件自动化测试方法的流程示意图;
图2为本发明实施例提供的测试用例执行方法的流程示意图;
图3为本发明实施例提供的测试报告生成方法的流程示意图;
图4为本发明实施例提供的另一种Windows端软件自动化测试方法的流程示意图;
图5为本发明实施例提供的又一种Windows端软件自动化测试方法的流程示意图;
图6为本发明实施例提供的一种Windows端软件自动化测试***的结构示意图;
图7为本发明实施例提供的另一种Windows端软件自动化测试方法的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
参见图1,为本发明实施例提供的一种Windows端软件自动化测试方法的流程示意图,如图1所示,本发明实施例提供的Windows端软件自动化测试方法,包括:
S10:获取软件信息。
软件信息包括被测软件的窗口信息,通过spy++工具获取,软件信息还包括软件的消息信息、进程信息和线程信息,供后续的测试使用。
S20:模拟人工操作。
模拟人工操作即对人工测试过程进行模拟,与人工测试不同地方在于不需要对测试软件进行具体操作,而是通过模拟操作确定测试过程中的鼠标及键盘操作过程。模拟过程中需要模拟软件打开关闭过程、模拟用户软件操作过程以及模拟结果获取过程,其中,在模拟结果获取过程中还需要模拟测试结果,即对测试结果进行预测。
S30:根据所述模拟人工操作编写测试用例。
每个软件在进行测试时所需要进行的操作均不同,因此需要将每个测试项的相应操作编写为一条测试用例,故在进行模拟人工操作时要对每个测试项进行逐一模拟,每模拟完一个测试项就进行一条测试用例的编写。
S40:根据所述软件信息执行所述测试用例。
全部测试项的测试用例编写完成后即可开始进行测试,参见图2,为本发明实施例提供的测试用例执行方法的流程示意图,如图2所示,根据所述软件信息执行所述测试用例具体包括:
S41:将所述测试用例加载至测试框架。
测试用的执行必须通过测试框架来完成,因此,编写完成后的测试用例需要全部加载至测试框架中,因为对于各测试项的测试顺序没有要求,故对于测试用例的加载顺序也没有要求,测试框架会对测试用例进行自动识别。
S42:运行被测软件。
软件测试是对软件进行一系列操作的过程,因此必须保证被测软件处于运行状态,软件的运行通过获取软件的所在路径实现。
S43:将所述测试框架与被测软件连接。
因为被测软件与测试框架为两个相互独立的***,为了实现通过测试框架对被测软件进行测试必须将被测软件与测试框架进行连接,在进行连接时需要获取被测软件的进程信息,通过该进程信息进行被测软件与测试框架间的连接。
S44:依次运行所述测试用例。
被测软件与测试框架间的连接搭建好之后测试框架会自动执行测试用例对被测软件进行测试。
S50:生成测试报告。
参见图3,为本发明实施例提供的测试报告生成方法的流程示意图,如图3所示,生成测试报告具体包括:
S51:获取全部用例测试结果.
S52:根据所述全部用例测试结果统计测试通过个数及测试失败个数。
S53:根据测试通过个数以及测试用例总个数计算测试通过率。
测试报告包括了此次测试的测试情况,其中以测试通过率尤为重要,测试通过率通过获取到的测试通过个数以及测试用例总个数来计算,对于测试是否通过以模拟人工操作过程中的预测结果为标准,如果测试结果与预测结果一致则测试通过,如果不一致则测试失败。
参见图4,为本发明实施例提供的另一种Windows端软件自动化测试方法的流程示意图,如图4所示,所方法还包括:
S60:调用邮件发送测试报告。
软件测试时对于某一个Windows***上的软件进行测试,但是对于测试结果的分析可能是在另给Windows***进行的,因此测试完成后的测试结果需要以测试报告的形式通过邮件发送给分析人员。
参见图5,为本发明实施例提供的又一种Windows端软件自动化测试方法的流程示意图,如图5所示,所述方法还包括:
S70:设置测试开始时间点。
对于有些被测软件测试项较多,测试时间较长,为了节省测试时间,本发明实施例中设置了测试开始时间点,使测试框架在指定的时间进行测试,例如设置0点为测试开始时间点,则测试框架会在0点进行测试,测试结果通过邮件发送给分析人员,可以实现软件测试在非工作时间进行,工作人员在工作时间即可获得测试结果进行分析,从而进一步提高测试效率。
参见图6,为本发明实施例提供的一种Windows端软件自动化测试***的结构示意图,如图6所示,本发明实施例提供的Windows端软件自动化测试***,包括:软件信息获取模块、用例编写模块、测试模块以及结果生成模块。
为了实现本发明实施例提供的Windows端软件自动化测试方法,本发明还提供了一种Windows端软件自动化测试***。
所述软件信息获取模块、用例编写模块以及结果生成模块分别连接所述测试模块,其中,软件信息获取模块用于获取被测软件窗口信息;所述用例编写模块用于根据模拟人工操作结果编写测试用例;测试模块用于连接测试框架与被测软件并执行所述测试用例;结果生成模块用于根据测试结果生成测试报告。
参见图7,为本发明实施例提供的另一种Windows端软件自动化测试方法的结构示意图,如图7所示,所述***还包括:定时模块和邮件调用模块,其中,所述定时模块与所述测试模块连接,用于设置测试时间点;所述邮件调用模块与所述结果生成模块连接,用于发送测试报告。
本发明中通过模拟软件测试过程中的人工操作编写测试用例并通过spy++工具获取被测软件信息,编写的测试用例加载到测试框架中,然后连接测试框架与被测软件后依次运行测试用例进行测试,最后根据测试结果生成测试报告,整个测试结果自动运行,其每条测试用例可以重复使用,能够提高软件测试效率。
以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种Windows端软件自动化测试方法,其特征在于,包括:
获取软件信息;
模拟人工操作;
根据所述模拟人工操作编写测试用例;
根据所述软件信息执行所述测试用例;
生成测试报告。
2.根据权利要求1所述的Windows端软件自动化测试方法,其特征在于,获取软件信息具体包括:
通过spy++工具获取被测软件窗口信息。
3.根据权利要求1所述的Windows端软件自动化测试方法,其特征在于,模拟人工操作具体包括:
模拟软件打开关闭过程;
模拟用户软件操作过程:
模拟结果获取过程。
4.根据权利要求1所述的Windows端软件自动化测试方法,其特征在于,根据所述模拟人工操作编写测试用例具体包括:
对每个测试项的模拟人工操作编写一条测试用例。
5.根据权利要求1所述的Windows端软件自动化测试方法,其特征在于,根据所述软件信息执行所述测试用例具体包括:
将所述测试用例加载至测试框架;
运行被测软件;
将所述测试框架与被测软件连接;
依次运行所述测试用例。
6.根据权利要求1所述的Windows端软件自动化测试方法,其特征在于,生成测试报告具体包括:
获取全部用例测试结果;
根据所述全部用例测试结果统计测试通过个数及测试失败个数;
根据测试通过个数以及测试用例总个数计算测试通过率。
7.根据权利要求1-6任一所述的Windows端软件自动化测试方法,其特征在于,所方法还包括:
调用邮件发送测试报告。
8.根据权利要求1-6任一所述的Windows端软件自动化测试方法,其特征在于,所述方法还包括:
设置测试开始时间点。
9.一种Windows端软件自动化测试***,其特征在于,包括:软件信息获取模块、用例编写模块、测试模块以及结果生成模块,所述软件信息获取模块、用例编写模块以及结果生成模块分别连接所述测试模块,其中,软件信息获取模块用于获取被测软件窗口信息;所述用例编写模块用于根据模拟人工操作结果编写测试用例;测试模块用于连接测试框架与被测软件并执行所述测试用例;结果生成模块用于根据测试结果生成测试报告。
10.根据权利要求9所述的Windows端软件自动化测试***,其特征在于,所述***还包括:定时模块和邮件调用模块,其中,所述定时模块与所述测试模块连接,用于设置测试时间点;所述邮件调用模块与所述结果生成模块连接,用于发送测试报告。
CN201810670300.9A 2018-06-26 2018-06-26 一种Windows端软件自动化测试方法及*** Pending CN108959078A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810670300.9A CN108959078A (zh) 2018-06-26 2018-06-26 一种Windows端软件自动化测试方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810670300.9A CN108959078A (zh) 2018-06-26 2018-06-26 一种Windows端软件自动化测试方法及***

Publications (1)

Publication Number Publication Date
CN108959078A true CN108959078A (zh) 2018-12-07

Family

ID=64486711

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810670300.9A Pending CN108959078A (zh) 2018-06-26 2018-06-26 一种Windows端软件自动化测试方法及***

Country Status (1)

Country Link
CN (1) CN108959078A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112181811A (zh) * 2020-09-14 2021-01-05 麒麟软件有限公司 一种应用稳定性测试方法
CN112241372A (zh) * 2020-10-22 2021-01-19 北京字节跳动网络技术有限公司 终端测试方法、装置和电子设备
CN112543478A (zh) * 2020-12-04 2021-03-23 深圳市康冠商用科技有限公司 WiFi模块自动化测试方法、装置、计算机设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662828A (zh) * 2012-03-14 2012-09-12 浪潮(北京)电子信息产业有限公司 一种实现软件自动测试的方法及装置
CN104731698A (zh) * 2013-12-20 2015-06-24 深圳中兴力维技术有限公司 基于自动化测试的异常测试用例自动生成处理方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662828A (zh) * 2012-03-14 2012-09-12 浪潮(北京)电子信息产业有限公司 一种实现软件自动测试的方法及装置
CN104731698A (zh) * 2013-12-20 2015-06-24 深圳中兴力维技术有限公司 基于自动化测试的异常测试用例自动生成处理方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周礼仁: "Web自动化测试用例编写辅助工具的设计与实现", 《万方数据服务平台》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112181811A (zh) * 2020-09-14 2021-01-05 麒麟软件有限公司 一种应用稳定性测试方法
CN112181811B (zh) * 2020-09-14 2024-05-10 麒麟软件有限公司 一种应用稳定性测试方法
CN112241372A (zh) * 2020-10-22 2021-01-19 北京字节跳动网络技术有限公司 终端测试方法、装置和电子设备
CN112543478A (zh) * 2020-12-04 2021-03-23 深圳市康冠商用科技有限公司 WiFi模块自动化测试方法、装置、计算机设备及存储介质
CN112543478B (zh) * 2020-12-04 2023-06-06 深圳市康冠商用科技有限公司 WiFi模块自动化测试方法、装置、计算机设备及存储介质

Similar Documents

Publication Publication Date Title
Sharma Quantitative analysis of automation and manual testing
Baker et al. Model-driven engineering in a large industrial context—Motorola case study
US8584083B2 (en) Software application recreation
US9465718B2 (en) Filter generation for load testing managed environments
CN110716870B (zh) 服务的自动化测试方法及装置
US7895575B2 (en) Apparatus and method for generating test driver
CN108959078A (zh) 一种Windows端软件自动化测试方法及***
CN115656792B (zh) 芯片可测性设计的测试方法及测试平台
CN111382055B (zh) 一种基于统一描述语言的自动化单元测试方法及装置
CN107729238A (zh) 一种插件调试方法、***、装置及计算机可读存储介质
CN112131116A (zh) 一种嵌入式软件自动化回归测试方法
Malik Software testing: Essential phase of sdlc and a comparative study of software testing techniques
Kaner Architectures of test automation
US20140281719A1 (en) Explaining excluding a test from a test suite
US10853051B2 (en) Automated candidate repair patch generation
CN107122218A (zh) 一种软件开发方法及***
CN105653445A (zh) 一种满足do-178c测试结果的实现方法
Akin et al. Transitioning from manual to automated software regression testing: Experience from the banking domain
CN112052181A (zh) 基于软件工程化的嵌入式软件自动化测试***
CN112380118A (zh) 单元测试方法、装置、介质及电子设备
CN112416807A (zh) 一种测试用例结果分析及关联的***及方法
CN112346994A (zh) 一种测试信息关联方法、装置、计算机设备及存储介质
El-Kharashy et al. A novel assertions-based code coverage automatic cad tool
Oviedo Software Reliability in a DevOps Continuous Integration Environment
Lübke Calculating test coverage for BPEL processes with process log analysis

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20181207