2

selenium-webdriver我用 NodeJS 和 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.wait命令时挂起,并且console.log永远不会被打印出来。

它与 Chrome 网络驱动程序一起运行良好。.wait不适用于 PhantomJS 还是我做错了什么?

4

0 回答 0