ここに私の完全な最初の動作テストがあります:
var expect = require('chai').expect;
var assert = require('assert');
var webdriverjs = require('webdriverjs');
var client = {};
var webdriverOptions = {
desiredCapabilities: {
browserName: 'phantomjs'
},
logLevel: 'verbose'
};
describe('Test mysite', function(){
before(function() {
client = webdriverjs.remote( webdriverOptions );
client.init();
});
var selector = "#mybodybody";
it('should see the correct title', function(done) {
client.url('http://localhost/mysite/')
.getTitle( function(err, title){
expect(err).to.be.null;
assert.strictEqual(title, 'My title page' );
})
.waitFor( selector, 2000, function(){
client.saveScreenshot( "./ExtractScreen.png" );
})
.waitFor( selector, 7000, function(){ })
.call(done);
});
after(function(done) {
client.end(done);
});
});
わかりました。大したことはありませんが、環境を正しくセットアップするために何時間も作業した後、合格しました。今、私がそれを機能させる唯一の方法は、waitFor() メソッドをいじって遅延を調整することです。動作しますが、pngファイルがディスクに保存されるのを確実に待つ方法がまだわかりません。テスト オーダーを処理するため、ファイルを安全に保存する前に、最終的にテスト スクリプトからハングアップします。
さて、このスクリーン セーブ シーケンスを改善し、スクリーンショットが失われないようにするにはどうすればよいでしょうか?