1

通常的做法

测试:
    $(PERL) "-MExtUtils::Command::MM" "-e" "test_harness($(TEST_VERBOSE), '$(INCDIRS)')" $(TEST_FILES)

无法运行 Guile 脚本,因为它向 Guile 传递了额外的参数“-w”。

4

1 回答 1

1

一种可能的方法是按如下方式设置您的项目。

你的目录结构如下:

./project 你的项目文件
./project/t/*.t 你的单元测试脚本
./project/t/scripts/* 单元测试使用的辅助脚本

您的./project/Makefile包含以下内容:

PERL = /usr/bin/perl
TEST_LIBDIRS = ./lib
RUN_GUILE_TESTS = ./t/scripts/RunGuileTests.pl
TEST_FILES = ./t/*.t

测试:
    $(PERL) -I$(TEST_LIBDIRS) $(RUN_GUILE_TESTS) $(TEST_FILES)

您的./project/t/scripts/RunGuileTests.pl内容是:

#!/usr/bin/perl -w
# 运行 Guile 测试 - 文件名作为脚本的参数给出。

使用 TAP::Harness;
我的@tests = @ARGV;
我的 %args = (
    冗长=> 0,
    计时器 => 1,
    show_count => 1,
    exec => ['/usr/bin/guile', '-s'],
    );
我的 $harness = TAP::Harness->new( \%args );
        $harness->runtests(@tests);

# RunGuileTests.pl 结束

您的 Guile 测试脚本应以:

#!/usr/bin/guile -s
!#
; 您的测试说明
于 2008-09-16T13:33:10.720 回答