Cantata 25.07版本全新發布!此版本為以代碼編輯器為中心的用户添加了更多功能,包括完整的CLI測試腳本創建和執行以及新的測試用例編輯,更新了最新鐵路軟件標準EN 50716:2023的工具認證,增強了代碼覆蓋率報告,並進一步擴展了支持的平台。此外,在此版本中修復了核心組件和輔助工具中的許多錯誤。
Cantata 25.07還包含許多其他生產力和靈活性增強以及修復。全套更改記錄在發行説明中,該説明跟蹤了Cantata自4.0版本以來的所有更改。此版本中最重要的更改將在以下部分中突出顯示。
完整的CLI測試腳本生成
對於許多以代碼編輯器為中心的Cantata用户(例如在VSCode等編輯器中開發測試的用户)來説,Cantata 25.07中的新命令行測試腳本生成器實用程序將是一個受歡迎的生產力提升。這個新的headless Eclipse實用程序使用一些可配置的選項和其他默認設置,完全從命令行生成Cantata測試腳本。
只要有一個現有的Eclipse工作區,該實用程序就會提供生成工作測試腳本所需的所有選項,包括:
- 測試的位置,絕對和相對路徑
- 測試腳本名字
- CSI文件位置
- 樁和封裝函數的生成
- 使用Cantata makefile構建測試或將其放置在正在測試的源代碼旁邊
- 測試用例生成(無用例、每函數1用例、AutoTest以及使用或不使用測試步驟)
- 代碼覆蓋率規則集
新的設置測試輸入的宏
在25.07版本中,為以代碼編輯器為中心的用户添加了新的Cantata Library宏 SET_TEST_INPUT。這增加了編輯測試腳本時的功能,可以直接設置輸入值並將該輸入值記錄到生成的Cantata測試結果文件(.CTR)中,而不用複製代碼。這個新宏只接受一個參數var,它應該是一個有效的變量賦值。以下示例顯示了一個測試用例和生成的測試結果報告部分。
圖 1 測試用例
圖 2 測試結果文件片段
CPPGETCOV擴展上下文覆蓋率
Cantata的經過認證的工具CPPGETCOV是一個可執行文件,在一個或多個Cantata代碼覆蓋率(.COV)文件上運行,以生成適合認證的Cantata測試結果文件(.CTR)。傳統的代碼覆蓋率衡量源代碼構造的執行情況,但不考慮代碼對象執行的上下文。根據上下文的不同,相同的源代碼可能表現不同(例如,在多個線程中運行、在多個繼承中運行多態基類代碼或在不同狀態下運行狀態機代碼)。Cantata提供了將結構代碼覆蓋率與其執行上下文疊加(測量和過濾)的能力。這允許用户根據上下文區分代碼覆蓋率。Cantata上下文覆蓋的應用包括:
- 繼承
- 狀態機
- 線程
Cantata會自動收集繼承上下文的代碼覆蓋率。可以使用添加到測試腳本中的user_context_function來設置狀態上下文或線程上下文的代碼覆蓋率,該函數定義了執行被測源代碼的可能不同上下文。
在Cantata 25.07中,CPPGETCOV得到了增強,可以對不同的代碼上下文進行覆蓋率報告。--context:<string>參數指定覆蓋率報告的上下文字符串,而--function:<name>參數指定要報告的函數或方法。這兩個參數默認都是“*”。
故障修復
核心組件
經過認證的核心組件中有30多個缺陷得到了解決。亮點包括:
- 修復了調用返回覆蓋率與模板函數、lambds和構造函數不一致的問題。
- 改進了與Boost和C++20構造的兼容性。
- 增強CTR2HTML轉換邏輯。
-
許可證日誌、測試工具緩衝區管理和表達式評估的穩定性改進。
補充工具
補充工具的改進。亮點包括:
- AutoTest增強了對複雜數據類型和聯合訪問的處理
- Eclipse UI元素、測試用例生成和部署工具可靠性的修復
- 為國際用户更正缺失或錯誤報告的教程內容
更新了平台支持版本
Cantata的每個版本都有支持平台的變化。
Cantata緊密地與Eclipse®的IDE環境集成,提供Eclipse-Ready®插件。Cantata 25.07建立在Eclipse 2024-12版本(Eclipse 4.34)上,也可以作為從Neon(4.6)版本直到Eclipse 2023-12(4.30)版本的Eclipse-Ready插件來安裝:
- Eclipse 4.6 (Neon)
- Eclipse 4.7 (Oxygen)
- Eclipse 4.9 (2018-09)
- Eclipse 4.14 (2019-12)
- Eclipse 4.15 (2020-03)
- Eclipse 4.16 (2020-06)
- Eclipse 4.19 (2021-03)
- Eclipse 4.23 (2022-03)
- Eclipse 4.24 (2022-06)
- Eclipse 4.30 (2023-12)
Cantata 25.07增加了對Microsoft Visual Studio 2022和GNU GCC for C/C++ 14和15版本。完整的支持平台列表如下:
在Windows(32和64位)版本7、8/8.1、10、11上:
- Microsoft Visual C++ (32-bit): 2010, 2013, 2015, 2017, 2019, 2022
-
GNU GCC for C/C++: 4.6.2 to 13.2.x
在Linux(32和64位)內核發行版無關版本3.x、4.x、5.x、6.x上:
-
GNU GCC for C/C++: 3.4.6 to 15.1.x
瞭解更多有關Cantata的技術信息及商務服務,請訪問http://www.softtest.cn/留言,或按以下方式聯繫旋極智能:
獲取更多資訊▼關注我們