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

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

Info

Publication number
CN107797926A
CN107797926A CN201710978002.1A CN201710978002A CN107797926A CN 107797926 A CN107797926 A CN 107797926A CN 201710978002 A CN201710978002 A CN 201710978002A CN 107797926 A CN107797926 A CN 107797926A
Authority
CN
China
Prior art keywords
test
case
node
module
benchmark
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
CN201710978002.1A
Other languages
English (en)
Other versions
CN107797926B (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

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 (9)

1.一种实现linux应用测试自动化的系统,其特征在于,包括服务器节点、控制台节点和待测系统节点;
服务器节点设有LTP基准测试工具、基准测试用例和测试脚本;
控制台节点设有第一接口模块和调用模块;
控制台节点通过第一接口模块访问服务器节点,调用模块用调用服务器节点的测试脚本;
控制台节点还包括第二接口模块,控制台节点通过第二接口模块访问待测系统节点控制服务器节点通过LTP基准测试工具和测试脚本对待测系统节点的测试。
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开始执行对待测系统节点系统镜像部署测试和应用测试的自动化;
测试执行完成后,根据生成的测试日志,收集测试信息,输出测试报告。
8.根据权利要求7所述的一种实现linux应用测试自动化的方法,其特征在于,控制台节点端搭建测试环境具体包括:搭建selenium+eclipse+firefox测试环境。
9.根据权利要求8所述的一种实现linux应用测试自动化的方法,其特征在于,项目KUX-CASE包括main函数用来调用镜像测试用例、调用应用测试用例、生成自定义格式日志具体包括:
main函数调用镜像部署函数开始系统镜像部署测试;
系统镜像部署测试后调用应用测试函数进行应用测试的测试;
测试执行完成后结果写入日志文件。
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 true CN107797926A (zh) 2018-03-13
CN107797926B 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)

Cited By (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性能自动化测试方法
CN110580216A (zh) * 2018-06-08 2019-12-17 北京京东尚科信息技术有限公司 一种应用提测的方法和装置

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1851666A (zh) * 2005-11-01 2006-10-25 华为技术有限公司 一种实现软件自动测试的方法及系统
CN101212362B (zh) * 2006-12-26 2010-05-19 中兴通讯股份有限公司 一种融合多类型测试工具的自动化测试装置及方法
CN101882105A (zh) * 2010-06-01 2010-11-10 华南理工大学 一种测试Web网页并发环境下响应时间的方法
CN104809068A (zh) * 2015-05-08 2015-07-29 浪潮电子信息产业股份有限公司 一种基于selenium的web自动化测试框架构建方法
CN105205003A (zh) * 2015-10-28 2015-12-30 努比亚技术有限公司 一种基于集群化系统的自动化测试方法和装置
CN105589804A (zh) * 2014-12-31 2016-05-18 中国银联股份有限公司 一种基于流程驱动的测试自动化方法以及测试自动化系统
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 深圳壹账通智能科技有限公司 测试案例生成方法、数据生成方法、装置、设备及介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1851666A (zh) * 2005-11-01 2006-10-25 华为技术有限公司 一种实现软件自动测试的方法及系统
CN101212362B (zh) * 2006-12-26 2010-05-19 中兴通讯股份有限公司 一种融合多类型测试工具的自动化测试装置及方法
CN101882105A (zh) * 2010-06-01 2010-11-10 华南理工大学 一种测试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 深圳壹账通智能科技有限公司 测试案例生成方法、数据生成方法、装置、设备及介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BAOZHIDA: "Selenium docker在WebUI自动化测试中的应用", 《HTTPS://TESTERHOME.COM/TOPICS/8450》 *
CHENGLY0129: "Docker与Web自动化测试:一键创建Selenium Grid集群", 《HTTPS://BLOG.CSDN.NET/CHENGLY0129/ARTICLE/DETAILS/68940720》 *
咚咚小报: "基于Docker快速地部署可持续自动化测试平台", 《WWW.51TESTING.COM/HTML/06/N-3715706.HTML》 *

Cited By (3)

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

Also Published As

Publication number Publication date
CN107797926B (zh) 2021-07-20

Similar Documents

Publication Publication Date Title
US7930683B2 (en) Test automation method for software programs
US20210011840A1 (en) Software testing method, system, apparatus, device medium, and computer program product
KR101132560B1 (ko) 로봇 소프트웨어 컴포넌트를 위한 시뮬레이션 기반 인터페이스 테스팅 자동화 시스템 및 그 방법
CN102163173B (zh) 一种分布式信息系统接口自动化测试方法
CN108536521B (zh) 基于仿真平台离线环境核对方法及装置
CN102141962A (zh) 一种安全性分布式测试框架系统及其测试方法
CN113392025B (zh) 对可重构fpga软件进行过程监控的方法
CN104991777B (zh) 实现Web应用程序自动化测试视图化开发的系统及方法
CN107506303A (zh) 用于自动化测试的方法、装置及系统
CN105117233A (zh) Api调用方法及装置
CN101241467A (zh) 一种面向Web应用的自动化白盒测试系统及方法
CN103678124B (zh) 基于持续集成环境的视频监控平台自动测试方法及装置
CN103605556A (zh) 虚拟试验对象一体化构建系统及方法
CN113065314B (zh) 一种基于xml文件格式的bios硬件适配方法及装置
CN107797926A (zh) 一种实现linux应用测试自动化的系统及方法
CN114816980A (zh) 一种嵌入式通信系统用自动测试装置及方法
CN107423221A (zh) 一种web应用可持续测试方法及系统
CN106526447A (zh) 主板检测装置及方法
JPH09244921A (ja) ソフトウエア試験の自動化システム
Ciraci et al. An approach for detecting inconsistencies between behavioral models of the software architecture and the code
CN114661609B (zh) 人工智能医疗自动化测试集成系统
CN111984534B (zh) 一种基于arm64架构前端UI自动化测试方法及装置
CN108965057A (zh) 一种基于gb/t28181协议的测试装置及方法
CN116257458B (zh) 一种混合开发模式下移动api的自动化测试方法及系统
CN103092756B (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