我有一个非常简单的HTML表单,我试图用各种数据对其进行测试。我使用IE对象在MSAccess/VBA中编写了原型(prototype)概念验证。它运行良好,但完成的测试产品必须使用PhantomJS。我已经让页面接口(interface)正常工作,并且表单填充得很好。我卡住的地方是触发提交按钮。我梳理过S.O.并尝试了所有建议,但没有任何效果。我正在使用PhantomJS1.9.7并使用直接的JavaScript测试脚本。我尝试了各种JavaScript技术来触发提交按钮。为了满足“只使用JQuery”的人群,我也试过了。什么都不起作用。当我在测试脚本末尾呈现表单时,我看到表单中填充
此代码无效:varpage=require('webpage').create();page.open('http://www.ebay.com/',function(){console.log('Pageloaded');page.includeJs('http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js',function(){console.log('jQueryincluded');page.render('C:/beforeclick.jpeg');console.log('Render1');page
我是第一次尝试phantomJS,我已经成功地从站点中提取了som数据,但是当我尝试将一些内容写入文件时,我收到错误:ReferenceError:找不到变量:fs这是我的脚本varpage=require('webpage').create();varfs=require('fs');page.onConsoleMessage=function(msg){console.log(msg);};page.open("http://www.pinterest.com/search/pins/?q=motorbike",function(status){if(status==="succe
我在...中有一个带有JS函数(通过鼠标单击调用)的页面标签。在我进行测试时,我遇到了.click方法多次无法正常工作的问题。因此我决定简单地手动调用该函数。但是,我在Internet上找不到任何资源可以教您如何执行此操作。我想避免点击链接并简单地调用doSumbit('5').谢谢!JS函数是:functiondoSubmit(infoTypeId){document.forms[1].INFOTYPEID.value=infoTypeId;document.forms[1].action=document.forms[1].action+"#"+infoTypeId;documen
这些文档并不是很有用-过于简短和模糊。据我了解docs,我们只需要在测试目录上运行casperjs命令并确保每个测试以Tester.done()结束。这是我的两个测试,//test1.jsvarcasper=require('casper').create();varurlPrefix="http://localhost/NavHawk2/";casper.start(urlPrefix,function(){this.test.assertSelectorHasText('title','Login','TitleOk!LoginPageExpected');this.test.as
在设置了page.clipRect后跟page.render之后,如何禁用clipRect,以便后续页面呈现整个视口(viewport)?page.clipRect={top:0,left:0,height:10,width:10};page.render('screencap.png');//croppedimagepage.clipRect='';page.render('fullscreen.png');//stillcroppedimage! 最佳答案 简单地重置clipRect的所有值:page.clipRect={lef
我正在尝试使用CasperJS构建功能测试。caseperjs由后端测试套件使用以下命令运行:PHANTOMJS_EXECUTABLE=../client/node_modules/phantomjs/bin/phantomjs../client/ext_modules/casperjs/bin/casperjstest../client/test/functional/init.coffee在init.coffee中,我想导入/包含紧挨着它的其他模块(文件)。怎么做?以下不起作用:require("user")我只想从其他文件中获取内容到init.coffee
我一直在通过page.evaluate()上的phantomJS引擎使用click(),它工作得很好。但有时它就是行不通,我不知道为什么。例如,我正在尝试单击按钮验证here我试过这个:page.evaluate(function(){document.getElementById('recaptcha-verify-button').click();});还有这个:rect=page.evaluate(function(){returndocument.getElementById('recaptcha-verify-button').getBoundingClientRect();
我们在JavaScript上的开源项目enchant.js中引入了带有travisCI的CI系统。https://github.com/wise9/enchant.js我们喜欢qunit测试,我们使用grunt.js(npm)运行它们,但它在TravisCI上失败并出现如下错误:PhantomJStimedout,possiblyduetoamissingQUnitstart()call.Use--forcetocontinue.完整的错误信息在这里:https://travis-ci.org/wise9/enchant.js/builds/4016842奇怪的是,每次我运行grunt
我知道还有很多其他类似的问题,但是答案并没有提供解决这个问题的方法。我的网站上使用了一个使用HTML5网络音频的JavaScript文件,我想对其进行单元测试。我研究过将QUnit与PhantomJS结合使用,在你说什么之前我知道Phantom不支持它(http://phantomjs.org/supported-web-standards.html),但是我想知道是否有办法解决这个问题?在浏览器中使用QUnit测试它会像您预期的那样工作,但我不想每次都使用浏览器测试它,我希望它在服务器上自动进行。其中一个测试失败的示例:QUnit.test("isPlaying",function(