CN109141588B - 燃气表自动模拟测试系统 - Google Patents

燃气表自动模拟测试系统 Download PDF

Info

Publication number
CN109141588B
CN109141588B CN201811030421.3A CN201811030421A CN109141588B CN 109141588 B CN109141588 B CN 109141588B CN 201811030421 A CN201811030421 A CN 201811030421A CN 109141588 B CN109141588 B CN 109141588B
Authority
CN
China
Prior art keywords
test
gas meter
circuit board
accumulator
client
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
CN201811030421.3A
Other languages
English (en)
Other versions
CN109141588A (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 FIORENTINI GAS EQUIPMENT CO Ltd
Original Assignee
SHANGHAI FIORENTINI GAS EQUIPMENT 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 SHANGHAI FIORENTINI GAS EQUIPMENT CO Ltd filed Critical SHANGHAI FIORENTINI GAS EQUIPMENT CO Ltd
Priority to CN201811030421.3A priority Critical patent/CN109141588B/zh
Publication of CN109141588A publication Critical patent/CN109141588A/zh
Application granted granted Critical
Publication of CN109141588B publication Critical patent/CN109141588B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01FMEASURING VOLUME, VOLUME FLOW, MASS FLOW OR LIQUID LEVEL; METERING BY VOLUME
    • G01F25/00Testing or calibration of apparatus for measuring volume, volume flow or liquid level or for metering by volume
    • G01F25/10Testing or calibration of apparatus for measuring volume, volume flow or liquid level or for metering by volume of flowmeters
    • G01F25/15Testing or calibration of apparatus for measuring volume, volume flow or liquid level or for metering by volume of flowmeters specially adapted for gas meters

Landscapes

  • Physics & Mathematics (AREA)
  • Fluid Mechanics (AREA)
  • General Physics & Mathematics (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

一种燃气表自动模拟测试系统,包括测试机箱、PC客户机和服务器,测试机箱内安装有至少一个测试单元,测试单元包括电源、待测燃气表电路板、继电器、传感器、步进电机、阀门、累加器,待测燃气表电路板连接阀门和累加器,阀门连接传感器,累加器连接步进电机,PC客户机通过通信接口连接测试机箱中测试单元的待测燃气表电路板,PC客户机将燃气表的代码固件下载至待测燃气表电路板后,通过自动测试脚本进行燃气表运行代码的模拟测试,服务器用于燃气表运行代码的保存托管。

Description

燃气表自动模拟测试系统
技术领域
本发明属于能源技术领域,特别涉及一种燃气表自动测试系统。
背景技术
在燃气表的开发、测试过程中,现有的方法是通过手工测试,耗费大量人工手动执行测试项来验证功能的正确性和稳定性。此方法效率低,耗时长且失误率较大。即使有的测试装置实现了自动化测试,但由于未实现全自动化,没有系统的管理平台和机制,部分仍需要人工操作,其实仍未彻底解决传统手工测试的低效问题。
发明内容
本发明提供一种燃气表自动模拟测试系统,用于解决现有的燃气表运行代码只能靠人工进行测试的困难。
本发明的实施例之一,一种燃气表自动模拟测试系统,包括测试机箱、PC客户机和服务器,测试机箱内安装有至少一个测试单元,其中,
测试单元包括电源、待测燃气表电路板、继电器、传感器、步进电机、阀门、累加器,待测燃气表电路板连接阀门和累加器,阀门连接传感器,累加器连接步进电机,PC客户机通过通信接口连接测试机箱中测试单元的待测燃气表电路板。同时,PC客户机将燃气表的代码固件下载至待测燃气表电路板后,通过自动测试脚本进行燃气表运行代码的模拟测试,服务器用于燃气表运行代码的保存托管。
本发明的实施例之一,所述PC客户机采用Jenkins构建平台,自动编译触发Python测试框架,用于测试的燃气表运行代码被jenkins构建后提交、自动触发后,此PC客户机自动下载测试用运行代码,烧录固件到燃气表电路板,自动化测试脚本将自动运行本次测试过程。
本发明的燃气表自动化测试系统测试实现了持续集成全自动化测试,利用电路控制模拟按钮操作,驱动步进电机来带动齿轮模拟累加器用量,按照固件通讯协议使用开发语言Python编写测试用例覆盖需求,应用Jenkins构建平台,自动编译触发Python测试框架,来测试智能燃气表。从检出代码、编译构建、运行测试、结果记录、测试统计等都是自动完成的,全程无需人工干预,实现了全自动无人值守,减少重复过程以节省时间、费用和工作量;解决了手工测试的低效率和失误率,及时高效,提高了测试过程的正确性。
附图说明
通过参考附图阅读下文的详细描述,本发明示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本发明的若干实施方式,其中:
图1本发明实施例中燃气表自动模拟测试系统组成示意图。
具体实施方式
根据一个或者实施例,一种燃气表自动模拟测试系统,包括测试机箱、PC客户机和服务器,测试机箱内安装有至少一个测试单元。其中,测试单元包括电源、待测燃气表电路板、继电器、传感器、步进电机、阀门、累加器,待测燃气表电路板连接阀门和累加器,阀门连接传感器,累加器连接步进电机。PC客户机通过通信接口连接测试机箱中测试单元的待测燃气表电路板。同时,PC客户机将燃气表的代码固件下载至待测燃气表电路板后,通过自动测试脚本进行燃气表运行代码的模拟测试,服务器用于燃气表运行代码的保存托管。
测试机箱具有可移动外框架,可自由安装多个可抽拉测试箱,每个可抽拉测试箱就是一个测试单元。单个测试箱内含有燃气表电路板及阀门、累加器等燃气表其他配件,以及为测试设备供电的24V电源,和可以通过电路开闭操作模拟按键操作的继电器等。
为测试箱内设备提供24V电源,测试箱内包括继电器、电机等。继电器以及继电器控制模块的输出端连接到燃气表按钮,通过RS232串口连接到PC客户机,PC客户机中测试脚本程序发送相应命令来控制打开和闭合,模拟按钮的按动。
步进电机同样通过RS232串口连接到PC客户机,PC客户机中测试脚本程序控制电机转动时间和速度,电机下齿轮转动后带动累加器下齿轮,模拟了累加器的转动。
PC客户机内装测试脚本环境、各类设备驱动。持续集成平台客户端环境。当jenkins构建被代码提交人员提交代码自动触发后,此PC客户机将自动下载,烧录固件版本到燃气表电路板,后自动化测试脚本将自动运行本次测试过程。
服务器则用于代码托管,运行软件服务端。
如图1所示,燃气表自动模拟测试系统组成示意图。该测试系统还包括集电器,集电器同时连接PC客户机、待测燃气表电路板、以及电机和继电器,用于将各种通信接口和信号电平进行转换,使得PC客户机和待测燃气表电路板协同完成代码测试任务。
根据一个或者实施例,本发明的自动化测试系统软件功能包括:
1.使用开源Jenkins持续集成平台,集成代码提交与下载烧录、集成测试环境与测试过程。
2.测试代码脚本,设计与编写测试用例,用串口向设备电子板发送命令,以对产品功能及性能做验证测试。
3.测试完成后,自动生成测试报告,自动及时发送给相应人员,同时将测试结果标识给Gerrit,以确定本次固件代码是否合并到主分支。
采用本实施例的系统,开发人员可以及时收到测试反馈并进行改进,不必等到开发周期后期才寻找和修复缺陷。对于开发人员的每一次代码提交,都自动地把Repository中所有代码Check out到一个空目录,并且自动运行所有Test Case。如果成功则接受这次提交,否则告诉所有人,这是一个失败的Revision。这样可以尽早暴露问题,把握开发节奏。具体来说,本发明系统的软件测试环境:
1、可以模拟人工测试,减少重复机械的测试工作量,大量用于回归测试;
2、可以提高测试精度,例如进行大数据量的正确性校验;
3、进行人工难以执行的测试,例如单元测试、统计测试覆盖率等等;
4、用于模拟多线程的并发;
5、更好地利用资源。将繁琐的任务自动化,可以提高准确性和测试人员的积极性,将测试技术人员解脱出来投入更多精力设计更好的测试用例。有些测试不适合于自动测试,仅适合于手工测试,将可自动测试的测试自动化后,可以让测试人员专注于手工测试部分,提高手工测试的效率。
6、测试具有一致性和可重复性。由于测试是自动执行的,每次测试的结果和执行的内容的一致性是可以得到保障的,从而达到测试的可重复的效果。
7、测试的复用性。由于自动测试通常采用脚本技术,领测认为这样就有可能只需要做少量的甚至不做修改,实现在不同的测试过程中使用相同的用例。
8、增加产品信任度。由于测试是自动执行的,所以不存在执行过程中的疏忽和错误,完全取决于测试的设计质量。一旦软件通过了强有力的自动测试后,产品的信任度自然会增加。
根据一个或者实施例,本发明的模拟测试系统在jenkins中为各个测试箱对应连接的主机创建构建任务,在此构建中定义了固件代码获取分支地址,测试脚本触发条件,测试执行过程,测试结果状态及greeit标识标准。具体方法包括:
1.固件代码开发人员,提交自己的代码到代码托管平台。Jenkins得到有提交代码的触发,将响应构建任务。
2.每个测试箱连接一台PC客户机,此PC客户机中执行jenkins构建任务,自动被触发下载编译烧录固件程序到燃气表电路板,测试开发人员编写设计测试脚本代码,jenkins构建任务自动执行测试脚本。
3.测试箱中通过对应PC客户机发送串口命令,来控制操作。该步骤进一步的还包括有:
3.1如通过发送继电器相关命令,来控制继电器开关路01路,而继电器与电路板按钮相连,以此来模拟按钮开关操作。
3.2通过电机的连接的串口,发送电机命令,让电机转动以带动齿轮,就带动了累加器转动,模拟了用户用气量。
3.3通过控制继电器02路开关和闭合,来触发异常开盖按钮,产生异常开盖事件。
3.4阀门开关动作,会触发传感器,通过传感器信号来验证阀门开关。
4.执行完定义的所有测试脚本后,自动生成测试报告,将测试结果以图表的形式直观的发送到相关人员邮箱中。
5.同时greeit将收到测试结果标识,若标识为通过,将自动合并代码到主分支,如果测试结果标识为失败,将不合并分支,并在greeit后台中红色标识。待代码提交人员修复。再提交循环上述过程。
根据一个或者实施例,在前述实施例中的测试方法还包括:
测试PC机与待测试燃气表通过usb转TTL连接,测试代码绑定控制串口,基于内部定义的通讯协议内容,发送相关命令到待测燃气表电路板接口。根据各个测试功能的不同,设计不同的测试用例来覆盖测试需求,以达到及时发现功能设计方面的缺陷。根据燃气表使用环境及场景,测试性能参数、并发压力等。
其中累加器测试用例代码处理逻辑如下:
1)步进电机串口连接到集电器,待测燃气表电路板接口到集电器;
2)在测试脚本代码中,打开电路板串口,基于自定义协议读取累加器流量初值,并解析计算为可读值;
3)打开绑定电机串口,根据电机定义的通讯协议,定义电机转动方向、转动速度、转动时长,电机驱动后带动齿轮转动,模拟累加器计数。关闭所有串口;
4)测试脚本中再次读取累加器值并解析计算为可读,将前后2次读取的累加器流量值进行比较计算,判断其差值是否在规定范围内的,如果在合理范围内,则置测试结果为通过,否则测试结果为失败;
5)将测试结果值存入测试报告数据中。
其中燃气表用气量上报测试用例代码处理逻辑如下:
1)根据继电器自定义协议,控制继电器2路,持续吸合2秒,断开,模拟煤气表上按钮上报操作;
2)停留等待1分钟;
3)使用python中webdriver技术自动登录后web后台,抓取本表具当前显示的煤气使用总量及当前上报抄表时间等数据入本地。
4)获取本地当前上报时间
5)获取本地当前累加器读数
6)将本地获取数据与后台抓取到的数据比较计算,其差值在规定范围内的则测试结果为通过,否则为失败。
6)将测试结果值存入测试报告数据中。
其中燃气压力测试逻辑为:
1)在压力测试脚本代码中定义单个测试用例执行次数,100及以上,
2)建立多线程,定义本次运行的测试脚本
3)建立邮箱连接,定义登录用户名密码,邮件主题,收件人
3)选择本次运行的燃气表测试箱
4)执行多线程,运行测试脚本
5)测试结果写入,测试报告生成
6)将测试报告内容写入邮箱正文并发送。
在本实施例的测试系统中,应用了软件测试中常用的测试方法如边界值分析法,等价类划分法,错误推测法判定表法等设计等测试方法。以尽可能覆盖功能需求,提高测试效率。
值得说明的是,虽然前述内容已经参考若干具体实施方式描述了本发明创造的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。

Claims (3)

1.一种燃气表自动模拟测试系统,包括测试机箱、PC客户机和服务器,测试机箱内安装有至少一个测试单元,其中,
测试单元包括电源、待测燃气表电路板、继电器、传感器、步进电机、阀门、累加器,待测燃气表电路板连接阀门和累加器,阀门连接传感器,累加器连接步进电机,
PC客户机通过通信接口连接测试机箱中测试单元的待测燃气表电路板,同时,
PC客户机将燃气表的代码固件下载至待测燃气表电路板后,通过自动测试脚本进行燃气表运行代码的模拟测试,
服务器用于燃气表运行代码的保存托管,
所述PC客户机采用Jenkins构建平台,自动编译触发Python测试框架,用于测试的燃气表运行代码被jenkins构建后提交、自动触发后,此PC客户机自动下载测试用运行代码,烧录固件到燃气表电路板,自动化测试脚本将自动运行本次测试过程,
测试机箱中具有多个测试单元,燃气表自动模拟测试系统在jenkins中为各个测试单元中的待测燃气表电路板构建测试任务,定义每个待测燃气表电路板固件代码获取分支地址、测试脚本触发条件、测试执行过程、测试结果状态及greeit标识标准,具体步骤包括:
S101,提交用于测试的运行代码至作为代码托管平台的服务器,Jenkins得到提交代码的触发,响应测试任务;
S102,每个测试单元连接一台PC客户机,该PC客户机中执行jenkins构建的测试任务,自动被触发下载编译、烧录固件程序到待测燃气表电路板,jenkins构建任务自动执行测试脚本;
S103,测试单元接收对应的PC客户机通过串口发送的测试命令,进行相应的测试操作;
S104,PC客户机执行完定义的所有测试脚本后,自动生成测试报告;
S105,greeit收到测试结果标识,若标识为通过,将自动合并代码到主分支,如果测试结果标识为失败,将不合并分支,并在greeit后台中以红色标识。
2.根据权利要求1所述的一种燃气表自动模拟测试系统,其特征在于,所述步骤S103中发送的测试命令包括:
第一继电器控制命令,用于模拟按钮开关操作;
电机控制命令,驱动步进电机带动累加器转动,用于模拟用气量;
第二控制继电器控制命令,用于模拟燃气表异常开盖事件;
阀门开关控制命令,用于触发传感器,通过传感器信号来验证阀门开关。
3.根据权利要求2所述的一种燃气表自动模拟测试系统,其特征在于,用累加器模拟用气量的方法包括:
在测试脚本中,打开待测燃气表电路板的串口,读取累加器初值;
打开绑定步进电机的串口,设定步进电机转动方向、转动速度、转动时长,步进电机带动齿轮转动,由齿轮齿数模拟累加器计数;
在测试脚本中再次读取累加器值,将前后2次读取的累加器数值进行比较计算,判断其差值是否在规定的误差范围内的,如果误差在合理范围内,则置测试结果为通过,否则测试结果为失败。
CN201811030421.3A 2018-09-05 2018-09-05 燃气表自动模拟测试系统 Active CN109141588B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811030421.3A CN109141588B (zh) 2018-09-05 2018-09-05 燃气表自动模拟测试系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811030421.3A CN109141588B (zh) 2018-09-05 2018-09-05 燃气表自动模拟测试系统

Publications (2)

Publication Number Publication Date
CN109141588A CN109141588A (zh) 2019-01-04
CN109141588B true CN109141588B (zh) 2020-06-16

Family

ID=64826939

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811030421.3A Active CN109141588B (zh) 2018-09-05 2018-09-05 燃气表自动模拟测试系统

Country Status (1)

Country Link
CN (1) CN109141588B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113138886A (zh) * 2021-04-23 2021-07-20 摩拜(北京)信息技术有限公司 一种测试嵌入式设备的方法、装置及测试设备
CN113933627A (zh) * 2021-10-08 2022-01-14 网易有道信息技术(北京)有限公司 用于自动测试验证电子产品的方法及其相关产品
CN115047926A (zh) * 2022-05-30 2022-09-13 上海飞奥燃气设备有限公司 一种电气边缘环境可靠性的自动化测试系统及方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103884405A (zh) * 2014-04-15 2014-06-25 湖南威铭能源科技有限公司 基于液晶屏显示的燃气表校表方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002259509A (ja) * 2001-03-05 2002-09-13 Toyo Keiki Co Ltd オンラインメータ監視方法
CN103412816B (zh) * 2013-08-12 2016-10-19 浪潮电子信息产业股份有限公司 一种基于linux的持续集成测试平台搭建方法
CN105241529A (zh) * 2015-11-05 2016-01-13 江西金程智能科技有限公司 燃气表模块全自动测试系统
CN106841984A (zh) * 2017-01-17 2017-06-13 新智数字科技有限公司 一种蓝牙智能卡的测试方法及装置
CN107728601B (zh) * 2017-09-18 2019-04-02 杭州先锋电子技术股份有限公司 一种对智能燃气表控制器进行集成测试的系统
CN107884020A (zh) * 2017-10-23 2018-04-06 苏州燃气集团有限责任公司 一种应用NB‑IoT架构的低功耗计量表及其系统

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103884405A (zh) * 2014-04-15 2014-06-25 湖南威铭能源科技有限公司 基于液晶屏显示的燃气表校表方法

Also Published As

Publication number Publication date
CN109141588A (zh) 2019-01-04

Similar Documents

Publication Publication Date Title
CN109406916B (zh) 一种用于半导体存储器老化测试装置的测试平台
CN109141588B (zh) 燃气表自动模拟测试系统
CN109324601A (zh) 基于硬件在环的机器人控制器或控制系统的测试平台
CN107562969B (zh) 航空发动机控制系统软件的集成方法和装置
CN102156784B (zh) 验证环境图形化的芯片验证方法与装置
CN105808432B (zh) 轨道交通牵引传动控制单元软件自动化测试系统及方法
CN109472061B (zh) 一种可重用的仿真验证平台及仿真验证方法
CN107463362A (zh) 基于多个Jenkins的持续部署的方法和系统
CN100451986C (zh) 网络芯片的自动化验证方法
CN112817872A (zh) 开发测试系统及方法
Gao Component testability and component testing challenges
CN105224430A (zh) 一种测试系统及测试方法
EP1236108A1 (en) A system and method for testing and validating devices having an embedded operating system
CN112630565A (zh) 智能变电站继电保护自动测试分析系统及其测试分析方法
CN107102949A (zh) 应用程序离线测试方法及工具
CN114385480A (zh) 一种用于车辆fota功能自动验证的硬件在环测试系统
CN207541496U (zh) 一种基于车身域控制器的自动诊断测试装置
CN111767232B (zh) 一种装备测试程序集验证系统
Han et al. Automated warship software testing system based on loadrunner automation API
CN109932588A (zh) 一种航电设备验证测试引擎
CN103017815A (zh) 一种可视化的通用测试系统及测试方法
CN209513922U (zh) 一种汽车钟表老化检测装置
CN111596203A (zh) 一种芯片测试装置、平台及方法
CN115047926A (zh) 一种电气边缘环境可靠性的自动化测试系统及方法
US11914503B2 (en) Automated performance measurement over software lifecycle

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
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Peng Xuezhi

Inventor after: Wang Binbin

Inventor after: Liu Jinliang

Inventor after: Hu Mang

Inventor after: Lu Conghang

Inventor after: Di Peng

Inventor before: Peng Xueji

Inventor before: Wang Binbin

Inventor before: Liu Jinliang

Inventor before: Hu Mang

Inventor before: Lu Conghang

Inventor before: Di Peng