• Parasoft C/C++testTM

    制造商:Parasoft Corporation

    功能:編譯器

    評分:5 / 5

    推薦指數:100%

    軟件簡介:

    Parasoft C++test 能夠使團隊開發更好的代碼,實施更有效的測試,以及持續地監視實現其質量目標的過程.

    軟件詳細介紹:

    【針對 C/C++ 開發的綜合性代碼質量保障工具】


    Parasoft C++test 能夠使團隊開發更好的代碼,實施更有效的測試,以及持續地監視實現其質量目標的過程。使用 C++test 經時間驗證的重要最佳實踐—例如靜態分析,全面的代碼審查,運行時錯誤檢測,集成覆蓋率分析的單元測試和組件測試—能夠在開發周期的開始階段,自動地在開發者的桌面上完成。能夠通過命令行模式自動化地執行回歸和持續集成測試,為監測和分析質量趨勢提供數據。此外, C++test 與 Parasoft 的Concerto 結合在一起, 提供基于 Web 交互式的儀表板,具有細分能力的 Concerto 使團隊能夠通過 C++test的結果以及其它關鍵進度指標來把握項目狀態和趨勢。

    針對嵌入式和跨平臺開發, C++test 可以用在基于宿主環境和目標環境的代碼分析和測試流程中。詳情請參閱第3頁。

    自動化代碼分析以提供代碼規范性
    一個正確實施的編碼策略通過建立預防性的編碼規范能夠降低全部種類的編程錯誤。C++test 通過靜態分析代碼來檢查是否遵循這些策略。對 C++test進行配置可以為他們的團隊和組織實施一個代碼標準的策略,用戶可以在內建和自定義規則中定義他們自己的規則集。可以生成多種格式的代碼分析報表。

    數千條內建規則—包括實現 FDA, PCI, 中華人民共和國國家軍用標準(GJB5369), MISRA, MISRA 2004,新的 MISRA C++ 標準, 和來自于 Meyers的Effective C++ 和Effective STL 等書籍以及從其他主流源碼中總結的準則—有助于預防 C/C++ 語言中潛在的缺陷, 實施最佳的編碼實踐,以及提高代碼的可維護性和可重用性。使用圖形化的 RuleWizard 編輯器創建的自定義規則能增強標準 API 的使用,并預防。

    在不執行軟件的情況下檢測運行時缺陷
    BugDetective, Parasoft 先進的數據流靜態分析功能,通過模擬應用程序的執行路徑—可能跨越多個函數和文件—并確定這些路徑是否會觸發運行時缺陷。可以檢測的缺陷類型包括使用未初始化的或無效的內存,空指針解引用,數組和緩沖區溢出,除零,內存和資源泄漏,以及各種風格的死代碼(Dead Code)。

    C++test 通過為每個潛在的缺陷提供一個完整的路徑分析,跟蹤缺陷的產生過程,開發人員可以在IDE 中快速地定位到路徑中的任何一點,從而極大地簡化了缺陷分析的工作。


    C++test 的靜態分析在不執行代碼的情況下檢測嚴重的缺陷 (圖示為 Eclipse 版本)
    優點
    n? 提高團隊開發效率 — 應用一套全面的最佳實踐集合以縮減測試時間,降低測試難度,和減少到達 QA 階段的缺陷數量。
    n? 優化團隊開發資源的配置 — 自動地審查已知的代碼問題,以便有更多的時間可以被用于需要人類智慧的地方。
    n? 建立更可靠的代碼庫 — 高效地構建,并可持續地執行,和維護一個全面的回歸測試套件,用于檢測更新是否破壞了既有的功能。
    n? C C++ 代碼質量和進度可視化 — 獲取對用于實現需求代碼的評估,并跟蹤其過程以實現質量和進度的目標。
    n? 降低項目成本 — 自動對廣泛的潛在用戶路徑進行測試以查找出只有在真正使用時才能發現的問題。

    功能
    n? 通過靜態分析來使代碼遵守用戶選定的編碼規范
    n? 提供圖形化的 RuleWizard 編輯器來創建自定義的編碼規則
    n? 通過對代碼路徑做靜態模擬分析以定位潛在的運行時錯誤
    n? 提供圖形化接口和動態跟蹤功能使代碼審查自動化
    n? 應用程序監測/內存分析
    n? 自動生成并執行單元和組件級的測試
    n? 靈活的樁函數機制
    n? 完全支持回歸測試
    n? 代碼高亮顯示的覆蓋率分析
    n? 不止針對單元測試的代碼覆蓋率分析(包括應用程序級的測試)
    n? 使用圖形界面和命令行方式進行全面團隊部署
    運行時錯誤檢測
    n? 通過簡單的功能測試
    識別復雜的內存相關的問題—例如:
    l??? 內存泄漏
    l??? 空指針
    l??? 未初始化的內存
    l??? 緩沖區溢出
    n? 從應用程序運行過程中收集代碼覆蓋率
    n? 通過在實際目標環境中監測應用程序以提升測試結果的準確性
    簡化代碼審查
    代碼審查是已知的發現代碼缺陷最有效的方法。然而不幸的是,許多組織沒有充分利用代碼審查,因為他們認為這需要做大量的工作。 C++test 的代碼審查模塊自動準備,通知,和跟蹤同行代碼審查,實現了一個非常有效的面向團隊的過程。 所有代碼審查的狀態,包括全部審查者的注釋,都由 C++test 基礎設施來維護和自動地分配。C++test 支持兩種典型的代碼審查流程:
    n? 提交后代碼審查。這個模式是通過自定義的源碼控制器接口來自動地識別源代碼庫中的代碼變化, 并且根據預先設定的關于更改的代碼到審查者的映射來創建代碼審查任務。
    n? 提交前代碼審查。 用戶可以通過選擇一個為審查而分配的文件集合來從圖形界面開始一個代碼審查,或者自動地識別所有本地修改的源代碼。

    團隊代碼審查的功效通過 C++test 的靜態分析能力得到進一步的增強了。因為能夠自動地監測團隊的編碼策略,幾乎完全消除了逐行檢查的需求。到代碼被提交用于審查的時候, 違規也已經被識別出來并清理了。那么審查就可以集中在檢查算法,審查設計,和找尋自動化工具無法檢測的細微錯誤。

    監測應用程序的內存問題
    運行時錯誤檢測是用于消除嚴重的內存相關缺陷并具有零誤報率的最著名方法。持續地監測運行的應用程序以查找某些類別的問題—如內存泄漏,空指針,未初始化的內存,和緩沖區溢出—以及在測試過程完成之后立即可見結果。

    無需高級的和耗時的測試活動,準備好的應用程序通過標準的功能性測試然后標記出所有存在的問題。應用程序可以執行在目標設備,模擬的目標平臺,或者宿主機上。收集的問題以及理解和解決這個問題所需的細節直接地顯示在開發人員的 IDE 中 (包括內存塊的大小,數組索引,分配/釋放堆棧跟蹤等。)

    在應用程序執行期間收集覆蓋率指標。 這些信息可以用于查看應用程序的哪一部分已經測試和微調整回歸
    單元測試集(作為功能性測試的補充)。

    具有覆蓋率分析的單元和集成測試
    C++test 的自動化極大地提高了測試新開發或舊代碼的正確性和可靠性的效率。 C++test 自動地為每個函數生成完整的測試,包括測試驅動和測試用例, 這些測試用例是類似于 CppUnit 格式的純C 或 C++ 代碼。不論是否修改這些測試, 它們都被用于代碼功能性行為的初步驗證。通過使用邊界情況的條件, 這些自動生成的測試用例也檢查對未知輸入的功能響應,揭露潛在的可能性問題。

    完全通過一套具體的 GUI 構件來簡化測試的創建和管理。圖形化的測試用例向導使開發人員能夠為選中的函數快速地創建黑盒功能性測試,而不必擔心它們的內部運作或嵌入的數據依賴。數據源向導幫助參數化測試用例和樁函數—以最小的努力使測試范圍和覆蓋率得到提升。使用樁函數視圖很方便分析和生成樁函數,此視圖顯示所有在代碼中使用的函數并允許用戶為任何在測試范圍內不可用的函數創建樁函數—或者為特定的測試目的而改變現有的函數。在測試用例瀏覽器中集中進行測試執行和分析,并合并了所有現有的項目測試和提供一個明確的通過/失敗狀態。 這些功能用于支持自動的持續集成和測試”隨進度而測試(test as you go)“ 開發特別有用。

    提供多種測試覆蓋率分析報告,包括語句,分支,路徑,和 MC/DC 覆蓋率, 幫助用戶評估測試的有效性和完整性, 以及證明符合測試和驗證的需求,例如 DO-178B。 測試覆蓋率是通過對所有受支持的覆蓋率指標的代碼高亮來體現—在 GUI 或用顏色表示的代碼列表報告中。可以以多種格式生成包括文件, 類,和函數數據的概要覆蓋率報告。

    自動化回歸測試
    C++test 有助于健壯性回歸測試套件的開發,幫助檢測是否增量代碼變更破壞了現有的功能。無論團隊是有大量的遺留代碼庫,還是少量剛好完成的代碼,或者介于兩者之間的情況,C++test 都能夠通過自動地記錄運行時測試結果而產生的測試斷言來生成捕獲現有軟件行為的測試。 隨著代碼庫的發展, C++test 重新運行這些測試并將當前的結果與原來捕獲的”黃金集合(goldenset)”相比較。它可以很容易地被配置為使用不同的執行設置,測試用例,和樁函數以支持在不同環境中的測試(例如, 不同的持續集成階段, 測試不完整的系統, 或者測試一個完整系統的特定部分)。

    先進的單元測試功能
    n? 自動生成測試用例和樁函數
    n? 根據觀察到的測試結果自動生成斷言
    n? 圖形化測試用例向導增加和修改自定義的測試用例
    n? 對測試用例和樁函數源代碼的完全可視性和可編輯
    n? 智能,靈活的樁函數功能
    n? 參數化測試和樁函數
    n? 符合 DO-178B 標準的多種覆蓋率分析(包括 MC/DC)
    n? 靈活地支持持續的回歸測試
    n? 按照缺陷和需求來注釋測試用例
    n? 在調試器下執行測試用例
    n? 在特殊模式下測試模板代碼

    可配置的詳細報告
    C++test 的 HTML, PDF 和自定義格式的報告可以通過GUI 控件或一個選項文件來配置。標準報告包括有通過/失敗的代碼分析和測試結果的概要,已分析文件的列表,和一個代碼覆蓋率概要。此報告可以進行自定義,以包括活動的靜態分析檢查的清單, 具有單獨測試的通過/失敗狀態的擴展測試輸出, 對于關鍵指標的趨勢圖參數,和用顏色表明的所有代碼覆蓋率結果的完整代碼清單。 生成的報告可以根據各種角色的過濾器通過郵件被自動地發送。除了直接提供數據給負責缺陷所標記代碼的開發人員, C++test 也發送概要報告給管理人員和團隊負責人。


    儀表板跟蹤關鍵的開發指標
    高效的團隊部署
    C++test 建立了一個高效的過程以確保軟件驗證任務被植入到團隊的現有工作流程中并且自動地—使團隊更加專注于真正需要人類智慧的任務。通過自動化任務安排和分配使缺陷審查和糾正更加容易。每個檢測到的缺陷通過區分優先順序,被安排給相應編寫這部分代碼的開發人員,并分配完整數據和代碼的交叉鏈接到他的或她的 IDE 中。為了幫助管理人員評估和記錄趨勢,集中化的報告能夠確保對質量狀態和過程實時監控。這些數據同樣幫助確定是否需要進一步的行動以滿足內部目標或證明策略的遵從性。
    支持嵌入式和跨平臺開發
    隨著嵌入式系統中的軟件組件變得越來越重要,全面提升了質量在嵌入式軟件中的關注度。長期存在的質量對策,例如使用調試器做測試變得不再有效或不夠充分。更加復雜的問題是,許多開發人員不能輕易地在實際的部署環境中運行一個測試程序,因為他們無法訪問最后的系統硬件。為了應對這些挑戰,需要在整個開發生命周期中實現代碼質量—在自動化實施和監測的協助下,協同使用一個被時間證明的早期缺陷預防技術。
    對于要求高品質的行業,例如航空,醫療,汽車,運輸,和工業自動化, Parasoft 基于 Web 交互式儀表板和具有 SQL數據庫支撐的數據細分能力的統計和報告系統,通過讓遵守情況可視化來實現高效和可度量的質量過程。

    在宿主機,模擬器 和目標機上測試
    C++test 自動化實施完整的測試執行流程, 包括測試用例生成,交叉編譯,部署,執行,和加載結果 (包括覆蓋率指標)返回到 GUI 中。可以為自動的測試執行來從 GUI 或命令行交互地驅動測試, 以及批處理回歸測試。在交互模式中,為了方便調試或驗證用戶可以單獨地或在選中的組中運行測試。 對于批處理執行,用戶可以針對指定的代碼,它們的名稱或者在磁盤上的位置來執行測試。


    C++test 可自定義的工作流程使用戶能夠按照代碼開發的方式來進行測試,并使用相同的測試套件來確認目標環境下的功能性/可靠性問題
    高度的可定制化
    C++test 允許用戶完全自定義測試執行流程。除了使用內建的自動化測試以外,用戶可以包含自定義的測試腳本和 shell命令來使工具符合他們具體的構建和測試環境。
    通過交叉編譯為預期的目標環境所提供的運行時庫,C++test可以被廣泛的用于多種嵌入式操作系統和結構體系。C++test 的所有測試中間產物的源代碼都可見,因此完全可以移植。

    Supported Host Environments
    Host Platforms
    ·???????? Windows
    ·???????? Linux
    ·???????? Solaris UltraSPARC
    IDEs
    ·???????? Eclipse IDE for Developers
    ·???????? Microsoft Visual Studio
    ·???????? Wind River Workbench
    ·???????? ARM Workbench IDE for RVDS
    ·???????? ARM Development Studio
    ·???????? QNX Momentics IDE (QNX Software Development Platform)
    ·???????? Texas Instruments Code Composer Studio
    IDEs with Project Import Support
    ·???????? ARM ADS
    ·???????? Green Hills MULTI
    ·???????? IAR Embedded Workbench
    ·???????? Keil μVision IDE
    ·???????? Keil RealView
    ·???????? Microsoft eMbedded Visual C++
    ·???????? Microsoft Visual Studio
    ·???????? Texas Instruments Code Composer
    ·???????? Wind River Tornado
    Host Compilers
    ·???????? Windows

    • Microsoft Visual
    • GNU and MingW gcc/g++
    • GNU gcc/g++
    • Green Hills MULTI for Windows

    ·???????? Linux 32 and 64 bit processor

    • GNU gcc/g++
    • Green Hills MULTI for Linux

    ·???????? Solaris

    • Sun ONE Studio
    • GNU gcc/g++
    • Green Hills MULTI for SPARC Solaris

    Target/Cross Compilers
    ·???????? Altera NIOS GCC
    ·???????? ADS (ARM Development Suite)
    ·???????? ARM for Keil uVision
    ·???????? ARM RVCT
    ·???????? ARM DS-5 GNU Compilation Tools
    ·???????? Cosmic Software 68HC08
    ·???????? eCosCentric GCC
    ·???????? Freescale CodeWarrior C/C++ for HC12
    ·???????? Fujitsu FR Family SOFTUNE
    ·???????? GCC (GNU Compiler Collection)
    ·???????? Green Hills MULTI for V800
    ·???????? IAR C/C++ for ARM
    ·???????? IAR C/C++ for MSP430
    ·???????? Keil C51
    ·???????? Microsoft Visual C++ for Windows Mobile
    ·???????? Microsoft Embedded Visual C++
    ·???????? QCC (QNX GCC)
    ·???????? Renesas SH SERIES C/C++
    ·???????? STMicroelectronics ST20
    ·???????? STMicroelectronics ST40
    ·???????? TASKING 80C196 C
    ·???????? TASKING TriCore VX-toolset C/C++
    ·???????? TI TMS320C2x/C2xx/C5x
    ·???????? TI TMS320C2000 C/C++
    ·???????? TI TMS320C54x C/C++
    ·???????? TI TMS320C55x C/C++
    ·???????? TI TMS320C6x C/C++
    ·???????? TI MSP430 C/C++
    ·???????? Wind River GCC
    ·???????? Wind River DIAB
    Build Management
    ·???????? GNU make
    ·???????? Sun make
    ·???????? Microsoft nmake
    Source Control
    ·???????? AccuRev SCM
    ·???????? Borland StarTeam
    ·???????? CVS
    ·???????? Git
    ·???????? IBM Rational ClearCase
    ·???????? IBM Rational Synergy
    ·???????? Microsoft Team Foundation Server
    ·???????? Microsoft Visual SourceSafe
    ·???????? Perforce SCM
    ·???????? Serena Dimensions
    ·???????? Subversion (SVN

    用戶點評

    目前還沒有客戶的評論,成為第一個評論者

    wpDiscuz
    提交你的需求
    • 相關文檔:

    咨詢軟件顧問:028-6516-2900

    提交
    聯系我們
    詢價/咨詢
    返回頂部 吉林十一选五