【问题标题】:How to run TAP::Harness tests written in Guile?如何运行用 Guile 编写的 TAP::Harness 测试?
【发布时间】:2008-09-16 13:06:46
【问题描述】:

通常的做法

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

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

【问题讨论】:

  • 您可能希望将答案拆分出来并将其作为实际答案发布,如下所示。这在网站设计方面会更好。

标签: unit-testing guile


【解决方案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
!#
;测试说明

【讨论】:

    猜你喜欢
    • 2011-07-03
    • 1970-01-01
    • 2015-03-11
    • 1970-01-01
    • 2023-03-24
    • 2023-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多