CN107797926B - 一种实现linux应用测试自动化的系统及方法 - Google Patents

一种实现linux应用测试自动化的系统及方法 Download PDF

Info

Publication number
CN107797926B
CN107797926B CN201710978002.1A CN201710978002A CN107797926B CN 107797926 B CN107797926 B CN 107797926B CN 201710978002 A CN201710978002 A CN 201710978002A CN 107797926 B CN107797926 B CN 107797926B
Authority
CN
China
Prior art keywords
test
node
case
module
calling
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
Application number
CN201710978002.1A
Other languages
English (en)
Other versions
CN107797926A (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.)
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 CN201710978002.1A priority Critical patent/CN107797926B/zh
Publication of CN107797926A publication Critical patent/CN107797926A/zh
Application granted granted Critical
Publication of CN107797926B publication Critical patent/CN107797926B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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

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

本发明涉及一种实现linux应用测试自动化的系统及方法,其特征在于,包括如下步骤:服务器节点端搭建centos系统环境用于存放LTP基准测试工具,基准测试用例以及测试脚本;控制台节点端搭建测试环境;控制台节点端编写测试用例,创建项目KUX‑CASE;依据创建项目KUX‑CASE开始执行对待测系统节点系统镜像部署测试和应用测试的自动化;测试执行完成后,根据生成的测试日志,收集测试信息,输出测试报告。

Description

一种实现linux应用测试自动化的系统及方法
技术领域
本发明属于自动化测试技术领域,具体涉及一种实现linux应用测试自动化的系统及方法。
背景技术
当今,各种创新技术层出不穷,对测试测量行业产生巨大影响。自动化测试领域的迅速发展是必然趋势。现在自动化测试已经愈趋向生命周期测试全自动化方向,相较于传统单一的功能自动化测试,开发“端到端的、全生命周期测试的自动化”贯穿整个软件生命周期的单元测试、集成测试或系统测试的任何一部分都可以实现的自动化测试平台是目前以及未来自动化发展方向的大趋势也是对测试领域的必然要求。
Selenium是ThoughtWorks员工开发并维护的开源项目,是一个web自动化测试的轻量级框架。Selenium的主要特点是其开源性、跨平台性以及众多的编程语言支持。可以使用python、java、php甚至Linux shell来编写测试用例。
Eclipse是一个开放源代码的、基于java的可扩展开发平台,就其本身而言,他是一个框架和一组服务,用于通过插件组件构建开发环境。
LTP是一个用来验证linux系统可靠性、健壮性和稳定性的测试套件,linux操作系统基准测试验证工具。
目前现有技术对linux操作系统的基准测试是采用的手动执行LTP基准测试。需要先把待测试的操作系统手动安装于服务器上,然后再在装有操作系统的节点上手动安装LTP测试工具,补充测试用例,开始执行测试。
现有的应用自动化测试方案,需要满足先在节点上安应用系统依赖的操作系统,然后进行系统的LTP基准测试,系统测试完成后,需要人力来确认待测系统已经准备完成,然后再开启应用自动化测试。
对linux系统上的应用进行测试,需要填手动完成系统环境的搭建后,再搭建应用环境,然后开启自动化测试。这样系统测试和应用测试之间是有缝隙的,会造成人力、项目研发周期上的浪费,导致研发成本高。此为现有技术的不足之处。
发明内容
本发明的目的在于,针对上述现有技术存在的缺陷,提供设计一种实现linux应用测试自动化的系统及方法,以解决上述技术问题。
为了达到上述目的,本发明的技术方案是:
一种实现linux应用测试自动化的系统,包括服务器节点、控制台节点和待测系统节点;
服务器节点设有LTP基准测试工具、基准测试用例和测试脚本;
控制台节点设有第一接口模块和调用模块;
控制台节点通过第一接口模块访问服务器节点,调用模块用调用服务器节点的测试脚本;
控制台节点还包括第二接口模块,控制台节点通过第二接口模块访问待测系统节点控制服务器节点通过LTP基准测试工具和测试脚本
对待测系统节点的测试。
进一步的,服务器节点包括第一搭建模块,用于搭建centos系统环境;所述centos系统环境用于存放LTP基准测试工具、基准测试用例和测试脚本。
进一步的,控制台节点包括第二搭建模块,用于搭建selenium+eclipse+firefox测试环境。
进一步的,控制台节点还包括写入模块和创建模块,写入模块用于编写测试用例,创建模块接收写入模块写入信息创建项目KUX-CASE。
进一步的,服务器节点依据编写测试用例和创建项目KUX-CASE对待测系统节点的测试;
所述KUX-CASE项目包括main函数模块,用于调用镜像测试用例、调用应用测试用例、生成自定义格式日志。
进一步的,服务器节点还包括收集模块、数据处理模块和输出模块;
收集模块,用于收集所有测试信息发送到数据处理模块;
数据处理模块,用于对收集到的信息进行处理生成测试报告;
输出模块用于输出测试报告。
一种实现linux应用测试自动化的方法,包括如下步骤:
服务器节点端搭建centos系统环境用于存放LTP基准测试工具,基准测试用例以及测试脚本;
控制台节点端搭建测试环境;
控制台节点端编写测试用例,创建项目KUX-CASE;
依据创建项目KUX-CASE开始执行对待测系统节点系统镜像部署测试和应用测试的自动化;
测试执行完成后,根据生成的测试日志,收集测试信息,输出测试报告。
进一步的,控制台节点端搭建测试环境具体包括:搭建selenium+eclipse+firefox测试环境。
进一步的,项目KUX-CASE包括main函数用来调用镜像测试用例、调用应用测试用例、生成自定义格式日志具体包括:
main函数调用镜像部署函数开始系统镜像部署测试;
系统镜像部署测试后调用应用测试函数进行应用测试的测试;
测试执行完成后结果写入日志文件。
本发明的有益效果在于,本发明通过基于selenium架构平台实现linux系统应用测试自动化的技术方案,对提高自动化测试效率有显著效果。本发明采用eclipse开发测试用例,编写main函数来调用系统基准测试用例执行系统测试,解决了应用系统所依赖的操作系统基准测试自动化的问题;Main函数调用应用测试的模块用例来实现应用测试,解决了应用测试自动化的问题。通过python语言的用例编写,main函数先后对各函数的调用,从而实现了系统镜像测试和应用测试之间的衔接,实现从镜像到应用测试报告的完整自动化,节省了两部分自动化测试之间的人为确认程序,从而节约了资源和时间,提高了测试效率。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著地进步,其实施的有益效果也是显而易见的。
附图说明
图1为本发明实施例提供的测试系统环境架构图。
图2为本发明实施例提供的测试用例执行流程图。
具体实施方式
下面结合附图并通过具体实施例对本发明进行详细阐述,以下实施例是对本发明的解释,而本发明并不局限于以下实施方式。
如图1所示,本实施例提供的一种实现linux应用测试自动化的系统,包括服务器节点、控制台节点和待测系统节点;
服务器节点设有LTP基准测试工具、基准测试用例和测试脚本;
控制台节点设有第一接口模块和调用模块;
控制台节点通过第一接口模块访问服务器节点,调用模块用调用服务器节点的测试脚本;
控制台节点还包括第二接口模块,控制台节点通过第二接口模块访问待测系统节点控制服务器节点通过LTP基准测试工具和测试脚本
对待测系统节点的测试。
服务器节点包括第一搭建模块,用于搭建centos系统环境;所述centos系统环境用于存放LTP基准测试工具、基准测试用例和测试脚本。
控制台节点包括第二搭建模块,用于搭建selenium+eclipse+firefox测试环境。
控制台节点还包括写入模块和创建模块,写入模块用于编写测试用例,创建模块接收写入模块写入信息创建项目KUX-CASE。
服务器节点依据编写测试用例和创建项目KUX-CASE对待测系统节点的测试;
所述KUX-CASE项目包括main函数模块,用于调用镜像测试用例、调用应用测试用例、生成自定义格式日志。
服务器节点还包括收集模块、数据处理模块和输出模块;
收集模块,用于收集所有测试信息发送到数据处理模块;
数据处理模块,用于对收集到的信息进行处理生成测试报告;
输出模块用于输出测试报告。
依据上述系统实现linux应用测试自动化的方法,包括如下步骤:
服务器节点端搭建centos系统环境用于存放LTP基准测试工具,基准测试用例以及测试脚本;
控制台节点端搭建测试环境;
控制台节点端编写测试用例,创建项目KUX-CASE;
依据创建项目KUX-CASE开始执行对待测系统节点系统镜像部署测试和应用测试的自动化;
测试执行完成后,根据生成的测试日志,收集测试信息,输出测试报告。
控制台节点端搭建测试环境具体包括:搭建selenium+eclipse+firefox测试环境。
项目KUX-CASE包括main函数用来调用镜像测试用例、调用应用测试用例具体包括:
如图2所示,main函数调用sshclient_execmd函数进行镜像部署基准测试;
验证镜像部署完成基准测试,调用faultManagement函数进行应用测试其中一个功能模块的测试;
测试执行完成后结果写入日志文件。
部分代码内容如下:
def main():
global LOGGER
#create logger
LOGGER = logging.getLogger()
LOGGER.setLevel(logging.DEBUG)
#create console handler and set level to debug
ch = logging.StreamHandler()
ch.setLevel(logging.DEBUG)
logging.basicConfig(filename = "d:\\K-UX_TEST_LOG.txt")
#create formatter
formatter = logging.Formatter("%(asctime)s - %(name)s - %(levelname)s -%(message)s")
#add formatter to ch
ch.setFormatter(formatter)
#add ch to logger
LOGGER.addHandler(ch) LOGGER.info( time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time())))
LOGGER.info("\n\n--------------------------------------\n\n")
LOGGER.info("\n\n系统镜像部署测试开始 \n\n")
#镜像部署函数----------------------------------------
sshclient_execmd(SER3_IP, SER3_PORT, SER3_username, SER3_password, NEW_execmd, LOGGER)
Linux_to_Window_Dir(Linux_path, window_path, SER3_IP, SER3_username, SER3_password)
LOGGER.info("\n\n系统镜像部署测试结束\n\n")
LOGGER.info("\n\n系统管理平台界面测试开始 \n\n")
print "开启应用测试new thread"
p_alert = multiprocessing.Process(target = worker, name = 'alertmanagement')
p_alert.start()
sleep(5)
p_alert.join()
p_faultManagement = multiprocessing.Process(target = worker, name= 'faultManagement')
p_faultManagement.start()
sleep(5)
p_faultManagement.join()
以上公开的仅为本发明的优选实施方式,但本发明并非局限于此,任何本领域的技术人员能思之的没有创造性的变化,以及在不脱离本发明原理前提下所作的若干改进和润饰,都应落在本发明的保护范围内。

Claims (8)

1.一种实现linux应用测试自动化的系统,其特征在于,包括服务器节点、控制台节点和待测系统节点;
服务器节点设有LTP基准测试工具、基准测试用例和测试脚本;
控制台节点设有第一接口模块和调用模块;
控制台节点通过第一接口模块访问服务器节点,调用模块调用服务器节点的测试脚本;
控制台节点还包括第二接口模块,控制台节点通过第二接口模块访问待测系统节点;控制服务器节点通过LTP基准测试工具和测试脚本对待测系统节点的测试;
控制台节点编写测试用例,创建项目KUX-CASE;依据创建项目KUX-CASE开始执行对待测系统节点系统镜像部署测试和应用测试的自动化;
KUX-CASE项目包括main函数模块,用于调用镜像测试用例、调用应用测试用例、生成自定义格式日志;具体包括:
main函数调用镜像部署函数开始系统镜像部署测试;
系统镜像部署测试后调用应用测试函数进行应用测试的测试;
测试执行完成后结果写入日志文件。
2.根据权利要求1所述的一种实现linux应用测试自动化的系统,其特征在于,服务器节点包括第一搭建模块,用于搭建centos系统环境;所述centos系统环境用于存放LTP基准测试工具、基准测试用例和测试脚本。
3.根据权利要求2所述的一种实现linux应用测试自动化的系统,其特征在于,控制台节点包括第二搭建模块,用于搭建selenium+eclipse+firefox测试环境。
4.根据权利要求3所述的一种实现linux应用测试自动化的系统,其特征在于,控制台节点还包括写入模块和创建模块,写入模块用于编写测试用例,创建模块接收写入模块写入信息创建项目KUX-CASE。
5.根据权利要求4所述的一种实现linux应用测试自动化的系统,其特征在于,服务器节点依据编写测试用例和创建项目KUX-CASE对待测系统节点的测试;
所述KUX-CASE项目包括main函数模块,用于调用镜像测试用例、调用应用测试用例、生成自定义格式日志。
6.根据权利要求5所述的一种实现linux应用测试自动化的系统,其特征在于,服务器节点还包括收集模块、数据处理模块和输出模块;
收集模块,用于收集所有测试信息发送到数据处理模块;
数据处理模块,用于对收集到的信息进行处理生成测试报告;
输出模块用于输出测试报告。
7.一种实现linux应用测试自动化的方法,其特征在于,包括如下步骤:
服务器节点端搭建centos系统环境用于存放LTP基准测试工具,基准测试用例以及测试脚本;
控制台节点端搭建测试环境;
控制台节点端编写测试用例,创建项目KUX-CASE;
依据创建项目KUX-CASE开始执行对待测系统节点系统镜像部署测试和应用测试的自动化;项目KUX-CASE包括main函数用来调用镜像测试用例、调用应用测试用例、生成自定义格式日志具体包括:
main函数调用镜像部署函数开始系统镜像部署测试;
系统镜像部署测试后调用应用测试函数进行应用测试的测试;
测试执行完成后,根据生成的测试日志,收集测试信息,输出测试报告。
8.根据权利要求7所述的一种实现linux应用测试自动化的方法,其特征在于,控制台节点端搭建测试环境具体包括:搭建selenium+eclipse+firefox测试环境。
CN201710978002.1A 2017-10-19 2017-10-19 一种实现linux应用测试自动化的系统及方法 Active CN107797926B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710978002.1A CN107797926B (zh) 2017-10-19 2017-10-19 一种实现linux应用测试自动化的系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710978002.1A CN107797926B (zh) 2017-10-19 2017-10-19 一种实现linux应用测试自动化的系统及方法

Publications (2)

Publication Number Publication Date
CN107797926A CN107797926A (zh) 2018-03-13
CN107797926B true CN107797926B (zh) 2021-07-20

Family

ID=61533421

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710978002.1A Active CN107797926B (zh) 2017-10-19 2017-10-19 一种实现linux应用测试自动化的系统及方法

Country Status (1)

Country Link
CN (1) CN107797926B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108874622A (zh) * 2018-05-30 2018-11-23 郑州云海信息技术有限公司 一种nfs性能自动化测试方法
CN110580216B (zh) * 2018-06-08 2024-04-05 北京京东尚科信息技术有限公司 一种应用提测的方法和装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100370434C (zh) * 2005-11-01 2008-02-20 华为技术有限公司 一种实现软件自动测试的方法及系统
CN101212362B (zh) * 2006-12-26 2010-05-19 中兴通讯股份有限公司 一种融合多类型测试工具的自动化测试装置及方法
CN101882105B (zh) * 2010-06-01 2013-05-08 华南理工大学 一种测试Web网页并发环境下响应时间的方法
CN105589804A (zh) * 2014-12-31 2016-05-18 中国银联股份有限公司 一种基于流程驱动的测试自动化方法以及测试自动化系统
CN104809068A (zh) * 2015-05-08 2015-07-29 浪潮电子信息产业股份有限公司 一种基于selenium的web自动化测试框架构建方法
CN105205003A (zh) * 2015-10-28 2015-12-30 努比亚技术有限公司 一种基于集群化系统的自动化测试方法和装置
CN106201882A (zh) * 2016-07-13 2016-12-07 浪潮(北京)电子信息产业有限公司 基于Jenkins的操作系统自动化测试方法及系统
CN106294157A (zh) * 2016-08-11 2017-01-04 浪潮(北京)电子信息产业有限公司 一种操作系统测试方法及装置
CN106649085A (zh) * 2016-09-23 2017-05-10 郑州云海信息技术有限公司 一种基于云计算的软件测试系统
CN108710569A (zh) * 2018-05-09 2018-10-26 深圳壹账通智能科技有限公司 测试案例生成方法、数据生成方法、装置、设备及介质

Also Published As

Publication number Publication date
CN107797926A (zh) 2018-03-13

Similar Documents

Publication Publication Date Title
Gojare et al. Analysis and design of selenium webdriver automation testing framework
CN110633209B (zh) 一种车载安卓多媒体导航仪自动化测试方法及系统
CN103631720B (zh) 测试用例的生成方法和装置
WO2016177124A1 (zh) 一种实现持续集成测试的方法及装置
CN101930400B (zh) Sdk自动化测试系统及方法
CN108845940B (zh) 一种企业级信息系统自动化功能测试方法和系统
CN104407971A (zh) 自动化测试嵌入式软件的方法
CN108647037A (zh) 基于shell脚本的自动化部署方法和系统
US20070266165A1 (en) Test automation method for software programs
CN106991046B (zh) 应用测试方法及装置
CN102662644B (zh) 一种使用流程图生成测试案例的方法
CN103077111A (zh) 一种持续集成失败用例的定位方法及系统
CN107797926B (zh) 一种实现linux应用测试自动化的系统及方法
CN113254054B (zh) 一种智能合约一站式开发系统及方法
CN103699385A (zh) 一种代码持续集成的方法
CN106326127A (zh) 一种自动化测试方法
CN106201745A (zh) 应用程序的远程调试方法、远程调试系统和终端
CN106991045A (zh) 页面校验方法及装置
CN114153743A (zh) 基于接口自动化测试方法
CN112256258A (zh) 微服务编排自动代码生成方法及系统
CN106371868A (zh) 一种自动化测试方法、系统及测试机器
CN107423221A (zh) 一种web应用可持续测试方法及系统
CN107480061B (zh) 一种基于Jenkins CI构建变化模块的自动化回归测试方法
CN113177004A (zh) Ecu软件自动化测试方法及其系统
Sturdevant Cruisin'and Chillin': Testing the Java-Based Distributed Ground Data System" Chill" with CruiseControl System" Chill" with CruiseControl

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