1

我是幻影的新手,希望我错过了一些明显的东西。我已将这个示例剥离到最低限度,以显示在这种情况下与 Jasmine 集成的问题。

在我的 javascript 文件中,我调用page.open(...)并传入包含 Jasmine 的本地 html 文件的名称作为参数。html 文件如下所示:

<!DOCTYPE html>
<h2>
    Reporter</h2>
<head>
    <title>Jasmine Spec Runner</title>
    <link rel="stylesheet" type="text/css" href="Content/jasmine.css">
    <script type="text/javascript" src="Scripts/External/Jasmine/jasmine.js"></script>

    <script type="text/javascript">
        jasmine.getEnv();
        jasmine.getEnv().addReporter(new jasmine.TeamcityReporter());
        jasmine.getEnv().addReporter(new jasmine.TrivialReporter());
        jasmine.getEnv().execute();
    </script>
</head>

当我打电话时,phamtomjs myJavaScriptFile.js myHtmlFile.htm我从 phantom 收到一条消息,说它找不到名为 jasmine 的变量。(指jasmine.getEnv()方法调用。)

我知道 jasmine.js 文件在该 html 文件中是可见的,所以我不确定 phantom 有什么问题,或者如何进一步调试问题?

4

1 回答 1

0

对我来说,这似乎是一个路径问题。Phantom 不喜欢 htm 文件路径中的反斜杠,但想要正斜杠。当我这样做时,发现茉莉花不再是问题:

phantomjs c:\folder1\jasmine_tests\myJavaScriptFile.js c:\folder1/jasmine_tests/myHtmlFile.htm
于 2013-01-16T16:20:57.793 回答