0

我正在尝试使用 coffeescript 和 casperjs (1.0.0-RC4) 来完成繁琐的登录,并希望填写一个使用 name 属性作为其字段的表单(例如<input type='text' name='accountname'></input>)。我最初打算使用@fill 来完成表单,但是遇到了问题(我猜),因为 id 属性不在输入标签中。所以,我决定使用@sendKeys 方法,但它抛出了一个非常令人困惑的错误:

TypeError: 'undefined' is not a function (evaluating 'this.sendKeys('#accountname', developerAccountName)')

在此代码段中是否有明显的我做错的事情:

#!/usr/bin/env casperjs

developerAccountName = "user@user.com"
developerPassword = "password"

casper = require("casper").create(
    verbose: true
    logLevel: "debug"
    );

casper.start "http://www.example.com"

casper.thenClick "#content .maincontent .image.first a"

casper.thenClick ".button.blue"

casper.then ->
    if (@exists "#accountname") and (@exists "#accountpassword")
        @sendKeys '#accountname', developerAccountName
        @sendKeys '#accountpassword', developerPassword
        @click "form .signin-button"
    else
        @echo "Couldn't find the fields"

casper.run ->
    @echo "Complete."
4

1 回答 1

3

The sendKeys method wasn't available until 1.0.0.RC5

于 2012-12-16T18:42:54.520 回答