0

次のようなupload.jsテストスクリプトがあります-

casper.test.comment('upload test!');

var casper=require('casper').create({
 waitTimeout: 30000, //max out upload time
});
var fileName='/Users/steven/test.png'; 

casper.start('http://steven.dev/', function () {
  casper.thenClick('#btn_upload', function () {
    this.test.assertUrlMatch ('http://steven.dev/upload', 'on upload page ');
  }); 

casper.then(function(){
  this.evaluate(function(fileName)     
  {__utils__.findOne('input[type="file"]').setAttribute('value',fileName)},   
 {fileName:fileName});
 this.echo('Name='+this.evaluate(function() {return  
 __utils__.findOne('input[type="file"]').getAttribute('name')}));
this.echo('Value='+this.evaluate(function() {return 
__utils__.findOne('input[type="file"]').getAttribute('value')}));
this.page.uploadFile('input[type="file"]',fileName);
}); 

casper.then(function() {
  this.click('#submit_button'); 
}); 

casper.waitForSelector('.upload_progress', function() {
  this.echo('uploading...');
}); 

casper.waitForText("Done!", function() {
  this.echo('success!');
}); 

casper.then(function() {
  this.test.assertVisible ('#tools','see tools');
});

casper.run(function() {
  this.test.done(2);
  this.exit();
});

--xunitのようなパラメーターを使用してこのテストを実行すると、テストが実行casperjs test upload.js --xunit=log.xmlされるだけで、ログ ファイルはエクスポートされません。私のスイートには、ファイルを正常にエクスポートする2つのテストがあります。すごい!

4

1 に答える 1

1

しばらくこれに苦労しました。少なくとも私にとって重要なのは、それらvar casper = require('casper').create(...)を完全に削除することでした。どうやら、「casperjs test myfile.js」でテストを実行する場合は不要のようです。

于 2013-08-21T22:52:43.373 に答える