CN109885488A - 用例表驱动的卫星轨道计算软件自动化测试方法及系统 - Google Patents

用例表驱动的卫星轨道计算软件自动化测试方法及系统 Download PDF

Info

Publication number
CN109885488A
CN109885488A CN201910091534.2A CN201910091534A CN109885488A CN 109885488 A CN109885488 A CN 109885488A CN 201910091534 A CN201910091534 A CN 201910091534A CN 109885488 A CN109885488 A CN 109885488A
Authority
CN
China
Prior art keywords
test
file
case
data
software
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
Application number
CN201910091534.2A
Other languages
English (en)
Other versions
CN109885488B (zh
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.)
Shanghai Institute of Satellite Engineering
Original Assignee
Shanghai Institute of Satellite Engineering
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 Shanghai Institute of Satellite Engineering filed Critical Shanghai Institute of Satellite Engineering
Priority to CN201910091534.2A priority Critical patent/CN109885488B/zh
Publication of CN109885488A publication Critical patent/CN109885488A/zh
Application granted granted Critical
Publication of CN109885488B publication Critical patent/CN109885488B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种软件自动化测试技术领域的用例表驱动的卫星轨道计算软件自动化测试方法,用例表驱动的卫星轨道计算软件自动化测试方法,包括如下步骤:设计测试用例,编写测试用例表;编制数据驱动的测试脚本和预期结果计算脚本;生成相应XML数据结构定义文件;生成测试用例描述文件和测试输入数据文件;测试脚本读取并解析测试用例描述文件,获取被测对象及其测试输入数据;生成实际输出文件;获取被测对象及其输入数据;计算预期结果,读取预期结果,生成预期输出文件;构造相应的数据结构,并逐项比较数据一致性;生成测试报告。本发明能够对卫星轨道进行计算、正确性与可靠性高、方法简单、拓展性强、数据维护方便,测试效率高。

Description

用例表驱动的卫星轨道计算软件自动化测试方法及系统
技术领域
本发明涉及软件自动化测试技术领域,具体涉及一种用例表驱动的卫星轨道计算软件自动化测试方法及系统。
背景技术
不论是在航天型号研制过程中,还是在航天系统仿真/体系仿真中,大量的卫星轨道计算与仿真工作是不可或缺的。作为业务模拟与分析的基础,卫星轨道计算软件的正确性与可靠性是非常关键的,因此需要大量的测试与回归完善。
传统的手工测试在测试差错率、测试一致性、回归测试等方面面临突出问题,测试效率低下;而自动化测试通过控制软件模拟或还原手工操作过程,自动执行语言编制的测试脚本来测试相关的软件产品,可以减少大量的手工重复性工作,在节省人力和物力资源的同时,能够缩短测试时间,增强测试一致性、可重复性和复用性,提高软件质量。
一方面,市场上现有商用软件自动化测试工具,灵活性差,不易拓展,无法自动给出预期的轨道计算结果,不能满足轨道计算软件自动化测试的专业需求。另一方面,虽然国内外研究软件自动化测试的成果很多,但因工作保密或其它原因,尚无公开的针对卫星轨道计算方面的软件自动化测试研究发表。因此,无法直接利用现有自动化测试技术成果,需要针对卫星轨道计算领域开展软件自动化测试技术。
经对现有技术的检索,中国发明专利201510790529.2,专利名称为一种GLONASS卫星轨道计算方法和系统,该专利披露了如下内容:一种GLONASS卫星轨道计算方法,包括如下步骤:捕获GLONASS卫星广播信号转换成GLONASS卫星数据并传至时间判断模块;判断GLONASS卫星数据中的卫星参考时间tb是否与定位系统当前的参考时间tb有所改变,如改变,更新参考时间tb和卫星定位数据,否则,保留沿用;将GLONASS卫星数据传送至GLONASS步长积分轨道计算模块,最终计算出GLONASS卫星位置和速度;比较卫星参考时间和卫星当前时间,如果当前时间大于卫星参考时间且差值在一个采样历元间隔时,重新校正GLONASS卫星位置和速度,否则,选择GLONASS高效轨道计算模块,最终计算出GLONASS卫星位置和速度。但该方法架构不够灵活,拓展性差,数据维护不方便,测试效率较低。
因此,有必要设计一种能够对卫星轨道进行计算、并且正确性与可靠性高、且方法简单、架构灵活、拓展性强、数据维护方便,测试效率高的用例表驱动的卫星轨道计算软件自动化测试方法及系统。
发明内容
针对现有技术的缺陷,本发明的目的是提供一种用例表驱动的卫星轨道计算软件自动化测试方法及系统,本发明能够对卫星轨道进行计算、并且正确性与可靠性高、且方法简单、架构灵活、拓展性强、数据维护方便,测试效率高。
本发明涉及一种用例表驱动的卫星轨道计算软件自动化测试方法,其包括如下步骤:
步骤一,设计测试用例,编写测试用例表;
步骤二,根据轨道计算软件接口文件编制数据驱动的测试脚本和预期结果计算脚本;
步骤三,读取轨道计算软件的数据结构头文件,生成相应XML数据结构定义文件;
步骤四,解析测试用例表,生成测试用例描述文件和测试输入数据文件;
步骤五,测试脚本读取并解析测试用例描述文件,获取被测对象及其测试输入数据;
步骤六,测试脚本执行被测对象驱动函数,生成实际输出文件;
步骤七,预期结果计算脚本读取并解析测试用例描述文件,获取被测对象及其输入数据;
步骤八,预期结果计算脚本根据被测对象调用STK计算预期结果,并从标准报告中读取预期结果,生成预期输出文件;
步骤九,自动化测试平台根据用例描述文件分别读取实际输出和预期输出文件,构造相应的数据结构,并逐项比较数据一致性;
步骤十,自动化测试平台根据数据比较分析结果自动生成测试报告。
进一步地,所述步骤一中测试用例表包含有测试用例标识、用例设计方法、软件版本、用例编号、被测函数名称、输入输出文件目录用例描述信息,以及输入参数取值和预期输出结果测试数据。
进一步地,所述测试脚本和预期结果计算脚本均为数据驱动脚本,在VS2008中建立工程,通过接口文件(用例描述文件,如下所述)确定被测对象和输入数据文件的位置,然后读取输入数据并驱动被测函数/STK软件运行,分别获得实际输出/预期输出数据。
进一步地,步骤三中的头文件为.h格式的轨道计算函数库C++头文件,覆盖轨道计算软件被测函数的所有输入参数和测试点输出数据结构。
步骤三中的XML数据结构定义文件命名方式为XXX.xml,其中XXX为数据结构的名称,自动化测试平台在构造该类型的数据时首先根据其名称打开相应XML定义文件,然后基于其类型申请相应大小的内存空间,并将数值拷贝至申请成功的内存空间。当类型不是int、double等C++基本数据类型时,自动化测试平台需要递归查找处理。
进一步地,步骤四中自动化测试平台根据用例表中关键字获取有关用例设计信息,并分别将其写入用例描述文件和输入参数/预期输出数据文件。其中,前者为文本文件,便于读取和解析,后者为二进制文件,便于数据拷贝赋值。
步骤四中的测试输入参数值以符合C++语言规范的语句给出,自动化测试平台将其转换为可编译的文件,编译并执行,生成二进制输入参数文件,并根据用例信息进行规范命名和存储为便于测试执行时解析调用。在命名规范方面,输入参数文件应命名为A.SD.B.C,其中A为用例标识,B为该输入参数序号(三位数字,从001开始计数),C为参数类型;期望输出文件应命名为A.WD.B.C,其中A为用例标识,B为测试点标识TPXXX,C为测试点输出数据类型。
进一步地,步骤五和步骤六中的测试脚本与自动化测试平台的接口为用例描述文件名,测试脚本通过查找并读取解析平台指定的当前测试用例描述文件,确定被测对象及相应的输入参数文件,然后调用相应驱动函数执行被测对象,并将测试点输出存储为二进制文件并规范命名为A.RD.B.C,其中A为用例标识,B为测试点标识TPXXX,C为测试点输出数据类型。
进一步地,步骤七和步骤八中的预期结果计算脚本与自动化测试平台的接口为用例描述文件名,该脚本通过查找并读取解析平台指定的当前测试用例描述文件,确定被测对象及相应的输入参数文件,然后利用商业软件STK/connect的AgConInit和AgConOpenSTK接口函数建立其与VS2008之间的连接。为实现预期结果的计算,在VS2008中编写STK指令,指令内容包括STK场景设定、STK轨道预报计算、STK标准报告输出及其单位设定等,指令的执行使用STK/AgConProcessSTKCmd接口函数,指令返回信息借助于STK/AgTConReturnInfo获取,预期结果可以通过构造并执行STK的标准输出报告指令获得。
进一步地,步骤九中自动化测试平台根据用例信息描述文件中的用例标识等信息构造测试点实际输出文件名和预期输出文件名,然后查找并打开相应的输出文件,同时利用其中测试点输出数据结构名称信息和XML定义文件构造输出数据结构,并将输出文件中的数据拷贝至相应内存空间,完成数据结构的赋值。在此基础上,对数据结构中的基本数据类型进行逐项比较分析,对非基本数据类型则进行递归处理,直至所有数据项均完成比较分析,最后对分析结果进行综合处理,得到最终分析结果。同时,包含测试分析比较结果在内的所有用例信息均写入测试结果文件。
进一步地,步骤十中利用Qt/QAxObject调用word的API接口生成测试报告,测试报告的格式均事先指定,报告中所需目录和章节标题信息、测试输入数据、测试分析结果均从测试结果文件中获取,自动化测试平台在用例执行过程中即时将测试结果写入报告,所有用例执行完成后,报告也随之撰写完成。
相应地,本发明还公开了一种用例表驱动的卫星轨道计算软件自动化测试系统,包括:轨道计算软件单元、自动化测试平台、测试脚本、预期结果计算脚本四部分,所述轨道计算软件单元作为被测对象,提供各类卫星轨道计算功能接口函数,其为动态链接库,本身不是可执行程序;
所述测试脚本用于驱动轨道计算软件单元,通过读取测试输入数据实现对被测函数的调用;
所述预期结果计算脚本自主调用商业软件STK计算预期结果,并将结果反馈给自动化测试平台;
所述自动化测试平台实现对测试用例及其数据的读取、解析、执行、控制、日志记录与报告撰写等,主要包括测试配置、测试准备、测试执行等功能模块。
与现有技术相比,本发明具有如下的有益效果:
1、本发明的用例表驱动的卫星轨道计算软件自动化测试方法,以用例表为原始输入的数据驱动模式的自动化测试方案,该方案架构灵活,拓展性强,数据维护方便,提高了测试效率;
2、本发明的用例表驱动的卫星轨道计算软件自动化测试方法,用例表直接使用测试人员实施测试用例设计时给出的设计结果,以word表格形式给出,每个用例表对应一个测试用例,多个测试用例表可以单独存放于一个word文件,也可以统一放在一个word文件中,便于直观、集中管理所有测试数据,提高可维护性;
3、本发明的用例表驱动的卫星轨道计算软件自动化测试方法,自动化测试平台根据用例表中关键字获取有关用例设计信息,并分别将其写入用例描述文件和输入参数/预期输出数据文件。其中,前者为文本文件,便于读取和解析,后者为二进制文件,便于数据拷贝赋值;
4、本发明的用例表驱动的卫星轨道计算软件自动化测试方法,实现了卫星轨道计算软件的测试用例自动执行、预期结果自动计算、测试数据自动比较分析和测试报告自动生成等过程自动化,极大提高了卫星轨道计算软件的测试效率;
5、本发明的用例表驱动的卫星轨道计算软件自动化测试系统,基于模块化设计,将各功能模块分别设计,便于系统的维护及功能拓展;设备灵活性高,通用型好,适用于不同类型的卫星动力学仿真测试;解决了现有测试设备体积大、不易运输、设备展开及使用繁琐的问题。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明用例表驱动的卫星轨道计算软件自动化测试系统架构和接口图;
图2为本发明用例表驱动的卫星轨道计算软件自动化测试系统活动流程图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
实施例
本实施例中,本发明的用例表驱动的卫星轨道计算软件自动化测试方法:一种用例表驱动的卫星轨道计算软件自动化测试方法,包括如下步骤:
步骤一,设计测试用例,编写测试用例表;
步骤二,根据轨道计算软件接口文件编制数据驱动的测试脚本和预期结果计算脚本;
步骤三,读取轨道计算软件的数据结构头文件,生成相应XML数据结构定义文件;
步骤四,解析测试用例表,生成测试用例描述文件和测试输入数据文件;
步骤五,测试脚本读取并解析测试用例描述文件,获取被测对象及其测试输入数据;
步骤六,测试脚本执行被测对象驱动函数,生成实际输出文件;
步骤七,预期结果计算脚本读取并解析测试用例描述文件,获取被测对象及其输入数据;
步骤八,预期结果计算脚本根据被测对象调用STK计算预期结果,并从标准报告中读取预期结果,生成预期输出文件;
步骤九,自动化测试平台根据用例描述文件分别读取实际输出和预期输出文件,构造相应的数据结构,并逐项比较数据一致性;
步骤十,自动化测试平台根据数据比较分析结果自动生成测试报告。
接下来对本发明进行详细的描述。
本发明的目的是提供一种用例表驱动的卫星轨道计算软件自动化测试方法及系统,本发明能够对卫星轨道进行计算、并且正确性与可靠性高、且方法简单、架构灵活、拓展性强、数据维护方便,测试效率高。
一种卫星轨道计算软件的自动化测试方法,包含步骤如下:
步骤一,设计测试用例,编写测试用例表;
步骤二,根据轨道计算软件接口文件编制数据驱动的测试脚本和预期结果计算脚本;
步骤三,读取轨道计算软件的数据结构头文件,生成相应XML数据结构定义文件;
步骤四,解析测试用例表,生成测试用例描述文件和测试输入数据文件;
步骤五,测试脚本读取并解析测试用例描述文件,获取被测对象及其测试输入数据;
步骤六,测试脚本执行被测对象驱动函数,生成实际输出文件;
步骤七,预期结果计算脚本读取并解析测试用例描述文件,获取被测对象及其输入数据;
步骤八,预期结果计算脚本根据被测对象调用STK计算预期结果,并从标准报告中读取预期结果,生成预期输出文件;
步骤九,自动化测试平台根据用例描述文件分别读取实际输出和预期输出文件,构造相应的数据结构,并逐项比较数据一致性;
步骤十,自动化测试平台根据数据比较分析结果自动生成测试报告。
步骤一中测试用例表包含有测试用例标识、用例设计方法、软件版本、用例编号、被测函数名称、输入输出文件目录等用例描述信息,以及输入参数取值和预期输出结果等测试数据,并按规范逐关键字填写,具体如图1所示。
步骤一中用例表直接使用测试人员实施测试用例设计时给出的设计结果,以word表格形式给出,每个用例表对应一个测试用例,多个测试用例表可以单独存放于一个word文件,也可以统一放在一个word文件中,便于直观、集中管理所有测试数据,提高可维护性。
步骤二中的测试脚本和预期结果计算脚本均为数据驱动脚本,可在VS2008中建立工程,通过接口文件(用例描述文件,如下所述)确定被测对象和输入数据文件的位置,然后分别读取输入数据并驱动被测函数/STK软件运行,继而分别获得实际输出/预期输出数据。
步骤三中的头文件为.h格式的轨道计算函数库C++头文件,覆盖轨道计算软件被测函数的所有输入参数和测试点输出数据结构。
步骤三中的XML数据结构定义文件命名方式为XXX.xml,其中XXX为数据结构的名称,自动化测试平台在构造该类型的数据时首先根据其名称打开相应XML定义文件,然后基于其类型申请相应大小的内存空间,并将数值拷贝至申请成功的内存空间。当类型不是int、double等C++基本数据类型时,自动化测试平台需要递归查找处理。
步骤四中自动化测试平台根据用例表中关键字获取有关用例设计信息,并分别将其写入用例描述文件和输入参数/预期输出数据文件。其中,前者为文本文件,便于读取和解析,后者为二进制文件,便于数据拷贝赋值。
步骤四中的测试输入参数值以符合C++语言规范的语句给出,自动化测试平台将其转换为可编译的文件,编译并执行,生成二进制输入参数文件,并根据用例信息进行规范命名和存储为便于测试执行时解析调用。在命名规范方面,输入参数文件应命名为A.SD.B.C,其中A为用例标识,B为该输入参数序号(三位数字,从001开始计数),C为参数类型;期望输出文件应命名为A.WD.B.C,其中A为用例标识,B为测试点标识TPXXX,C为测试点输出数据类型。
步骤五和步骤六中的测试脚本与自动化测试平台的接口为用例描述文件名,测试脚本通过查找并读取解析平台指定的当前测试用例描述文件,确定被测对象及相应的输入参数文件,然后调用相应驱动函数执行被测对象,并将测试点输出存储为二进制文件并规范命名为A.RD.B.C,其中A为用例标识,B为测试点标识TPXXX,C为测试点输出数据类型。
步骤七和步骤八中的预期结果计算脚本与自动化测试平台的接口为用例描述文件名,该脚本通过查找并读取解析平台指定的当前测试用例描述文件,确定被测对象及相应的输入参数文件,然后利用商业软件STK/connect的AgConInit和AgConOpenSTK接口函数建立其与VS2008之间的连接。为实现预期结果的计算,在VS2008中编写STK指令,指令内容包括STK场景设定、STK轨道预报计算、STK标准报告输出及其单位设定等,指令的执行使用STK/AgConProcessSTKCmd接口函数,指令返回信息借助于STK/AgTConReturnInfo获取,预期结果可以通过构造并执行STK的标准输出报告指令获得。
步骤九中自动化测试平台根据用例信息描述文件中的用例标识等信息构造测试点实际输出文件名和预期输出文件名,然后查找并打开相应的输出文件,同时利用其中测试点输出数据结构名称信息和XML定义文件构造输出数据结构,并将输出文件中的数据拷贝至相应内存空间,完成数据结构的赋值。在此基础上,对数据结构中的基本数据类型进行逐项比较分析,对非基本数据类型则进行递归处理,直至所有数据项均完成比较分析,最后对分析结果进行综合处理,得到最终分析结果。同时,包含测试分析比较结果在内的所有用例信息均写入测试结果文件。
步骤十中利用Qt/QAxObject调用word的API接口生成测试报告,测试报告的格式均事先指定,报告中所需目录和章节标题信息、测试输入数据、测试分析结果均从测试结果文件中获取,自动化测试平台在用例执行过程中即时将测试结果写入报告,所有用例执行完成后,报告也随之撰写完成。
进一步,本发明给出了一种卫星轨道计算软件自动化测试实现系统,其组成包括轨道计算软件单元、自动化测试平台、测试脚本、预期结果计算脚本四部分,系统基于C++/Qt开发实现。其中,轨道计算软件单元作为被测对象,提供各类卫星轨道计算功能接口函数,其为动态链接库,本身不是可执行程序;测试脚本负责驱动轨道计算软件单元,通过读取测试输入数据实现对被测函数的调用;预期结果计算脚本自主调用商业软件STK计算预期结果,并将结果反馈给自动化测试平台;自动化测试平台实现对测试用例及其数据的读取、解析、执行、控制、日志记录与报告撰写等,主要包括测试配置、测试准备、测试执行等功能模块。
所述测试配置模块通过编辑配置文件实现对程序工作目录、测试用例文件、测试脚本、预期结果计算脚本、测试报告、帮助文档等的文件名和路径指定,测试配置的另一部分内容是对测试用例进行管理,包括测试用例及其测试点的增加、删除和用例信息显示等。
所述测试准备模块主要完成测试用例表的读取和解析、XML数据结构定义文件生成功能,为测试执行奠定基础。用例表读取和解析实现原始测试数据的读入和转换,分别生成用例信息描述文件和输入参数数据文件,其中前者为易于解析的文本文件,是平台与脚本之间的接口参数,后者为易于读写的二进制文件,被测试脚本调用;XML数据结构定义文件生成功能通过读取轨道计算软件的头文件,获取有关数据结构的定义信息,并以XML格式写入文件,作为数据结构数据库,支撑测试执行中的数据结构的解析、构造与赋值功能需求。
所述测试执行模块完成对待测试用例的指定、执行,以及测试用例的自动/手动模式切换、测试日志和测试报告生成的开关控制等功能。
表1 测试用例表
综上所述,本发明的用例表驱动的卫星轨道计算软件自动化测试方法,以用例表为原始输入的数据驱动模式的自动化测试方案,该方案架构灵活,拓展性强,数据维护方便,提高了测试效率;用例表直接使用测试人员实施测试用例设计时给出的设计结果,以word表格形式给出,每个用例表对应一个测试用例,多个测试用例表可以单独存放于一个word文件,也可以统一放在一个word文件中,便于直观、集中管理所有测试数据,提高可维护性;自动化测试平台根据用例表中关键字获取有关用例设计信息,并分别将其写入用例描述文件和输入参数/预期输出数据文件。其中,前者为文本文件,便于读取和解析,后者为二进制文件,便于数据拷贝赋值;实现了卫星轨道计算软件的测试用例自动执行、预期结果自动计算、测试数据自动比较分析和测试报告自动生成等过程自动化,极大提高了卫星轨道计算软件的测试效率;将各功能模块分别设计,便于系统的维护及功能拓展;设备灵活性高,通用型好,适用于不同类型的卫星动力学仿真测试;解决了现有测试设备体积大、不易运输、设备展开及使用繁琐的问题。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

Claims (10)

1.一种用例表驱动的卫星轨道计算软件自动化测试方法,其特征在于,包括如下步骤:
步骤一,设计测试用例,编写测试用例表;
步骤二,根据轨道计算软件接口文件编制数据驱动的测试脚本和预期结果计算脚本;
步骤三,读取轨道计算软件的数据结构头文件,生成相应XML数据结构定义文件;
步骤四,解析测试用例表,生成测试用例描述文件和测试输入数据文件;
步骤五,测试脚本读取并解析测试用例描述文件,获取被测对象及其测试输入数据;
步骤六,测试脚本执行被测对象驱动函数,生成实际输出文件;
步骤七,预期结果计算脚本读取并解析测试用例描述文件,获取被测对象及其输入数据;
步骤八,预期结果计算脚本根据被测对象调用STK计算预期结果,并从标准报告中读取预期结果,生成预期输出文件;
步骤九,自动化测试平台根据用例描述文件分别读取实际输出和预期输出文件,构造相应的数据结构,并逐项比较数据一致性;
步骤十,自动化测试平台根据数据比较分析结果自动生成测试报告。
2.根据权利要求1所述的用例表驱动的卫星轨道计算软件自动化测试方法,其特征在于,所述步骤一中测试用例表包含有测试用例标识、用例设计方法、软件版本、用例编号、被测函数名称、输入输出文件目录用例描述信息,以及输入参数取值和预期输出结果测试数据。
3.根据权利要求2所述的用例表驱动的卫星轨道计算软件自动化测试方法,其特征在于,所述测试脚本和预期结果计算脚本均为数据驱动脚本,在VS2008中建立工程,通过接口文件确定被测对象和输入数据文件的位置,然后读取输入数据并驱动被测函数/STK软件运行,分别获得实际输出/预期输出数据。
4.根据权利要求3所述的用例表驱动的卫星轨道计算软件自动化测试方法,其特征在于,步骤三中的头文件为.h格式的轨道计算函数库C++头文件,覆盖轨道计算软件被测函数的所有输入参数和测试点输出数据结构;
步骤三中的XML数据结构定义文件命名方式为XXX.xml,其中XXX为数据结构的名称,自动化测试平台在构造类型的数据时首先根据其名称打开相应XML定义文件,然后基于其类型申请相应大小的内存空间,并将数值拷贝至申请成功的内存空间;当类型不是int、double C++基本数据类型时,自动化测试平台需要递归查找处理。
5.根据权利要求1所述的用例表驱动的卫星轨道计算软件自动化测试方法,其特征在于,步骤四中自动化测试平台根据用例表中关键字获取有关用例设计信息,并分别将其写入用例描述文件和输入参数/预期输出数据文件,其中,前者为文本文件,便于读取和解析,后者为二进制文件,便于数据拷贝赋值;
步骤四中的测试输入参数值以符合C++语言规范的语句给出,自动化测试平台将其转换为可编译的文件,编译并执行,生成二进制输入参数文件,并根据用例信息进行规范命名和存储为便于测试执行时解析调用;在命名规范方面,输入参数文件应命名为A.SD.B.C,其中A为用例标识,B为该输入参数序号,C为参数类型;期望输出文件应命名为A.WD.B.C,其中A为用例标识,B为测试点标识TPXXX,C为测试点输出数据类型。
6.根据权利要求5所述的用例表驱动的卫星轨道计算软件自动化测试方法,其特征在于,步骤五和步骤六中的测试脚本与自动化测试平台的接口为用例描述文件名,测试脚本通过查找并读取解析平台指定的当前测试用例描述文件,确定被测对象及相应的输入参数文件,然后调用相应驱动函数执行被测对象,并将测试点输出存储为二进制文件并规范命名为A.RD.B.C,其中A为用例标识,B为测试点标识TPXXX,C为测试点输出数据类型。
7.根据权利要求5所述的用例表驱动的卫星轨道计算软件自动化测试方法,其特征在于,步骤七和步骤八中的预期结果计算脚本与自动化测试平台的接口为用例描述文件名,该脚本通过查找并读取解析平台指定的当前测试用例描述文件,确定被测对象及相应的输入参数文件,然后利用商业软件STK/connect的AgConInit和AgConOpenSTK接口函数建立其与VS2008之间的连接;为实现预期结果的计算,在VS2008中编写STK指令,指令内容包括STK场景设定、STK轨道预报计算、STK标准报告输出及其单位设定等,指令的执行使用STK/AgConProcessSTKCmd接口函数,指令返回信息借助于STK/AgTConReturnInfo获取,预期结果可以通过构造并执行STK的标准输出报告指令获得。
8.根据权利要求1所述的用例表驱动的卫星轨道计算软件自动化测试方法,其特征在于,步骤九中自动化测试平台根据用例信息描述文件中的用例标识信息构造测试点实际输出文件名和预期输出文件名,然后查找并打开相应的输出文件,同时利用其中测试点输出数据结构名称信息和XML定义文件构造输出数据结构,并将输出文件中的数据拷贝至相应内存空间,完成数据结构的赋值;在此基础上,对数据结构中的基本数据类型进行逐项比较分析,对非基本数据类型则进行递归处理,直至所有数据项均完成比较分析,最后对分析结果进行综合处理,得到最终分析结果,同时,包含测试分析比较结果在内的所有用例信息均写入测试结果文件。
9.根据权利要求1所述的用例表驱动的卫星轨道计算软件自动化测试方法,其特征在于,步骤十中利用Qt/QAxObject调用word的API接口生成测试报告,测试报告的格式均事先指定,报告中所需目录和章节标题信息、测试输入数据、测试分析结果均从测试结果文件中获取,自动化测试平台在用例执行过程中即时将测试结果写入报告,所有用例执行完成后,报告也随之撰写完成。
10.用例表驱动的卫星轨道计算软件自动化测试系统,其特征在于,包括:轨道计算软件单元、自动化测试平台、测试脚本、预期结果计算脚本四部分,
所述轨道计算软件单元作为被测对象,提供各类卫星轨道计算功能接口函数,其为动态链接库,本身不是可执行程序;
所述测试脚本用于驱动轨道计算软件单元,通过读取测试输入数据实现对被测函数的调用;
所述预期结果计算脚本自主调用商业软件STK计算预期结果,并将结果反馈给自动化测试平台;
所述自动化测试平台实现对测试用例及其数据的读取、解析、执行、控制、日志记录与报告撰写,主要包括测试配置、测试准备、测试执行功能模块。
CN201910091534.2A 2019-01-30 2019-01-30 用例表驱动的卫星轨道计算软件自动化测试方法及系统 Active CN109885488B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910091534.2A CN109885488B (zh) 2019-01-30 2019-01-30 用例表驱动的卫星轨道计算软件自动化测试方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910091534.2A CN109885488B (zh) 2019-01-30 2019-01-30 用例表驱动的卫星轨道计算软件自动化测试方法及系统

Publications (2)

Publication Number Publication Date
CN109885488A true CN109885488A (zh) 2019-06-14
CN109885488B CN109885488B (zh) 2022-03-18

Family

ID=66927397

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910091534.2A Active CN109885488B (zh) 2019-01-30 2019-01-30 用例表驱动的卫星轨道计算软件自动化测试方法及系统

Country Status (1)

Country Link
CN (1) CN109885488B (zh)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110781090A (zh) * 2019-10-31 2020-02-11 北京东软望海科技有限公司 数据处理测试的控制方法、装置、计算机设备及存储介质
CN110825618A (zh) * 2019-10-10 2020-02-21 重庆金融资产交易所有限责任公司 一种生成测试用例的方法及相关装置
CN111782513A (zh) * 2020-06-23 2020-10-16 西北工业大学 基于dll的卫星地面通用自动化测试方法
CN111813652A (zh) * 2020-05-28 2020-10-23 杭州览众数据科技有限公司 一种数据缺失相关的数据异常值校验的自动化测试方法
CN111813653A (zh) * 2020-05-28 2020-10-23 杭州览众数据科技有限公司 一种字段内容相关的数据异常测试方法及自动化测试工具
CN111984533A (zh) * 2020-08-04 2020-11-24 深圳市拔超科技有限公司 一种软件自动化测试系统及方法
CN112231201A (zh) * 2020-09-18 2021-01-15 中国铁道科学研究院集团有限公司通信信号研究所 一种ctc系统自律机功能批量自动回归测试方法及系统
CN112286779A (zh) * 2019-07-23 2021-01-29 腾讯科技(深圳)有限公司 测试任务处理方法、装置、存储介质和计算机设备
CN112306841A (zh) * 2019-07-26 2021-02-02 比亚迪股份有限公司 轨道业务的自动化测试方法、装置及设备
CN112631918A (zh) * 2020-12-25 2021-04-09 坤泰车辆系统(常州)有限公司 软件自动化测试验证的方法
CN112783774A (zh) * 2021-01-25 2021-05-11 东风电子科技股份有限公司 实现自动测试的脚本文件生成系统及其测试控制方法
CN113051158A (zh) * 2021-03-17 2021-06-29 中国人民解放军国防科技大学 一种系统级与链路级多指标同步自动化测试方法及系统
CN113360388A (zh) * 2021-06-23 2021-09-07 中国航空无线电电子研究所 对无人机地面站软件的测试过程进行一体化管理的方法
CN113407446A (zh) * 2021-06-04 2021-09-17 荣耀终端有限公司 一种测试用例的生成方法及电子设备
CN113515451A (zh) * 2021-06-09 2021-10-19 卡斯柯信号(成都)有限公司 一种联锁工具软件的自动化测试方法
CN113760761A (zh) * 2021-09-07 2021-12-07 上海金仕达软件科技有限公司 一种基于软硬件证券行情系统的自动化测试方法及装置
CN113821018A (zh) * 2021-11-22 2021-12-21 星河动力(北京)空间科技有限公司 运载火箭测试系统
CN113934623A (zh) * 2021-09-13 2022-01-14 北京控制工程研究所 一种基于特征表的测试脚本自动生成方法
CN114064486A (zh) * 2021-11-18 2022-02-18 北京京航计算通讯研究所 一种接口自动化测试方法
CN114610622A (zh) * 2022-03-14 2022-06-10 浙江中控技术股份有限公司 一种系统功能块自动化测试分层设计方法及相关装置
CN115328085A (zh) * 2022-08-08 2022-11-11 上海蓝箭鸿擎科技有限公司 通用化卫星半物理自动化测试系统及测试方法
CN115684895A (zh) * 2022-12-29 2023-02-03 摩尔线程智能科技(北京)有限责任公司 芯片可测性设计测试方法、测试平台及其生成方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101398778A (zh) * 2007-09-29 2009-04-01 中兴通讯股份有限公司 自动化集成测试方法
CN102402484A (zh) * 2011-11-30 2012-04-04 北京航空航天大学 一种嵌入式软件的可靠性增长测试自动试验装置及其方法
US20140033175A1 (en) * 2012-07-27 2014-01-30 Hon Hai Precision Industry Co., Ltd. Computing device and method for creating test cases of software program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101398778A (zh) * 2007-09-29 2009-04-01 中兴通讯股份有限公司 自动化集成测试方法
CN102402484A (zh) * 2011-11-30 2012-04-04 北京航空航天大学 一种嵌入式软件的可靠性增长测试自动试验装置及其方法
US20140033175A1 (en) * 2012-07-27 2014-01-30 Hon Hai Precision Industry Co., Ltd. Computing device and method for creating test cases of software program

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112286779B (zh) * 2019-07-23 2024-04-09 腾讯科技(深圳)有限公司 测试任务处理方法、装置、存储介质和计算机设备
CN112286779A (zh) * 2019-07-23 2021-01-29 腾讯科技(深圳)有限公司 测试任务处理方法、装置、存储介质和计算机设备
CN112306841A (zh) * 2019-07-26 2021-02-02 比亚迪股份有限公司 轨道业务的自动化测试方法、装置及设备
CN110825618A (zh) * 2019-10-10 2020-02-21 重庆金融资产交易所有限责任公司 一种生成测试用例的方法及相关装置
CN110781090B (zh) * 2019-10-31 2023-09-12 望海康信(北京)科技股份公司 数据处理测试的控制方法、装置、计算机设备及存储介质
CN110781090A (zh) * 2019-10-31 2020-02-11 北京东软望海科技有限公司 数据处理测试的控制方法、装置、计算机设备及存储介质
CN111813653B (zh) * 2020-05-28 2023-07-04 杭州览众数据科技有限公司 一种字段内容相关的数据异常测试方法及自动化测试工具
CN111813652A (zh) * 2020-05-28 2020-10-23 杭州览众数据科技有限公司 一种数据缺失相关的数据异常值校验的自动化测试方法
CN111813653A (zh) * 2020-05-28 2020-10-23 杭州览众数据科技有限公司 一种字段内容相关的数据异常测试方法及自动化测试工具
CN111813652B (zh) * 2020-05-28 2023-07-04 杭州览众数据科技有限公司 一种数据缺失相关的数据异常值校验的自动化测试方法
CN111782513A (zh) * 2020-06-23 2020-10-16 西北工业大学 基于dll的卫星地面通用自动化测试方法
CN111782513B (zh) * 2020-06-23 2022-12-02 西北工业大学 基于dll的卫星地面通用自动化测试方法
CN111984533A (zh) * 2020-08-04 2020-11-24 深圳市拔超科技有限公司 一种软件自动化测试系统及方法
CN111984533B (zh) * 2020-08-04 2023-02-03 深圳市拔超科技股份有限公司 一种软件自动化测试系统及方法
CN112231201A (zh) * 2020-09-18 2021-01-15 中国铁道科学研究院集团有限公司通信信号研究所 一种ctc系统自律机功能批量自动回归测试方法及系统
CN112231201B (zh) * 2020-09-18 2024-06-11 中国铁道科学研究院集团有限公司通信信号研究所 一种ctc系统自律机功能批量自动回归测试方法及系统
CN112631918A (zh) * 2020-12-25 2021-04-09 坤泰车辆系统(常州)有限公司 软件自动化测试验证的方法
CN112631918B (zh) * 2020-12-25 2024-04-23 坤泰车辆系统(常州)有限公司 软件自动化测试验证的方法
CN112783774A (zh) * 2021-01-25 2021-05-11 东风电子科技股份有限公司 实现自动测试的脚本文件生成系统及其测试控制方法
CN113051158A (zh) * 2021-03-17 2021-06-29 中国人民解放军国防科技大学 一种系统级与链路级多指标同步自动化测试方法及系统
CN113407446A (zh) * 2021-06-04 2021-09-17 荣耀终端有限公司 一种测试用例的生成方法及电子设备
CN113515451A (zh) * 2021-06-09 2021-10-19 卡斯柯信号(成都)有限公司 一种联锁工具软件的自动化测试方法
CN113360388A (zh) * 2021-06-23 2021-09-07 中国航空无线电电子研究所 对无人机地面站软件的测试过程进行一体化管理的方法
CN113760761A (zh) * 2021-09-07 2021-12-07 上海金仕达软件科技有限公司 一种基于软硬件证券行情系统的自动化测试方法及装置
CN113934623A (zh) * 2021-09-13 2022-01-14 北京控制工程研究所 一种基于特征表的测试脚本自动生成方法
CN114064486A (zh) * 2021-11-18 2022-02-18 北京京航计算通讯研究所 一种接口自动化测试方法
CN113821018A (zh) * 2021-11-22 2021-12-21 星河动力(北京)空间科技有限公司 运载火箭测试系统
CN114610622B (zh) * 2022-03-14 2024-05-28 浙江中控技术股份有限公司 一种系统功能块自动化测试分层设计方法及相关装置
CN114610622A (zh) * 2022-03-14 2022-06-10 浙江中控技术股份有限公司 一种系统功能块自动化测试分层设计方法及相关装置
CN115328085A (zh) * 2022-08-08 2022-11-11 上海蓝箭鸿擎科技有限公司 通用化卫星半物理自动化测试系统及测试方法
CN115684895B (zh) * 2022-12-29 2023-03-21 摩尔线程智能科技(北京)有限责任公司 芯片可测性设计测试方法、测试平台及其生成方法及装置
CN115684895A (zh) * 2022-12-29 2023-02-03 摩尔线程智能科技(北京)有限责任公司 芯片可测性设计测试方法、测试平台及其生成方法及装置

Also Published As

Publication number Publication date
CN109885488B (zh) 2022-03-18

Similar Documents

Publication Publication Date Title
CN109885488A (zh) 用例表驱动的卫星轨道计算软件自动化测试方法及系统
CN106547689B (zh) 一种基于web的自动化测试用例开发系统及方法
CN110058846A (zh) 一种业务应用软件开发系统和方法
CN104598240B (zh) 一种跨平台的仿真模型开发方法及系统
CN110321281A (zh) 基于混合自动化测试框架的Web测试平台及测试方法
EP3367234A2 (en) Systems and methods for arbitrary software logic modeling
CN103885439A (zh) 铁路信号计算机联锁系统的自动化测试系统
Shelley et al. CASE, a computer model of the structure elucidation process
CN104679488A (zh) 一种流程定制开发平台及流程定制开发方法
CN102722616B (zh) 一种基于Excel绘制勘探点平面图的方法
CN105760296A (zh) 自动化测试控制方法、装置及终端
CN106598615A (zh) 一种食谱程序代码生成方法及食谱编译云平台系统
CN108829395A (zh) 一种面向信号驱动程序代码自动生成方法及装置
CN109978495A (zh) 一种核电站调试试验报告编制方法和系统
CN104750606A (zh) 一种基于反射的自动化测试方法
CN106250134B (zh) 单一性语言的代码自动生成方法
CN108038547A (zh) 基于图形化的卫星遥测数据诊断规则编辑系统
CN114020273A (zh) 一种复杂系统软件集成方法
CN106096159A (zh) 一种云平台下的分布式系统行为仿真分析系统的实现方法
CN106022580A (zh) 一种覆盖智能变电站全过程的二次系统资料管控方法
CN108874386A (zh) 一种图形化的面向信号驱动程序建模方法及装置
CN109902013B (zh) 一种基于组态化测试序列的有效载荷测试方法及系统
CN116383061A (zh) 变电站站控系统基础平台接口测试方法及相关装置
CN109117173A (zh) 一种基于项目版本开发的配置文件管理方法
CN115391174A (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