Automake 的測試套件 make check-TESTS - Linux

By Genevieve
at 2012-03-23T14:02
at 2012-03-23T14:02
Table of Contents
在寫程式的時候會想要寫一些測試套件[1]來驗證程式的功能是否正常,Automake 支援了
這種需求。
一般來說寫一個給 Hello World 程式的 Makefile.am 會長得像以下這樣:
bin_PROGRAMS = hello
hello_SOURCES = hello.c
如果說希望能夠在編譯完程式後,順便執行一下來檢查,就可以加一行:
bin_PROGRAMS = hello
hello_SOURCES = hello.c
TESTS = $(bin_PROGRAMS)
這樣一來就可以執行 make check 來自動編譯並且執行測試; 只是通常不會想要把測試
程式釋出給一般人使用,所以就會改寫成:
check_PROGRAMS = hello
hello_SOURCES = hello.c
TESTS = $(check_PROGRAMS)
這樣就只會在 make check 的時候,編譯 hello 這隻程式並且自動執行它來做測試。
如果想要看到彩色的測試結果,就要修改 configure.ac 加上 color-tests
像是以下這樣:
AC_PREREQ([2.68])
AC_INIT([hello], [0.1], [[email protected]])
AC_CONFIG_SRCDIR([hello.c])
AC_CONFIG_HEADERS([config.h])
AM_INIT_AUTOMAKE([foreign color-tests])
AM_MAINTAINER_MODE([enable])
其實 GNU Build System [2] 很好用的,只是要多看 info Automake 的文件來理解
它的使用方法。:)
對以上內容不太瞭解的,可以看簡報 GNU Build System (aka Autotools)[3] 入門一下。
[1]: http://zh.wikipedia.org/wiki/%E6%B5%8B%E8%AF%95%E5%A5%97%E4%BB%B6
[2]: http://en.wikipedia.org/wiki/GNU_build_system
[3]: http://fourdollars.github.com/autotools/
--
原文 http://fourdollars.blogspot.com/2012/03/automake-make-check-tests.html
--
這種需求。
一般來說寫一個給 Hello World 程式的 Makefile.am 會長得像以下這樣:
bin_PROGRAMS = hello
hello_SOURCES = hello.c
如果說希望能夠在編譯完程式後,順便執行一下來檢查,就可以加一行:
bin_PROGRAMS = hello
hello_SOURCES = hello.c
TESTS = $(bin_PROGRAMS)
這樣一來就可以執行 make check 來自動編譯並且執行測試; 只是通常不會想要把測試
程式釋出給一般人使用,所以就會改寫成:
check_PROGRAMS = hello
hello_SOURCES = hello.c
TESTS = $(check_PROGRAMS)
這樣就只會在 make check 的時候,編譯 hello 這隻程式並且自動執行它來做測試。
如果想要看到彩色的測試結果,就要修改 configure.ac 加上 color-tests
像是以下這樣:
AC_PREREQ([2.68])
AC_INIT([hello], [0.1], [[email protected]])
AC_CONFIG_SRCDIR([hello.c])
AC_CONFIG_HEADERS([config.h])
AM_INIT_AUTOMAKE([foreign color-tests])
AM_MAINTAINER_MODE([enable])
其實 GNU Build System [2] 很好用的,只是要多看 info Automake 的文件來理解
它的使用方法。:)
對以上內容不太瞭解的,可以看簡報 GNU Build System (aka Autotools)[3] 入門一下。
[1]: http://zh.wikipedia.org/wiki/%E6%B5%8B%E8%AF%95%E5%A5%97%E4%BB%B6
[2]: http://en.wikipedia.org/wiki/GNU_build_system
[3]: http://fourdollars.github.com/autotools/
--
原文 http://fourdollars.blogspot.com/2012/03/automake-make-check-tests.html
--
Tags:
Linux
All Comments
Related Posts
Ubuntu的權限問題

By Wallis
at 2012-03-22T18:08
at 2012-03-22T18:08
perl呼叫內部程式

By Todd Johnson
at 2012-03-22T01:40
at 2012-03-22T01:40
mkisofs 包4G已上檔案問題

By Michael
at 2012-03-21T17:41
at 2012-03-21T17:41
多人遠端登入問題

By Irma
at 2012-03-21T12:47
at 2012-03-21T12:47
安裝openwebmail的問題

By Charlotte
at 2012-03-20T22:37
at 2012-03-20T22:37