国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Python的超聲設備可靠性自動化測試系統(tǒng)

2020-06-08 10:26鄭天程建政
電腦知識與技術 2020年10期
關鍵詞:自動化測試可靠性

鄭天 程建政

摘要:近年來我國醫(yī)療科技水平與日俱增,而超聲醫(yī)療設備由于迭代慢,測試自動化普及程度不高,主要依賴手工,可靠性測試作為電子設備出廠測試前十分重要的環(huán)節(jié)必須充分落實。而Python作為當今最為流行的編程語言之一,能夠模擬很多的手工操作再配合部分小硬件就可以實現(xiàn)大批量的自動化測試。該文中所介紹的測試系統(tǒng)依托軟件與硬件結(jié)合,實現(xiàn)覆蓋設備全部的日常操作的批量自動化測試,自動生成測試結(jié)果報告,極大地提升了效率并減少了人力投入,且在實際試用有效且復用性高,具有很高的實用價值。

關鍵詞:Python;可靠性;自動化測試;軟件與硬件結(jié)合

中圖分類號:TP399 文獻標識碼:A

文章編號:1009-3044(2020)10-0065-02

1背景與概述

近年來,我國科技和經(jīng)濟高速發(fā)展,越來越多的高新產(chǎn)業(yè)誕生并走向世界。以往我國醫(yī)療設備主要依賴進口,現(xiàn)如今越來越多的民族醫(yī)療設備企業(yè)公司開始自主研發(fā),多個品牌已經(jīng)走出國門,出口歐洲。而設備的測試作為研發(fā)過程中的關鍵一環(huán)直接決定了產(chǎn)品的質(zhì)量。

1.1Python概述

Python是多平臺的計算機程序設計語言。是一種面向?qū)ο蟮膭討B(tài)類型的解釋型語言。最初就是被設計來寫自動化shell腳本的,隨著版本的迭代,逐漸被開始使用于大型的、獨立的項目開發(fā),如Facebook公司在過去的幾年里幾乎從無人問津到成為該公司主流語言,如Instagramf美國最大的圖片分享社交平臺)全部使用Python開發(fā)。

Python目前主要應用于以下領域:AI、教育、桌面開發(fā)、軟件開發(fā)、web前段開發(fā)、后端開發(fā)等,以其非常好的兼容性和可擴展性市場占有率逐年上升,為當下最熱語言之一。

Python的主要定位是“優(yōu)雅”“明確”“簡單”,所以Python的程序十分簡潔,對初學者來說,不但很容易人門而且很快能深入下去。它的開發(fā)效率非常高,有著很強的第三方庫,可以說你想實現(xiàn)的任何功能,其官方的庫里都有相應的模塊來支持,能直接通過內(nèi)置模塊pip進行下載后調(diào)用,再在該基礎上進行二次的開發(fā)和封裝,這可以讓開發(fā)的周期大大降低,避免做無用功。

本文中使用的主要腳本語言也是Python,用于控制腳本、串口通訊、圖像處理等。

1.2超聲醫(yī)療設備概述

根據(jù)對目前超聲設備的市場調(diào)查,國產(chǎn)的超聲設備均基于Linux來設計制造,包括彩超、血管內(nèi)超聲成像等;主要都由探頭和計算機組成。

Linux是基于POSIX和Unix的多用戶、多任務、支持多線程和多CPU的目前最主流的免費試用和自由傳播的類Unix系統(tǒng),支持32位和64位的硬件、繼承了以網(wǎng)絡為核心的設計思想,是一個性能穩(wěn)定的多用戶網(wǎng)絡操作系統(tǒng)。

目前很多的公司,包括醫(yī)療、生產(chǎn)、物聯(lián)網(wǎng)等很多的設備都采用該系統(tǒng),經(jīng)過深度的定制和再開發(fā)之后植入設計好的設備中。對于企業(yè)而言,相比于Windows,Linux的完全開源成本低、系統(tǒng)性能穩(wěn)定,其核心防火墻組件性能高效、配置簡單。這些特點使得Linux成為當前中國高新產(chǎn)業(yè)理想的開發(fā)平臺。

2實現(xiàn)

本文采用的方案為“主控測試服務器+若干待測試設備”組成,所有設備和服務器需要在同一局域網(wǎng)下以便主控服務器與待測設備連接。

2.1開機流程

Linux的設備開機過程和Windows的計算機類似,如圖l所示。

2.2自動化實現(xiàn)模擬手動按下電源鍵實現(xiàn)

2.2.1解決方案

通常電源鍵開關采用按壓式的點觸開關,則可以使用USB繼電器,將開關兩頭用導線引至繼電器從而使用腳本控制繼電器開合從而達到模擬手動按開關的效果。

本文采用LCUS-1型USB繼電器開關:

將開關信號引人繼電器口用串口控制開合,選擇波特率為9600,以十六進制(HEX)形式發(fā)送A0 01 01 A2打開繼電器,發(fā)送A0 01 00 A1關閉繼電器。

2.2.2串口寫入腳本

在上節(jié)中已經(jīng)有了開合繼電器的方法,接下來就是將繼電器“一合一開”封裝成一個腳本文件。通過Pvthon的第三方庫serial即可實現(xiàn)往USB串口中寫入這兩個開關指令,合開間隔0.1秒模擬手按開關電源。

2.3自動化實現(xiàn)開機狀態(tài)確認

通常開發(fā)完成的Linux設備會運行一個主程序MainApp隋些設備可能還有其他的后臺程序,如:BackApp等),此時我們需要確認機器是否正常開機。

首先可以通過主控服務器遠程ssh連接待測設備輸入“ps-ef I grep MainApp”指令來判斷MainApp是否已經(jīng)正常啟動,如果有返回值則說明已經(jīng)正常啟動,反之則沒有,此時停止該臺設備的后續(xù)操作保留現(xiàn)場,留置開發(fā)人員查看,并將結(jié)果寫入日志。

然后通過Linux截圖工具scrot截圖取回并與基準圖片進行對比,來確認uI界面是否正常啟動。此過程采用PIL庫完成,部分代碼如下:

如果對比結(jié)果異常則停止該臺設備的后續(xù)操作保留現(xiàn)場,留置開發(fā)人員查看,并將結(jié)果寫入日志。

2.4自動化實現(xiàn)正常開機后隨機操作測試并關機

通常成熟的設備會已經(jīng)錄制好冒煙測試腳本并內(nèi)置測試工具,在確認設備成功開機后,可通過Python調(diào)用該工具并隨機抽取腳本來執(zhí)行,并在執(zhí)行完后立刻執(zhí)行關機操作以模擬設備在日常使用中的開關機操作,為保障隨機操作后實現(xiàn)關機操作,模擬真實用戶使用場景,將原冒煙測試腳本庫中隨機抽取一個腳本,再執(zhí)行該腳本前隨機行數(shù)。

如果設備沒有開發(fā)好內(nèi)置的測試工具,則需使用Python第三方庫pyautogui自行編寫一個簡單腳本來代替,該庫可以直接模擬鼠標和鍵盤的輸入,代碼舉例如下:

關機的方式可能根據(jù)設備不同有所差異,但利用前面的模擬按電源鍵腳本和autogui均可完成設備的模擬手動關機操作。

2.5自動化實現(xiàn)關機狀態(tài)確認

確認設備是否已經(jīng)關機的方法不難,例如用主控服務器ping待測設備,如果設備正常關機了,則不能夠ping成功;如果能夠持續(xù)ping通就說明設備沒有正常關機成功,此時停止后續(xù)測試操作保留現(xiàn)場,并寫入日志。

2.6日志

為保障測試結(jié)果的可靠性,日志是必不可少的,決定測試是否通過的直觀指標,也只能是通過一定時間或次數(shù)的測試。

2.6.1日志結(jié)構

日志的生成直接調(diào)用Python的文件操作接口生成TXT格式文檔即可,每一行作為單次執(zhí)行記錄,每行中條目以制表符分割即可。

日志中必要的項目:時間、開機是否完成、隨機選取的測試腳本名稱及行數(shù)、關機是否成功等。

2.7報告

報告的生成以日志為依據(jù),統(tǒng)計測試的時間、次數(shù)、測試通過率、缺陷個數(shù)及分布。

3每日自動化任務

為了節(jié)省設備資源,自動化任務通常放在晚上進行,首先將當日最新的軟件包打包完成以保證執(zhí)行自動化測試任務的設備使用的是最新版本,隨后啟動執(zhí)行任務,自動化測試時間為整晚,在早上工作人員到崗前完成報告生成。

4結(jié)束語

改革開放近40年,隨著經(jīng)濟社會的快速發(fā)展,尤其是科學技術的進步,我國醫(yī)療器械行業(yè)取得長足進步。我國的醫(yī)療器械生產(chǎn)企業(yè)從改革開放之初的數(shù)百家,增加到2016年的近15,343家;醫(yī)療器械行業(yè)的總產(chǎn)值從改革開放之初的微不足道,增加到2016年的近5,000億元。今天,我國已經(jīng)成為全世界醫(yī)療器械的主要生產(chǎn)國和主要消費國之一。本文從實際出發(fā),完成了一整套基于Linux的醫(yī)療設備的自動化測試方案設計,但還可從圖像的識別、腳本的全面性上繼續(xù)改進,后續(xù)將會持續(xù)更新爭取提高更多的研發(fā)效率。

猜你喜歡
自動化測試可靠性
可靠性管理體系創(chuàng)建與實踐
電子制作(2017年2期)2017-05-17
淺談空調(diào)控制器自動化測試
基于可靠性跟蹤的薄弱環(huán)節(jié)辨識方法在省級電網(wǎng)可靠性改善中的應用研究
可靠性比一次采購成本更重要