2

selenium-webdriverNodeJS と PhantomJS を使用した JavaScript バインディングと、小さなテスト ケースを作成しました。次のようになります。

it("should upload a file", function(done) {
    driver.get('http://mysite.com/upload.php);
    driver.findElement({className:'subpagetitle'}).getText().then(function(text) {
        expect(text).to.equal('Client Document');
    });
    var file = Path.resolve('./dummyfile.txt');
    driver.findElement({sizzle:'input[type=file]'}).sendKeys(file);
    driver.wait(function() {
        console.log('waiting');
        return driver.isElementPresent({sizzle:"button:contains('Save')"});
    }, 10000);
    driver.saveScreenshot('screenshots/doc_upload.png').then(done);
    driver.findElement({sizzle:"button:contains('Save')"}).click();
});

PhantomJS webdriver で実行すると、コマンドに到達したときにハングし、出力driver.waitconsole.logれません。

Chrome Webドライバーで問題なく動作します。PhantomJS では動作し.waitませんか、それとも何か間違っていますか?

4

0 に答える 0