如何编写自己的CasperJS模块?

例如,我有一个经常需要执行的步骤,例如用户在一些testing之前login。

如何为CasperJS编写可重用的代码块? 他们扩展CasperJS的文档只写成一个文件。

谢谢!

这是一个简单的方法。 如果不熟悉coffeescript,请将其转换为js2coffee上的JS。

testing/卡斯帕/ test.coolPage.coffee

loginModule = require("./test.login") loginModule.login("test","testPW") casper.test.comment "Testing cool stuff, should be logged in by now" casper.thenOpen casper.cli.get("url") + "/myCoolPage", -> @test.assertExists '#myCoolDiv' casper.then () -> @test.assertExists '.somethingElse' casper.run -> @test.done() 

testing/卡斯帕/ test.login.coffee

 exports.login = (username, password) -> casper.test.comment "Loggin in with username \"#{username}\", password \"#{password}\"" casper.start casper.cli.get("url") + "/login", -> @test.assertExists "input[name=username]", "input[name=password]" casper.then () -> @sendKeys "input[name=username]", username @sendKeys "input[name=password]", password @click "input[type=submit]" casper.then () -> #assert you got logged in 

从命令行运行:

 cd tests/casper casperjs test test.coolPage.coffee --url=http..my-test-url