如何測試Android醫(yī)療設(shè)備
近三年來,Android作為移動設(shè)備平臺取得了重大進(jìn)展。實(shí)事上,在美國目前有一半以上的智能手機(jī)采用Android操作系統(tǒng),Android操作系統(tǒng)是美國智能手機(jī)市場的老大。Android操作系統(tǒng)由Google領(lǐng)導(dǎo)的開放手持設(shè)備聯(lián)盟開發(fā)。Android已被大多數(shù)手機(jī)運(yùn)營商和眾多手機(jī)制造商采用,其中包括摩托羅拉、索尼愛立信、三星、LG和HTC。
與此同時,對于很多OEM、運(yùn)營商和設(shè)備制造商而言,要推出基于Android平臺的設(shè)備,仍是一個有待克服的挑戰(zhàn)。Android平臺的版本繁多、具有很強(qiáng)的靈活性和可配置性(即便是終端用戶也可以對其進(jìn)行靈活配置),這些因素使得Android成為一個難設(shè)計(jì)、測試和推出的平臺。
如何測試Android設(shè)備
要部署一個完整而高效的設(shè)備測試項(xiàng)目,測試團(tuán)隊(duì)需要開發(fā)必須的測試用例,在每個測試用例中,必須對待測設(shè)備的正確行為進(jìn)行描述。如果所開發(fā)的測試用例有錯誤,要求缺失或不完整,從而導(dǎo)致測試過程中出現(xiàn)錯誤,那么測試項(xiàng)目將不能成功地實(shí)現(xiàn)其目標(biāo)---鎖定被測設(shè)備存在的缺陷。
編寫相關(guān)測試用例的第一步是收集設(shè)備在所有使用案例和使用場景下的全部預(yù)期行為,這些資料應(yīng)該早已存于技術(shù)和測試要求文檔之中。
技術(shù)和測試要求的制定是成功推出設(shè)備的重要步驟。對于基于Android平臺的設(shè)備而言更是如此,因?yàn)檫@些平臺很容易配置,設(shè)備OEM廠商在各自的Android設(shè)備中采用了一系列不同的外形參數(shù)、用戶界面和軟件配置。
若未能適當(dāng)、充分地挖掘和制定測試要求,那么測試用例就不能反映它原本應(yīng)該反映的設(shè)備的預(yù)期行為,而是基于被測試設(shè)備所展現(xiàn)的行為,這些行為就不一定準(zhǔn)確。
為了開發(fā)出足夠完善的技術(shù)和測試要求,設(shè)備發(fā)布小組必須參考圖1中所示的不同來源,來創(chuàng)建一組完善的要求。測試小組通常會跳過這一步,他們會直接跳到開發(fā)測試用例,然后進(jìn)行則試。依據(jù)以往經(jīng)驗(yàn)表明,如果執(zhí)行這一步,會使得所開發(fā)的測試用例更加精確、有效和快速,并且縮短開發(fā)時間。
圖1中的文字內(nèi)容:
Sources for Test Requirements document:測試要求文檔的來源
Design Team: Requirements including UI, preloaded Apps,settings etc.
設(shè)計(jì)小組:要求包括用戶界面、預(yù)先加載應(yīng)用、設(shè)置等
■Functional behavior for each use case and sub-use cases
■Android’s software configuration and settings
■UI and usability requirements
■每個使用案例和子使用案例的功能性行為
■Android的軟件的配置和設(shè)定
■UI和可用性要求
Google Android specificaitnos, tools and licensing requirements
Google Android規(guī)范、工具和授權(quán)要求
■system requirements for the specific version of Android on the device
■google provided tools to test Android platform and applications e.g. Android Monkey
■Google HW and licensing requirements
■設(shè)備所使用的具體版本的Android系統(tǒng)的系統(tǒng)要求
■Google提供用于測試Android平臺和應(yīng)用的工具,例如,Android Monkey
■Google 硬件和授權(quán)要求
如圖所示,測試要求應(yīng)考慮多個方面
如何開發(fā)Android測試計(jì)劃
鑒于Android平臺所具備的高級可配置性,要開發(fā)一個涵蓋設(shè)備各方面功能、完善且易于理解的測試計(jì)劃并不是一件容易的事。與其它大多數(shù)平臺不同,Google很頻繁地推出新版本的Android平臺,并且各個版本的Android系統(tǒng)對操作系統(tǒng)的不同層做了修改,特別是用戶界面層。與此同時,設(shè)備OEM廠商常常會自行設(shè)計(jì)專利的用戶界面或皮膚,以滿足某些特殊應(yīng)用,例如將Android用于醫(yī)療設(shè)備。因此,在測試Android設(shè)備的時候,測試計(jì)劃必須包括功能方面以及需要進(jìn)行則試的用戶界面和使用特性。對于由電池供電的設(shè)備,還必須對電池壽命和功耗進(jìn)行測試。圖2所示為Android測試計(jì)劃必須包括的幾類測試用例。
圖片中的文字內(nèi)容
Android test cases: Android測試用例
Functional test cases: 功能性測試用例
Hardware,setup and Accessories 硬件、安裝和附件
Applications 應(yīng)用
Google features(if any utilized) Google特性(如果有用到)
Stress and Compliance test caese(e.g.FDA) 應(yīng)力和兼容測試用例(如FDA)
Usability Test cases: 可用性測試用例
Battery life test cases: 電池壽命測試用例
2.圖中所示為必須包括的幾類測試用例
功能測試
功能測試用例直截了當(dāng),并且是根據(jù)特性要求定義和設(shè)計(jì)文檔來編寫的。技術(shù)設(shè)計(jì)要求和測試要求可被用作指導(dǎo)性文檔,指導(dǎo)定義和創(chuàng)建用于測試和檢驗(yàn)設(shè)備的性能、特性和功能的測試用例。
一直以來,Google每年都會推出幾款新版Android系統(tǒng),為了跟進(jìn)每個新版本的Android系統(tǒng),測試用例也必須要做更新。Google最近宣布,今后每年將僅推出一款新版Android系統(tǒng)。
可用性測試
用戶接口若設(shè)計(jì)恰當(dāng),可以大大地減少用戶出錯以及提高設(shè)備的可用性。在發(fā)布設(shè)備之前對其進(jìn)行可用性測試十分重要。為了測試設(shè)備的可用性,首先要開發(fā)測試用例。常見的方案是在任務(wù)層開發(fā)多個可用性測試用例,然后將每個任務(wù)層測試用例關(guān)聯(lián)到被測設(shè)備完成這一任務(wù)所需要的各個步驟。
可用性測試對于醫(yī)療設(shè)備而言極其重要,因?yàn)橛脩舫鲥e導(dǎo)致的后果可能是災(zāi)難性的,必須予以高度的重視。FDA將用戶出錯視作導(dǎo)致醫(yī)療設(shè)備風(fēng)險的一個極嚴(yán)重的源頭,有很多醫(yī)療設(shè)備被召回的例子都與用戶出錯和設(shè)計(jì)問題有關(guān)。為了將用戶出錯降低到最小程度,F(xiàn)DA還提供了具體的醫(yī)療設(shè)備設(shè)計(jì)和測試指導(dǎo)文件。其中部分指導(dǎo)文件和標(biāo)準(zhǔn)是針對可用性的,所有這些指導(dǎo)文件和標(biāo)準(zhǔn)都可在fda.gov網(wǎng)站上查到:
1.軟件驗(yàn)證的總體原則;行業(yè)和FDA人員至高指南
2.面向醫(yī)療設(shè)備制造商的設(shè)計(jì)控制指南,參考DA 21 CFR 820.30和ISO 9001的子條款4.4。
3.醫(yī)療設(shè)備中人為因素的介紹,作者:Dick Sawyer。
有關(guān)醫(yī)療設(shè)備可用性的國際標(biāo)準(zhǔn)和指導(dǎo)文件:
1.風(fēng)險管理:ISO14971
2.軟件生命周期:IEC 62304
3.人為因素:IEC 60601-1-6、ANSI/AAMI HE74、ANSI/AAMI HE74
4.基本安全:IEC-60601-1和IEC60601-1-x系列標(biāo)準(zhǔn)
怎樣對可用性進(jìn)行評估和測試?一個方案是,由試驗(yàn)測試人員進(jìn)行模擬使用。這樣可以深入了解設(shè)備在用戶手中的運(yùn)行情況;另一個可能更有效的方案是,利用工程學(xué)方法來測試可用性?;谛睦韺W(xué)和人為因素的科學(xué)研究成果,可用性專家形成了用于測試可用性的方法論。在這種方案中,通過度量設(shè)備在使用過程會影響用戶的指標(biāo)參數(shù),對設(shè)備的可用性進(jìn)行評估和測試,這些參數(shù)包括效率、可訪問性、可視性、反饋和響應(yīng),等等。
電池壽命的測試
若被測設(shè)備采用電池供電,則功耗和電池壽命是設(shè)備設(shè)計(jì)和測試的一個重要組成部分。時尚的、手持式電池供電設(shè)備擁有更大的屏幕、更快速的CPU和更快速的網(wǎng)絡(luò)連接,所有這些特性給電池帶來非常大的負(fù)擔(dān)。
對采用電池供電的移動設(shè)備而言,有兩個方案可用來測試功耗和電池的預(yù)期壽命。第一個方案是元器件級別的,即對每個子系統(tǒng)的功耗分別進(jìn)行測量。第二個方案,是把該設(shè)備當(dāng)做一個整體來測量其功耗。每個方案各自有其優(yōu)、缺點(diǎn)。
若使用元器件級別的方案,則被測設(shè)備的功耗為其每個元器件功耗測量值的總和。分別測量每個元器件的功耗與將設(shè)備作為一個整體測量其功耗相比,前者更加精確,并且結(jié)果可以重復(fù)再現(xiàn),但需要的工作量更大,所以成本更貴。此外,若分別測量各個元器件的功耗,還需要查找詳細(xì)的設(shè)備硬件文檔,以便找出每個元器件在PCB板上的供電點(diǎn)。
若采用設(shè)備級別的方案,則是通過測量電池連接匯總點(diǎn)來求得設(shè)備的功率。每個設(shè)備使用案例都會用到功耗測量。相比元器件級別的功耗測量,本方案更為簡單、更加靈活。但因?yàn)槭褂冒咐ǔS扇斯y試人員執(zhí)行,所以每次測得的結(jié)果可能各不相同,因此有必要進(jìn)行多數(shù)重復(fù)測試,以獲得穩(wěn)定的統(tǒng)計(jì)數(shù)據(jù)。
為了延長電池使用時間,大多數(shù)時尚的電池供電設(shè)備采用了多種電源管理方針,并且會在設(shè)備一段時間內(nèi)未被使用的情況改變設(shè)備的狀態(tài)。在這樣的情況下,為了得到設(shè)備的所有功耗行為和很好地評估電池的壽命,必須測試設(shè)備在不同狀態(tài)下的功耗,設(shè)備的狀態(tài)通常包括暫停狀態(tài)、空閑狀態(tài)和工作狀態(tài)。
執(zhí)行用戶案例
一旦寫好了測試用例,測試工程師們將執(zhí)行這些用戶案例,以便找出設(shè)備缺陷和決定設(shè)備和/或特性是否已經(jīng)能夠出貨。在執(zhí)行測試用例時,遵循以下幾條經(jīng)驗(yàn)法則,可以加快測試過程和降低出錯的可能:
•為了保證由不同測試人員執(zhí)行的測試用例的一致性,應(yīng)針對如何運(yùn)行測試和腳本,如何從結(jié)果中收集數(shù)據(jù)以及如何分析和處理結(jié)果對測試人員進(jìn)行培訓(xùn)。
•指示測試工程師們遵從測試計(jì)劃和要求以及測試用例中提供的詳細(xì)內(nèi)容。
•檢查每個測試的設(shè)置(如,測試前的準(zhǔn)備、輸入?yún)?shù)、被測設(shè)備的狀態(tài))以及在執(zhí)行過程中監(jiān)控測試
•檢驗(yàn)和捕捉每個測試用例或腳本的運(yùn)行時間。這樣可以方便計(jì)劃和制定下一步測試的運(yùn)行以及其它項(xiàng)目
•如果使用測試腳本,要用不同的數(shù)據(jù)進(jìn)行測試,不要用在運(yùn)行腳本過程中使用過的數(shù)據(jù)
•必需針對每個測試和校準(zhǔn)所得到的結(jié)果,給出準(zhǔn)確、清楚和有針對性的報告,并且要符合測試用例或校準(zhǔn)方法中的所有具體指令。為了做到這一點(diǎn),測試用例應(yīng)包括以下指導(dǎo)方針:遵從測試計(jì)劃,精確地記錄結(jié)果;記錄參數(shù)(輸入、日期、影響測試/腳本的項(xiàng)目);記錄測試執(zhí)行的運(yùn)行時間以及與預(yù)期運(yùn)行時間的差異;記錄失敗日志和關(guān)聯(lián)的響應(yīng)。
下表給出一個測試用例的例子,該測試用例用于測試一款A(yù)ndroid設(shè)備的觸摸屏數(shù)據(jù)輸入的精確度。
助聽器原理相關(guān)文章:助聽器原理
評論