Tag: 浏览器自动化

等待Selenium的JavaScript事件

我正在Selenium(Node.js)之上构build一个自动化框架,其中包含许多步骤。 每一步都跟上一个步骤,完成之后,返回一个承诺(像Selenium的driver.click()等)返回的承诺。 是否有可能等待JavaScript事件在浏览器上触发? 如果是这样,那么遵循的模式是什么?

与NightmareJS的asynchronous问题

我正在尝试使用nightmarejs来构build一个脚本,这个脚本可以一次又一次地点击一个button,就像在评论部分底部的那个button一样,每次按下它时都会载入较旧的评论(例如:youtube.com/观看?v = pZISJqJbQuU&list = RDpZISJqJbQuU#t = 3),并在没有更多button被点击时停止。 我曾尝试调用评估,只为end()方法先被调用,并取消进程。 我已经尝试使用setTimeout,setInterval,然后(),将循环转换为recursion。 每次评估()都会完成它的工作,但是在完成工作之前不能退出(只是挂起)或者退出,因为和end()的竞争条件。 有没有经验丰富的nightmarejs用户? function youtube_button_clicker(group) { var nightmare = Nightmare({ show: true }); nightmare .goto(url) .inject('js', 'jquery-3.1.0.js') .then( () => nightmare. evaluate(function() { for (i=0;i>LEN;i++) { setTimeout(() => { $(button_element).click() }, i * 2000); } return "done" })) .catch(function (error) { console.error('Search failed:', error); }); } 删除.end()方法并挂起,重新放置.end(),并跳过该过程 […]

量angular器debugging模式给出“致命错误:CALL_AND_RETRY_LAST分配失败 – 进程内存不足”

我正在运行一个脚本,使用NodeJS 0.12.4,Protractor 2.1.0来自动login网页,我的系统是Win 8.1,i7 2.5 GHz,16 GB RAM,所以我认为我不太可能跑出去的记忆! 只是FYI,当我注释代码中的所有语句,但browser.get(),我在交互模式下使用browser.pause()在开始时逐一执行它们,代码工作。 这是spec.js文件的代码: describe('Web Page Login', function() { it('should login', function() { browser.get('http://URL_HERE'); // opens page //browser.pause(); element(by.css('[ng-click="showLogin(true);"]')).click();// clicks the login link to open the login dialog var user = element(by.model('user.login.username'));// input user name user.sendKeys('user'); var pass = element(by.model('user.login.password')); // input password pass.sendKeys('pass'); element(by.css('[ng-click="login();"]')).click();// clicks the login button […]

在竹子上运行时,量angular器testing用例会冻结

当我在Visual Studio上运行我的testing时,我的testing成功运行。 但是,当我尝试在竹上运行它,我的浏览器冻结,我的testing失败,茉莉花超时exception。 请find我的量angular器conf文件: var HtmlScreenshotReporter = require('protractor-jasmine2-screenshot-reporter'); var reporters = require('jasmine-reporters'); var co = require('co'); // Example usage: // protractor –env=local // protractor –env=local –specs=test/road/road-missing.js var reporter = new HtmlScreenshotReporter({ dest: 'target/screenshots', filename: 'Test_Report.html', fixedScreenshotName: true }); var junitReporter = new reporters.JUnitXmlReporter({ savePath: 'target/screenshots', consolidateAll: false }); var customReporter = { specStarted: function(result) { […]

NodeJS应用程序中的function自动化Code​​Coverage

我正在寻找可以帮助我确定nodeJs中的function自动化覆盖的工具的指针。 (这不是unit testing!)。 我有很多运行在NodeJS中的前端应用程序的selenium自动化。 但是我想知道这些自动化的function覆盖面。 (我之前使用的是基于java的jacoco)