[發明專利]Linux平臺下CLI模塊的代碼自動化測試方法在審
| 申請號: | 201410653967.X | 申請日: | 2014-11-17 |
| 公開(公告)號: | CN104317724A | 公開(公告)日: | 2015-01-28 |
| 發明(設計)人: | 接鳳華 | 申請(專利權)人: | 上海斐訊數據通信技術有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 上海信好專利代理事務所(普通合伙) 31249 | 代理人: | 張妍;張靜潔 |
| 地址: | 201620 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | linux 平臺 cli 模塊 代碼 自動化 測試 方法 | ||
技術領域
本發明涉及一種通信系統中Linux平臺下CLI(命令行界面Command?Line?Interface?for?batch?scripting)模塊的代碼UT(單元測試,Unit?Test)自動化測試方法。
背景技術
通信系統中的CLI模塊是用戶接口UI(用戶界面user?interface)的常見模塊,具有代碼量大,代碼重復類似,需要持續維護開發的特點。一般軟件UT框架比如CMock都會需要編寫測試案例,編寫測試所依賴的打樁文件(mock文件),編寫測試案例執行模塊(runner)。現有UT技術有個重大問題就是對每一個代碼函數(function),都需要編寫測試案例,需要編寫測試runner,這樣代碼UT的工作量不亞于代碼編寫的工作量,甚至可能更多,這就降低了UT的效率,而要想在當前的通信行業中保持優勢,如何高效的保證軟件質量就變得越來越重要。
發明內容
本發明提供一種Linux平臺下CLI模塊的代碼自動化測試方法,根據CLI代碼的特點,生成案例設計文件,并編寫自動化運行模塊來自動化運行測試案例,減少了測試編碼量,節省了人力,大大提高了測試的效率,優化了測試效果。
為了達到上述目的,本發明提供一種Linux平臺下CLI模塊的代碼自動化測試方法,該方法包含以下步驟:
步驟S1、編寫待測試的CLI命令的案例設計文件,并編寫待測試的CLI命令的所有測試案例,在案例設計文件中設置每個測試案例的運行參數;
步驟S2、編寫自動化運行模塊;
步驟S3、利用自動化運行模塊解析待測試CLI命令所對應的案例設計文件中的每一行數據,生成測試代碼自動運行該CLI命令的每一個測試案例并輸出校驗結果。
所述的案例設計文件中的第一行為導航欄,對應測試案例的運行參數,該導航欄中的字段包含:
1、CLI命令的輸入參數值,這些輸入參數也是命令入口函數的參數;
2、CLI命令執行依賴的共享內存域值和/或FPGA域值;
3、CLI命令執行結束之后期待的返回值;
4、CLI命令執行結束之后期待的共享內存域值和/或FPGA域值。
每條CLI命令對應一個案例設計文件。
所述的案例設計文件的文件名以CLI命令名稱來命名。
所有的案例設計文件統一存放在某一用戶目錄下。
所述的案例設計文件中,除了第一行導航欄之外,其余每一行內的參數值都分別是一個測試案例運行時所需要的參數值。
自動化運行模塊的編寫不限定編寫語言。
采用通用的編寫語言來編寫測試案例。
所述的步驟S3包含以下步驟:
步驟S3.1、自動化運行模塊根據案例設計文件中的每一行數據來解析設置測試案例中的共享內存域值和FPGA域值;
步驟S3.2、自動化運行模塊根據案例設計文件中的CLI命令的輸入參數來生成測試代碼運行對應的CLI命令測試案例,并記錄下CLI命令測試案例運行的返回值,以及共享內存訪問接口獲得的共享內存域值,和/或FPGA接口獲得的FPGA域值;
步驟S3.3、自動化運行模塊對測試結果進行校驗;
校驗包含命令返回值的校驗以及共享內存域值的校驗和FPGA域值的校驗。
所述的步驟S3.3中,
如果運行CLI命令測試案例后獲得的返回值與期待的返回值不一致,則自動化運行模塊輸出出錯提示;
如果運行CLI命令測試案例后獲得的共享內存域值與期待的共享內存域值不一致,則自動化運行模塊輸出出錯提示;
如果運行CLI命令測試案例后獲得的FPGA域值與期待的FPGA域值不一致,則自動化運行模塊輸出出錯提示。
本發明具有以下優點:
1、采用配置案例設計文件的方式代替編寫代碼的方式,十分簡單直觀;
2、一次編寫完成自動化運行模塊后,后續可以自動化運行測試案例,不再需要每次都編寫運行代碼;
3、減少了測試編碼量,節省了人力,大大提高了測試的效率;
4、減少因為編寫測試案例而引入的錯誤,優化了測試效果。
附圖說明
圖1是本發明的流程圖。
圖2是自動化運行模塊進行自動化測試的流程圖。
圖3是案例設計文件的實例。
具體實施方式
以下根據圖1~圖3,具體說明本發明的較佳實施例。
本發明的通信系統運行在Linux平臺下,CLI模塊作為用戶的命令行接口,具有如下特點:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海斐訊數據通信技術有限公司,未經上海斐訊數據通信技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410653967.X/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:石墨烯納米網的制備方法
- 下一篇:一體式SF6氣體密度控制器





