• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于關(guān)鍵字驅(qū)動(dòng)的山腳樹(shù)煤礦輸電線路監(jiān)測(cè)平臺(tái)質(zhì)量保證

      2023-09-12 00:50:30吳江燕田祥貴劉發(fā)勇
      科學(xué)技術(shù)創(chuàng)新 2023年21期
      關(guān)鍵詞:關(guān)鍵字用例腳本

      胡 剛,吳江燕,田祥貴,劉發(fā)勇

      (1.盤(pán)江股份公司山腳樹(shù)煤礦,貴州 六盤(pán)水;2.貴州盤(pán)江煤電集團(tuán)技術(shù)研究院有限公司,貴州 貴陽(yáng))

      引言

      山腳樹(shù)煤礦位于貴州省六盤(pán)水市盤(pán)江斷江鎮(zhèn)中部,礦區(qū)歷史輸電線路巡檢工作主要包含接地電阻監(jiān)測(cè)、桿塔傾斜監(jiān)測(cè)、導(dǎo)線接頭測(cè)溫、樹(shù)木生長(zhǎng)監(jiān)測(cè)、桿塔周邊環(huán)境監(jiān)測(cè)等,目前巡檢運(yùn)維工作主要依靠人工現(xiàn)場(chǎng)巡檢,因此需要耗費(fèi)大量人力物力,而且無(wú)法獲取桿塔和線路的實(shí)時(shí)數(shù)據(jù)。為了解決目前輸電線路巡檢需要依靠人工巡檢的問(wèn)題,礦區(qū)新建輸電線路安裝在線監(jiān)測(cè)裝置30 套、輸電線路智能在線監(jiān)測(cè)系統(tǒng)1套。

      輸電線路運(yùn)行狀態(tài)的實(shí)時(shí)反饋、系統(tǒng)的高質(zhì)量運(yùn)行,對(duì)輸電線路智能在線監(jiān)測(cè)系統(tǒng)有較高質(zhì)量的要求[1]。軟件系統(tǒng)自身的特點(diǎn)決定了其從產(chǎn)品的設(shè)計(jì)到開(kāi)發(fā)都具有諸多的不確定性,而且也成為了制約軟件質(zhì)量的一個(gè)重要威脅,因此,在軟件測(cè)試期間對(duì)其中存在的不確定性進(jìn)行預(yù)判,合理分析其中可能存在的風(fēng)險(xiǎn),并制定相應(yīng)的風(fēng)險(xiǎn)管控措施,就成為了一項(xiàng)極為關(guān)鍵性的工作關(guān)系到軟件后期的穩(wěn)定運(yùn)行[2]。文本闡述了一種基于關(guān)鍵字驅(qū)動(dòng)的自動(dòng)化測(cè)試方法,用于保證輸電線路智能在線監(jiān)測(cè)系統(tǒng)的質(zhì)量。

      關(guān)鍵字驅(qū)動(dòng)的自動(dòng)化測(cè)試框架是對(duì)數(shù)據(jù)驅(qū)動(dòng)測(cè)試框架的擴(kuò)展,主要思想是:界面元素名與測(cè)試內(nèi)部對(duì)象名的分離;測(cè)試描述與具體實(shí)現(xiàn)細(xì)節(jié)的分離;腳本與數(shù)據(jù)的分離[3]。三個(gè)分離之間相互獨(dú)立,極大減少相互之間的影響,這種測(cè)試框架與傳統(tǒng)自動(dòng)化測(cè)試框架相比,實(shí)現(xiàn)了測(cè)試數(shù)據(jù)與測(cè)試邏輯的分離,極大的提高了測(cè)試腳本的復(fù)用性和維護(hù)性,使得軟件系統(tǒng)質(zhì)量得到保證的同時(shí)降低質(zhì)量保證所需要的人力物力,將測(cè)試人員從重復(fù)的測(cè)試勞動(dòng)中解放出來(lái),去關(guān)注更高效、精準(zhǔn)的測(cè)試。

      1 智能輸電線路監(jiān)測(cè)平臺(tái)

      1.1 系統(tǒng)建設(shè)背景

      山腳樹(shù)煤礦現(xiàn)有輸電線路也存在煤礦傳統(tǒng)架設(shè)輸電線路的難點(diǎn),為了解決這些難點(diǎn),新建輸電線路安裝了傳統(tǒng)輸電線路不具備的監(jiān)測(cè)裝置。礦區(qū)新建大營(yíng)輸電線路起始于大營(yíng)110KV 變電所,止于山腳樹(shù)35KV 變電所,采用鐵塔單回架設(shè),桿塔85 基。線路全線位于貴州省盤(pán)州市盤(pán)關(guān)鎮(zhèn)、柏果鎮(zhèn)、雞場(chǎng)坪鎮(zhèn)境內(nèi)。為搭建在線監(jiān)測(cè)系統(tǒng)整條線路安裝了在線監(jiān)測(cè)裝置30 套,其中包含設(shè)備有:輸電線路鐵塔智能在線監(jiān)測(cè)裝置、接地電阻監(jiān)測(cè)裝置、桿塔傾斜裝置等。通過(guò)現(xiàn)場(chǎng)桿塔監(jiān)測(cè)裝置收集到輸電線路實(shí)際運(yùn)行情況,通過(guò)無(wú)線傳輸將收集到的數(shù)據(jù)反饋到后臺(tái)在線監(jiān)測(cè)平臺(tái),通過(guò)平臺(tái)處理轉(zhuǎn)換后顯示到可視化界面,為輸電線路運(yùn)行提供實(shí)時(shí)的監(jiān)測(cè)數(shù)據(jù)。

      1.2 系統(tǒng)架構(gòu)設(shè)計(jì)

      輸電線路在線監(jiān)測(cè)系統(tǒng)由兩部分組成,分別是數(shù)據(jù)采集前端(太陽(yáng)能供電系統(tǒng)、數(shù)據(jù)采集系統(tǒng)、通訊系統(tǒng)等)和后端分析處理系統(tǒng)組成[4]。采集前端是高性能的數(shù)據(jù)采集主機(jī),其主供電源為太陽(yáng)能板。通過(guò)預(yù)先設(shè)定的程序定時(shí)對(duì)周圍的各種數(shù)據(jù),前臺(tái)系統(tǒng)對(duì)所收集數(shù)據(jù)進(jìn)行處理后,通過(guò)無(wú)線傳輸方式可以及時(shí)傳輸至后臺(tái)控制中心[5]。后端分析處理系統(tǒng)可以對(duì)所收集的相關(guān)數(shù)據(jù)進(jìn)行分析,根據(jù)分析結(jié)果有針對(duì)性地對(duì)相關(guān)桿塔采取防范措施,后端數(shù)據(jù)分析處理系統(tǒng)主要是通過(guò)軟件開(kāi)發(fā)工具,將前端所接收數(shù)據(jù),通過(guò)分析處理,在可視化頁(yè)面展示出來(lái)。后臺(tái)系統(tǒng)實(shí)現(xiàn)架構(gòu)如圖1所示。

      圖1 后臺(tái)實(shí)現(xiàn)架構(gòu)

      1.3 系統(tǒng)實(shí)現(xiàn)

      輸電線路監(jiān)測(cè)平臺(tái)采用OpenLayers+GeoServer 的架構(gòu),前端使用html、js 、css、Vue,后端使用Java 語(yǔ)言,SpringMVC+Mybatis SpringBoot,數(shù)據(jù)庫(kù)使用Mysql,報(bào)表統(tǒng)計(jì)相關(guān)功能使用Echarts 插件,最終實(shí)現(xiàn)輸電線路在線監(jiān)測(cè)平臺(tái)。

      1.4 系統(tǒng)質(zhì)量保證措施

      軟件質(zhì)量是軟件特性的綜合,指軟件滿足規(guī)定或潛在用戶需求的能力[6]。軟件測(cè)試是提升軟件產(chǎn)品質(zhì)量的重要手段,通過(guò)相應(yīng)測(cè)試技術(shù)、方法的運(yùn)用來(lái)發(fā)現(xiàn)軟件產(chǎn)品設(shè)計(jì)、開(kāi)發(fā)過(guò)程中的潛在性問(wèn)題,從而起到為軟件產(chǎn)品后期的市場(chǎng)化推廣、應(yīng)用排除安全隱患的作用。

      質(zhì)量控制的重要前提就是保證操作的整個(gè)流程的真實(shí)性與完整性,只有按照正確的操作方法進(jìn)行軟件測(cè)試,軟件質(zhì)量保證的正確性才能夠得到保障[7]。軟件質(zhì)量保證的前提是測(cè)試對(duì)象、測(cè)試環(huán)境、測(cè)試方法已經(jīng)明確,制定測(cè)試計(jì)劃及測(cè)試執(zhí)行流程后嚴(yán)格按照制定文件和相關(guān)標(biāo)準(zhǔn)執(zhí)行測(cè)試。

      當(dāng)前測(cè)試執(zhí)行以手工執(zhí)行和自動(dòng)化執(zhí)行為主流,在冒煙測(cè)試階段及回歸測(cè)試階段一般以自動(dòng)化測(cè)試為主。本文介紹了一種以關(guān)鍵字為驅(qū)動(dòng)的自動(dòng)化測(cè)試方法,通過(guò)該方法的實(shí)施,可以替代一部分人工測(cè)試,降低測(cè)試的時(shí)間成本和人力成本,同時(shí),通過(guò)每日自動(dòng)執(zhí)行自動(dòng)化測(cè)試,可以極大保證系統(tǒng)每日正常運(yùn)行,并且在系統(tǒng)發(fā)生故障時(shí)能夠及時(shí)通知項(xiàng)目干系人,在最短時(shí)間內(nèi)做出應(yīng)對(duì)。

      2 關(guān)鍵字驅(qū)動(dòng)自動(dòng)化測(cè)試質(zhì)量保證

      2.1 傳統(tǒng)自動(dòng)化測(cè)試框架

      在傳統(tǒng)的自動(dòng)化測(cè)試框架中,大多數(shù)采用直接定位到頁(yè)面元素,對(duì)頁(yè)面元素進(jìn)行操作,從而實(shí)現(xiàn)自動(dòng)化測(cè)試的目標(biāo),在測(cè)試開(kāi)始之后需要先等待測(cè)試對(duì)象的出現(xiàn),在測(cè)試對(duì)象出現(xiàn)后獲取到測(cè)試對(duì)象,然后對(duì)測(cè)試對(duì)象進(jìn)行操作,最后完成測(cè)試操作。

      傳統(tǒng)自動(dòng)化測(cè)試框架中測(cè)試邏輯、測(cè)試元素、測(cè)試數(shù)據(jù)不能做分離處理,這種測(cè)試框架的短板是:當(dāng)頁(yè)面元素、測(cè)試數(shù)據(jù)或測(cè)試邏輯發(fā)生變化時(shí),需要重新維護(hù)腳本[8]。在實(shí)際項(xiàng)目過(guò)程中,因?yàn)樾枨笞兏虍a(chǎn)品升級(jí)導(dǎo)致的系統(tǒng)元素變化或測(cè)試邏輯發(fā)生變化是頻繁的,而每一次的變更都需要重新對(duì)測(cè)試腳本進(jìn)行維護(hù),導(dǎo)致自動(dòng)化測(cè)試日常腳本維護(hù)工作量急劇增加,同時(shí)也加大了測(cè)試腳本維護(hù)困難程度。

      2.2 關(guān)鍵字驅(qū)動(dòng)測(cè)試框架

      關(guān)鍵字驅(qū)動(dòng)測(cè)試框架為了解決傳統(tǒng)測(cè)試框架存在問(wèn)題提出了三個(gè)思想:一是測(cè)試元素命名與自動(dòng)化測(cè)試定義對(duì)象名分離,二是將測(cè)試邏輯中的測(cè)試動(dòng)作與系統(tǒng)功能實(shí)現(xiàn)細(xì)節(jié)分離,三是測(cè)試腳本與測(cè)試數(shù)據(jù)分離[9]。采用三分離的機(jī)制,可以在自動(dòng)化測(cè)試過(guò)程中能夠極大提升測(cè)試腳本可維護(hù)性,降低因?yàn)橄到y(tǒng)元素和邏輯變化對(duì)測(cè)試執(zhí)行的影響。

      框架分為四層:工具層、服務(wù)層、邏輯層和場(chǎng)景層,其中工具層主要封裝了測(cè)試中需要調(diào)用的工具類方法、配置文件、日志文件和失敗用例截圖;服務(wù)層主要封裝了測(cè)試系統(tǒng)的頁(yè)面元素和操作步驟;邏輯層主要封裝了系統(tǒng)各個(gè)業(yè)務(wù)對(duì)象,組成測(cè)試邏輯進(jìn)行校驗(yàn);場(chǎng)景層則是針對(duì)各種測(cè)試場(chǎng)景,實(shí)現(xiàn)不同場(chǎng)景下的用例組合,如圖2 所示。

      圖2 關(guān)鍵字驅(qū)動(dòng)測(cè)試架構(gòu)

      2.3 關(guān)鍵字驅(qū)動(dòng)測(cè)試設(shè)計(jì)

      2.3.1 工具層設(shè)計(jì)

      (1)配置變量讀取ini_reader,封裝對(duì)ini 配置文件的讀取操作;

      (2)全局變量設(shè)置global_var,定義測(cè)試過(guò)程中所需要用到的全局變量;

      (3)配置郵件發(fā)送email_util,封裝測(cè)試執(zhí)行完成后測(cè)試報(bào)告自動(dòng)發(fā)送到干系人;

      (4)配置測(cè)試日志log_util,封裝日志輸出、級(jí)別設(shè)定功能。

      2.3.2 服務(wù)層設(shè)計(jì)

      (1)設(shè)計(jì)Driver_action,封裝了測(cè)試過(guò)程中需要打開(kāi)、關(guān)閉瀏覽器的操作;

      (2)設(shè)計(jì)take_action,封裝測(cè)試執(zhí)行失敗用例自動(dòng)截圖并保存到指定文件夾;

      (3)設(shè)計(jì)Page_action,封裝頁(yè)面元素操作,如:點(diǎn)擊、輸入、切換frame 等。

      2.3.3 邏輯層設(shè)計(jì)

      初始化測(cè)試_init_,完成測(cè)試執(zhí)行初始化操作;

      設(shè)置cases,讀取測(cè)試用例文件,拼接測(cè)試對(duì)象、測(cè)試動(dòng)作完成測(cè)試執(zhí)行并記錄執(zhí)行結(jié)果;

      設(shè)置data,放置測(cè)試用例數(shù)據(jù)文件,獲取測(cè)試數(shù)據(jù);

      設(shè)置main 函數(shù),指定具體模塊測(cè)試,校驗(yàn)測(cè)試數(shù)據(jù)與測(cè)試模塊是否相符,執(zhí)行用例集后記錄測(cè)試結(jié)果。

      2.3.4 場(chǎng)景層

      設(shè)置main 函數(shù),作為整個(gè)測(cè)試框架的運(yùn)行主入口;

      設(shè)置場(chǎng)景smoke_test,根據(jù)冒煙測(cè)試場(chǎng)景將用例組合;

      設(shè)置場(chǎng)景suite_test,執(zhí)行全量測(cè)試。

      2.3.5 測(cè)試流程設(shè)計(jì)

      整個(gè)測(cè)試流程以main.py 作為運(yùn)行主入口,判斷當(dāng)前測(cè)試場(chǎng)景后調(diào)用場(chǎng)景所關(guān)聯(lián)的測(cè)試用例,讀取測(cè)試用例對(duì)應(yīng)測(cè)試數(shù)據(jù)后進(jìn)入測(cè)試執(zhí)行流程,執(zhí)行過(guò)程中根據(jù)日志級(jí)別記錄執(zhí)行日志,測(cè)試執(zhí)行通過(guò)則生成測(cè)試報(bào)告并發(fā)送郵件,測(cè)試執(zhí)行失敗則再次執(zhí)行測(cè)試,若一直執(zhí)行失敗循環(huán)10 次后自動(dòng)退出執(zhí)行,記錄失敗用例截圖并寫(xiě)入測(cè)試報(bào)告,發(fā)送郵件到干系人郵箱,完成整個(gè)測(cè)試流程。

      2.4 關(guān)鍵字驅(qū)動(dòng)測(cè)試實(shí)現(xiàn)

      2.4.1 用例設(shè)計(jì)

      根據(jù)輸電線路監(jiān)測(cè)系統(tǒng)需求說(shuō)明書(shū)及實(shí)際系統(tǒng)實(shí)現(xiàn)情況,使用等價(jià)類分析、邊界值分析、場(chǎng)景法等用例設(shè)計(jì)方法,得到測(cè)試用例共計(jì)362 條,用例模塊分布如表1 所示。

      表1 用例分布

      2.4.2 代碼實(shí)現(xiàn)

      本文測(cè)試腳本代碼編寫(xiě)基于python 語(yǔ)言,使用selenium+webdriver 為驅(qū)動(dòng),通過(guò)腳本編寫(xiě)、函數(shù)定義、代碼封裝實(shí)現(xiàn)測(cè)試用例,由于代碼量過(guò)多,在此不在贅述,僅以其中測(cè)試報(bào)告發(fā)送模塊為例展示編碼過(guò)程,部分代碼實(shí)現(xiàn)如下所示:

      2.4.3 執(zhí)行結(jié)果

      設(shè)置定時(shí)任務(wù)為每天凌晨一點(diǎn)開(kāi)始執(zhí)行,所有案例執(zhí)行完成后自動(dòng)發(fā)送測(cè)試報(bào)告到干系人郵箱,可以直接下載html 版本測(cè)試報(bào)告及執(zhí)行失敗的測(cè)試用例截圖。

      2.4.4 測(cè)試框架實(shí)施效果評(píng)估

      自動(dòng)化測(cè)試框架的目的是減輕測(cè)試人員繁雜的測(cè)試工作,提升測(cè)試效率,從而達(dá)到提升軟件質(zhì)量的目的。一個(gè)完成的測(cè)試過(guò)程包含了測(cè)試準(zhǔn)備、測(cè)試執(zhí)行,在手工測(cè)試、傳統(tǒng)自動(dòng)化測(cè)試和以關(guān)鍵字為驅(qū)動(dòng)的測(cè)試方法中,這兩個(gè)階段耗費(fèi)時(shí)間各不相同,輸電線路平臺(tái)從提測(cè)到發(fā)布中經(jīng)歷了七個(gè)版本的測(cè)試,每次版本的變動(dòng)都需要大量的測(cè)試工作,表2 記錄了三種測(cè)試方法測(cè)試人員的工作量。

      表2 測(cè)試工作量

      從表2 可以看出系統(tǒng)完整執(zhí)行一次測(cè)試時(shí),手工測(cè)試耗時(shí)184.2 小時(shí),傳統(tǒng)自動(dòng)化耗時(shí)743.97 小時(shí),以關(guān)鍵字為驅(qū)動(dòng)自動(dòng)化測(cè)試耗時(shí)655.58 小時(shí),設(shè)系統(tǒng)需要測(cè)試次數(shù)為n,那總測(cè)試耗時(shí)T 為:

      T=nt 測(cè)試執(zhí)行時(shí)長(zhǎng)+t 準(zhǔn)備時(shí)長(zhǎng)

      根據(jù)公式得到測(cè)試耗時(shí)趨勢(shì)圖如圖3 所示,從圖3 可以看出,以關(guān)鍵字驅(qū)動(dòng)的自動(dòng)化測(cè)試耗時(shí)比傳統(tǒng)自動(dòng)化測(cè)試所需耗時(shí)少;到第七次測(cè)試時(shí),以關(guān)鍵字驅(qū)動(dòng)的自動(dòng)化測(cè)試框架所需耗時(shí)就比手工測(cè)試耗時(shí)少,前期耗時(shí)多的原因是以關(guān)鍵字驅(qū)動(dòng)的自動(dòng)化測(cè)試框架測(cè)試準(zhǔn)備耗時(shí)較長(zhǎng),需要耗費(fèi)大量時(shí)間對(duì)測(cè)試腳本進(jìn)行編寫(xiě)和調(diào)試,但是當(dāng)測(cè)試準(zhǔn)備完成后,執(zhí)行測(cè)試所耗費(fèi)的時(shí)間遠(yuǎn)遠(yuǎn)低于手工測(cè)試所耗費(fèi)的時(shí)間,因此隨著測(cè)試次數(shù)增多,手工測(cè)試耗時(shí)直線上升,一關(guān)鍵字為驅(qū)動(dòng)的自動(dòng)化測(cè)試耗時(shí)增加十分緩慢。

      圖3 測(cè)試耗時(shí)趨勢(shì)

      3 結(jié)論

      為了解決當(dāng)前輸電線路依靠人工巡檢的難題,建立了輸電線路的在線監(jiān)測(cè)系統(tǒng),軟件系統(tǒng)的正常運(yùn)行與軟件質(zhì)量不可分割,軟件測(cè)試作為保證軟件系統(tǒng)質(zhì)量的重要手段,需要耗費(fèi)大量人力物力。本文通過(guò)自動(dòng)化測(cè)試框架的建立,測(cè)試代碼的實(shí)現(xiàn),能夠?qū)y(cè)試人員從繁雜的重復(fù)的測(cè)試工作中脫離出來(lái),為軟件系統(tǒng)提高更高效、更精準(zhǔn)的測(cè)試,更大提升軟件產(chǎn)品質(zhì)量。通過(guò)關(guān)鍵字驅(qū)動(dòng)的測(cè)試框架在一定程度上減輕了測(cè)試人員維護(hù)測(cè)試腳本的工作,但也存在腳本編寫(xiě)較傳統(tǒng)自動(dòng)化測(cè)試腳本更難上手,需要更多學(xué)習(xí)成本的問(wèn)題,在未來(lái)的研究中,會(huì)繼續(xù)對(duì)自動(dòng)化測(cè)試進(jìn)行深一步的研究,以提升測(cè)試框架的適用性。

      猜你喜歡
      關(guān)鍵字用例腳本
      酒駕
      履職盡責(zé)求實(shí)效 真抓實(shí)干勇作為——十個(gè)關(guān)鍵字,盤(pán)點(diǎn)江蘇統(tǒng)戰(zhàn)的2021
      UML用例模型中依賴關(guān)系的比較與分析
      安奇奇與小cool 龍(第二回)
      成功避開(kāi)“關(guān)鍵字”
      聯(lián)鎖軟件詳細(xì)設(shè)計(jì)的測(cè)試需求分析和用例編寫(xiě)
      從出土文獻(xiàn)用例看王氏父子校讀古書(shū)的得失
      數(shù)據(jù)庫(kù)系統(tǒng)shell腳本應(yīng)用
      快樂(lè)假期
      基于用戶反饋的關(guān)系數(shù)據(jù)庫(kù)關(guān)鍵字查詢系統(tǒng)
      上杭县| 孟津县| 木里| 克山县| 榆中县| 朝阳市| 工布江达县| 泗洪县| 平昌县| 兴城市| 锡林浩特市| 台山市| 承德市| 泰和县| 台南县| 澎湖县| 西城区| 黑龙江省| 宁乡县| 周至县| 南漳县| 赤城县| 历史| 庆城县| 玛纳斯县| 锦州市| 古交市| 且末县| 旬邑县| 通州市| 稷山县| 莫力| 宁津县| 贵溪市| 定南县| 永宁县| 抚宁县| 龙泉市| 河东区| 无棣县| 印江|