簡體   English   中英

如何使用 DejaGnu 設置單元測試

[英]How to setup unit tests with DejaGnu

我正在嘗試學習 DejaGnu ( https://www.gnu.org/software/dejagnu/ ) 並希望將其用作 C API 單元測試的框架。 我的構建系統基於 Autotools。

./testsuite的子目錄中,我有許多 C 文件,每個文件都包含dejagnu.h並使用其過程報告某些測試的通過和失敗。

./testsuite ,我的Makefile.am有一行AUTOMAKE_OPTIONS=dejagnu ,這會導致make check調用 DejaGnu 的runtest

我現在缺少的是一些膠水代碼(可能是一些 Expect 文件),它讓runtest通過單元測試找到我的 C 文件,執行它們並收集結果。

我正在尋找比 DejaGnu 在其手冊中的描述更好的解釋、示例設置或指向某個開源項目的鏈接,這些項目實際上在其構建系統中實現了我的想法。

(我不是要求替代工具。這是一個特別是關於 DejaGnu 的問題。)

使用 dejagnu.h 中定義的 pass/fail 函數僅對單元測試的批處理工具有效。 您需要的是一個簡單的 xx.exp 文件,如下所示:

load_lib dejagnu.exp

host_execute $srcdir/unit-code/unittest

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM