2017-08-07 80 views
0

这可能是一个愚蠢的问题(CasperJS小白):从CasperJS文档给出的这个例子:通过CLI的CasperJS:如何加载外部JS文件?

// cow-test.js 
casper.test.begin('Cow can moo', 2, function suite(test) { 
    var cow = new Cow(); 
    test.assertEquals(cow.moo(), 'moo!'); 
    test.assert(cow.mowed); 
    test.done(); 
}); 

如果Cow()在文件\path\to\myCowClass.js定义,当我通过CLI使用CasperJS我怎么加载这个类?这是files config param或clientScripts的工作吗?

如果有人有简明的教程/例子,我会非常喜欢。

回答

1

让我们把你的Cow.js文件。我认为它看起来像这样:

function Cow() { 
    this.mooed = false; 
} 

Cow.prototype.moo = function() { 
    this.mooed = true; 
    return 'moo!'; 
} 

此文件应该是您的测试的依赖项。在这里,您可以:

  • 使用使用phantom.injectJs

includes选项

  • 从测试文件注入你的“类”文件有了--includes

    命令行注入你的“类”文件
    casperjs test --includes=/path/to/Cow.js cow-test.js 
    

    With phantom.injectJs

    // cow-test.js 
    phantom.injectJs('/path/to/Cow.js'); 
    
    casper.test.begin('Cow can moo', 2, function suite(test) { 
        var cow = new Cow(); 
        test.assertEquals(cow.moo(), 'moo!'); 
        test.assert(cow.mooed); 
        test.done(); 
    }); 
    
  • +0

    正是我在找的东西! Badacadabra,感谢您的帮助和简洁的例子! – itsame69