3

我正在开发一个项目,其中 Javascript 变得越来越复杂,需要作为我们自动化构建的一部分进行测试。

现在我有一个如下所示的项目结构:

- root
|- build.xml
|- tools
    |- js-test-driver
        |- js-test-driver.js
        |- js-test-driver.conf
|- src
    |- code
        |- projectname.web
            |- assets
                |- javascript
                    |- my-javascript-files.js
    |- tests
        |- projectname.javascript
            |- my-javascript-tests.js

在我的 Nant 构建中,我使用 Java 启动,然后将 js-test-driver.js 文件传递​​给它,并带有使用提供的配置文件的参数。现在我注意到,当我运行它时,它的配置文件路径似乎是相对于 js-test-driver 目录,而不是项目根目录。

我不认为这是一个问题,只需将以下内容放入我的配置文件中:

server: http://localhost:9876

load:
  - ../../src/code/projectname.web/assets/javascript/*.js
  - ../../src/tests/projectname.javascript/*.js

现在,如果我在 Nant 中运行我的任务,它会很好地启动测试驱动程序(目前在 Firefox 中)但只是失败了,说它找不到任何要运行的测试,但我发现令人困惑的是它将测试目录列为:

测试/../../src/tests/projectname.javascript/*.js

而且我一生都无法弄清楚为什么将这个“测试/”放在一切之前...如果我将 ../../../ 放入否定这个看似硬编码的测试目录,它告诉我路径不是有效的模式。

其他人有类似的事情或知道我哪里出错了吗?

4

1 回答 1

2

“tests”文件夹总是放在前面,它只是 jsTestDriver 提供文件的地方。引用 jsTestDriver 团队的 Cory Smith 的话:

与测试运行相关的所有资源都由 /test 提供。所有静态运行器资源都在 /static 下提供

JsTestDriver-1.3.2 存在相对路径问题。该问题已被讨论作为问题归档

您是否尝试在 js-test-driver.conf 中设置基本路径。这是相当新的,还没有记录,不确定它是如何受到相对路径问题的影响的。

basepath: /root/src
于 2011-04-13T07:27:36.627 回答