CN113535208A - 基于python实现可视化集中维护和更新测试应用程序的方法 - Google Patents

基于python实现可视化集中维护和更新测试应用程序的方法 Download PDF

Info

Publication number
CN113535208A
CN113535208A CN202110896632.0A CN202110896632A CN113535208A CN 113535208 A CN113535208 A CN 113535208A CN 202110896632 A CN202110896632 A CN 202110896632A CN 113535208 A CN113535208 A CN 113535208A
Authority
CN
China
Prior art keywords
server
command
name
service
excel
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
CN202110896632.0A
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.)
Zhejiang Wanpeng Education Science And Technology Stock Co ltd
Original Assignee
Zhejiang Wanpeng Education Science And Technology Stock 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 Zhejiang Wanpeng Education Science And Technology Stock Co ltd filed Critical Zhejiang Wanpeng Education Science And Technology Stock Co ltd
Priority to CN202110896632.0A priority Critical patent/CN113535208A/zh
Publication of CN113535208A publication Critical patent/CN113535208A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于python实现可视化集中维护和更新测试应用程序的方法。本发明步骤如下:步骤1、将服务器信息、操作命令存入Excel,包括服务名称、所在服务器、端口、用户名、密码、操作命令;步骤2、用户运行pc桌面程序,初始化窗体界面,包括窗体名称、图标、窗体大小及位置、从Excel中读取服务器列表、操作按钮、日志打印区域;步骤3、选择服务器,点击对应服务的操作按钮,读取Excel中对应的操作命令,远程到服务器上执行命令;步骤4、获取服务器返回的结果实时打印到pc桌面程序的日志打印区域。本发明极大的提高了集成测试中处理测试环境服务的效率,减少了人工成本及出错概率,提升整体工作效率。

Description

基于python实现可视化集中维护和更新测试应用程序的方法
技术领域
本发明属于集中监控与控制技术领域,具体地涉及一种基于python实现可视化集中维护和更新测试应用程序的方法。
背景技术
在集成测试过程中,需要频繁更新应用程序、清理缓存、重启服务等,这些都需要登录到服务器上进行操作,而手工输入操作命令可能会因为输入错误引发不可控事故。一个产品涉及多个服务,而这些服务往往部署在不同的服务器上,随着公司产品线的不断增加,测试环境涉及的服务器以及部署的服务也越来越多,给集成测试工作和测试环境服务管理上增加了负担。
本发明开发了一种集中维护的方法,对测试环境服务器上部署的服务进行集中管理,可视化界面进行操作,列出服务器列表,根据所选服务器可以对指定服务进行重启、更新应用程序、清理缓存等,能够很大程度上减轻集成测试中管理测试环境服务的负担,也避免了因手工输入失误引发的事故。
发明内容
本发明的目的是针对集成测试中测试环境服务管理繁琐的情况,开发了一个PC桌面程序,提供一种基于python实现可视化集中维护和更新测试应用程序的方法。
所述的服务器为Linux服务器。
本发明解决其技术问题所采用的技术方案如下:
步骤1、将服务器信息、操作命令存入Excel,包括服务名称、所在服务器、端口、用户名、密码、操作命令。
步骤2、用户运行pc桌面程序,初始化窗体界面,包括窗体名称、图标、窗体大小及位置、从Excel中读取服务器列表、操作按钮(tomcat:重启、更新;redis:重启、清空、删除单个key值;nginx:重启;EntryServer:重启;wpcf:重启)、日志打印区域。
步骤3、选择服务器,点击对应服务的操作按钮(更新、删除单个key值、清空、重启),读取Excel中对应的操作命令,远程到服务器上执行命令。
步骤4、获取服务器返回的结果实时打印到pc桌面程序的日志打印区域。
本发明有益效果如下:
1、集中管理测试环境服务,免去频繁远程登录到不同服务器。
2、节约时间成本:测试环境共31个服务,以“更新”为例,一个熟练掌握Linux操作命令的测试人员,从连接服务器到执行更新应用程序服务操作命令,总计需要1分钟左右的时间;而通过可视化界面按钮操作,只需要1-2秒即可完成更新应用程序、清理缓存、重启服务等操作,免去反复手工输入操作命令,时间成本至少节约96%。
3、杜绝因命令输入错误引发的不可控事故:以“更新”为例,完成更新应用程序服务,需要远程到服务器上输入10条操作命令,由于手工输入,字母输入错误的情况较为常见,命令输入错误的概率为20%,最严重的如执行删除命令时多一个空格可能导致系统文件被删除,若无法还原则只能重装系统,这直接导致测试环境需要重新搭建且数据丢失;而通过可视化界面按钮操作,由程序自动执行更新应用程序、清理缓存、重启服务等操作,将出错率控制在1%。
4、实时展示操作结果日志,掌握命令执行进度。
综上所述,本发明极大的提高了集成测试中处理测试环境服务的效率,减少了人工成本及出错概率,提升整体工作效率。
具体实施方式
步骤1、将服务器信息、操作命令存入Excel,包括服务名称、所在服务器、端口、用户名、密码、操作命令;
所述的数据存入实现如下:
不同服务的数据分别存储在Excel的不同表单中。
tomcat:服务名称、所在服务器、端口、用户名、密码、重启命令、更新命令。
Redis:服务名称、所在服务器、端口、用户名、密码、重启命令、清除单个key值命令、清空命令。
Nginx:服务名称、所在服务器、端口、用户名、密码、重启命令。
Entryserver:服务名称、所在服务器、端口、用户名、密码、重启命令。
Wpcf:服务名称、所在服务器、端口、用户名、密码、重启命令。
步骤2、用户运行pc桌面程序,初始化窗体界面,包括窗体名称、图标、窗体大小及位置、从Excel中读取服务器列表、操作按钮(tomcat:重启、更新;redis:重启、清空、删除单个key值;nginx:重启;EntryServer:重启;wpcf:重启)、日志打印区域;
所述的初始化窗体实现如下:
1、通过title方法设置窗体名称,通过iconbitmap方法设置图标,通过geometry方法设置窗体大小及位置,展示操作按钮、日志打印区域的控件。
2、通过xlrd.open_workbook打开Excel,通过sheet_by_name方法读取指定表单中的内容,再通过循环的方式从第二行开始读取服务器列表信息,将获取的值赋值给下拉列表控件。
步骤3、选择服务器,点击对应服务的操作按钮(更新、删除单个key值、清空、重启),读取Excel中对应的操作命令,远程到服务器上执行命令;
更新、删除单个key值、清空、重启,具体实现如下:
所述的操作按钮为更新、删除单个key值、清空、重启。
1、根据用户所选服务器,点击操作按钮,通过
xlrd.open_workbook打开Excel,通过sheet_by_name方法读取指定表单中的内容,再通过循环的方式从第二行开始读取操作命令,同时判断服务器是否与用户所选服务器匹配。
2、使用Python的Paramiko模块SSHClient类的connect方法与服务器建立连接。
3、如点击的是更新、删除单个key值按钮,则会弹出输入框,输入要更新的应用程序服务包ftp地址或想要删除的redis的单个key值,点击开始执行,继续执行后续操作;如点击的是清空、重启按钮,则直接开始执行下一步。
4、Paramiko模块SSHClient类的exec_command方法执行操作命令。
步骤4、获取服务器返回的结果实时打印到pc桌面程序的日志打印区域;
所述的日志打印具体实现如下:
通过stdout.readline()获取服务器返回的执行结果日志,以Server startup、OK等关键字标记本次执行结束。

Claims (5)

1.基于python实现可视化集中维护和更新测试应用程序的方法,其特征在于包括如下实现步骤:
所述的服务器为Linux服务器;
步骤1、将服务器信息、操作命令存入Excel,服务器信息包括服务名称、所在服务器、端口、用户名、密码;
步骤2、用户运行pc桌面程序,初始化窗体界面:包括窗体名称、图标、窗体大小及位置、从Excel中读取服务器列表、操作按钮、日志打印区域;操作按钮包括tomcat:重启、更新;redis:重启、清空、删除单个key值;nginx:重启;EntryServer:重启;wpcf:重启;
步骤3、选择服务器,点击对应服务的操作按钮,读取Excel中对应的操作命令,远程到服务器上执行命令;
步骤4、获取服务器返回的结果实时打印到pc桌面程序的日志打印区域。
2.根据权利要求1所述的基于python实现可视化集中维护和更新测试应用程序的方法,其特征在于所述的数据存入Excel的实现如下:
不同服务的数据分别存储在Excel的不同表单中;
tomcat:服务名称、所在服务器、端口、用户名、密码、重启命令、更新命令;
Redis:服务名称、所在服务器、端口、用户名、密码、重启命令、清除单个key值命令、清空命令;
Nginx:服务名称、所在服务器、端口、用户名、密码、重启命令;
Entryserver:服务名称、所在服务器、端口、用户名、密码、重启命令;
Wpcf:服务名称、所在服务器、端口、用户名、密码、重启命令。
3.根据权利要求1或2所述的基于python实现可视化集中维护和更新测试应用程序的方法,其特征在于所述的初始化窗体实现如下:
1、通过title方法设置窗体名称,通过iconbitmap方法设置图标,通过geometry方法设置窗体大小及位置,展示操作按钮、日志打印区域的控件;
2、通过xlrd.open_workbook打开Excel,通过sheet_by_name方法读取指定表单中的内容,再通过循环的方式从第二行开始读取服务器列表信息,将获取的值赋值给下拉列表控件。
4.根据权利要求3所述的基于python实现可视化集中维护和更新测试应用程序的方法,其特征在于操作按钮tomcat更新具体实现如下:
1、根据用户所选服务器,点击tomcat的更新按钮,通过xlrd.open_workbook打开Excel,通过sheet_by_name方法读取指定表单中的内容,再通过循环的方式从第二行开始读取操作命令,同时判断服务器是否与用户所选服务器匹配;
2、使用Python的Paramiko模块SSHClient类的connect方法与服务器建立连接;
3、因点击的是更新按钮,则会弹出输入框,输入要更新的应用程序服务包ftp地址,点击开始更新,继续执行后续操作;
4、Paramiko模块SSHClient类的exec_command方法执行更新命令。
5.根据权利要求4所述的基于python实现可视化集中维护和更新测试应用程序的方法,其特征在于所述的日志打印具体实现如下:
通过stdout.readline()获取服务器返回的执行结果日志,以Server startup、OK等关键字标记本次执行结束。
CN202110896632.0A 2021-08-05 2021-08-05 基于python实现可视化集中维护和更新测试应用程序的方法 Pending CN113535208A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110896632.0A CN113535208A (zh) 2021-08-05 2021-08-05 基于python实现可视化集中维护和更新测试应用程序的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110896632.0A CN113535208A (zh) 2021-08-05 2021-08-05 基于python实现可视化集中维护和更新测试应用程序的方法

Publications (1)

Publication Number Publication Date
CN113535208A true CN113535208A (zh) 2021-10-22

Family

ID=78090597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110896632.0A Pending CN113535208A (zh) 2021-08-05 2021-08-05 基于python实现可视化集中维护和更新测试应用程序的方法

Country Status (1)

Country Link
CN (1) CN113535208A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115221146A (zh) * 2022-09-20 2022-10-21 云账户技术(天津)有限公司 一种删除Redis中key值的方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016141411A1 (en) * 2015-03-10 2016-09-15 Auspace Pty Ltd Improved service oriented system architecture for asset management networks
CN106844137A (zh) * 2016-12-08 2017-06-13 腾讯科技(深圳)有限公司 服务器的监控方法和装置
CN108616384A (zh) * 2018-03-26 2018-10-02 山东昭元信息科技有限公司 一种集中式的服务管理部署工具及方法
CN109814901A (zh) * 2018-12-29 2019-05-28 中兴智能交通股份有限公司 一种可以实现自动化部署应用的运维方法
CN110430082A (zh) * 2019-08-15 2019-11-08 浙江万朋教育科技股份有限公司 一种管理测试服务器与应用程序的方法
CN113014445A (zh) * 2021-02-08 2021-06-22 中国工商银行股份有限公司 用于服务器的运维方法、装置、平台及电子设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016141411A1 (en) * 2015-03-10 2016-09-15 Auspace Pty Ltd Improved service oriented system architecture for asset management networks
CN106844137A (zh) * 2016-12-08 2017-06-13 腾讯科技(深圳)有限公司 服务器的监控方法和装置
CN108616384A (zh) * 2018-03-26 2018-10-02 山东昭元信息科技有限公司 一种集中式的服务管理部署工具及方法
CN109814901A (zh) * 2018-12-29 2019-05-28 中兴智能交通股份有限公司 一种可以实现自动化部署应用的运维方法
CN110430082A (zh) * 2019-08-15 2019-11-08 浙江万朋教育科技股份有限公司 一种管理测试服务器与应用程序的方法
CN113014445A (zh) * 2021-02-08 2021-06-22 中国工商银行股份有限公司 用于服务器的运维方法、装置、平台及电子设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115221146A (zh) * 2022-09-20 2022-10-21 云账户技术(天津)有限公司 一种删除Redis中key值的方法及装置
CN115221146B (zh) * 2022-09-20 2022-12-27 云账户技术(天津)有限公司 一种删除Redis中key值的方法及装置

Similar Documents

Publication Publication Date Title
US8930010B2 (en) Intelligent assembly system and method of use
CN101135989B (zh) 一种Web应用系统的自动化测试的方法和装置
US20020198750A1 (en) Risk management application and method
US20080010227A1 (en) Application integration system and method using intelligent agents for integrating information access over extended networks
US20050144151A1 (en) System and method for decision analysis and resolution
US9081478B2 (en) Unified process management software and method
CN110188543A (zh) 白名单库、白名单程序库更新方法及工控系统
CN111007809A (zh) 在过程工厂内的现场设备的批量调试
CN113325810B (zh) 一种自动化数据交互方法
CN113535208A (zh) 基于python实现可视化集中维护和更新测试应用程序的方法
CN108616391A (zh) 服务器端进行设备固件升级的方法及系统
DE10112751B4 (de) Gerät und Verfahren zum Einstellen einer Umgebung eines Client in einem Client/Server-System und Programm-Aufzeichnungsmedium dafür
CN100407191C (zh) 过程控制系统的自动建模方法及相应的过程控制系统
US20030135496A1 (en) Management program, method and apparatus for business process definition
US8560637B2 (en) Web application system, web server, method and computer product for displaying web application message
CN111367725A (zh) 异步任务的在线监控方法、前端控制系统和业务响应平台
US20090241116A1 (en) Systems and Methods for Automating Tasks Associated with an Application Packaging Job
JP5653112B2 (ja) コマンド実行結果の異常検知システム及び方法
DE102020002200A1 (de) Aktualisierungssystem
JPH11306254A (ja) データ処理作業の進行管理システム
CN113031523A (zh) 数控机台联机系统及其管理方法
JP7036603B2 (ja) 運用管理システム
US6944866B1 (en) System and method for coordinating operator efforts using action diaries
US7421662B1 (en) Automating interaction with a host computing device
JP2001265580A (ja) レビュー支援システム及びそれに用いるレビュー支援方法

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