[英]How do I run unit tests using the GLib framework?
我正在嘗試對我正在使用GLib編寫的一些C代碼運行簡單的單元測試。 我正在嘗試做類似的事情:
#include <math.h>
#include <stdio.h>
#include <glib.h>
static void
test_stuff ()
{
g_assert (1 == 1); //Say
}
int main (int argc, char **argv)
{
g_test_init (&argc, &argv);
g_test_add_func ("/TestTest", test_stuff);
return g_test_run();
}
但是當我編譯(比如一個名為exec的二進制文件)並嘗試使用gtester運行它(甚至直接運行所述二進制文件)時,我收到以下錯誤:
me@laptop:tests$ gtester exec
TEST: exec... (pid=6503)
(process:6503): GLib-CRITICAL **: g_test_init: assertion `vararg1 == NULL' failed
FAIL: exec
Terminated
有沒有我遺漏的東西,也許我應該在運行測試時傳遞變量?
你錯過了g_test_init()
函數的參數。 文檔將原型顯示為:
void g_test_init(int *argc,
char ***argv,
...);
和:
...:保留以供將來擴展。 目前,您必須傳遞NULL。
因此,您需要傳遞NULL
作為第三個參數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.