Tag: 压力testing

茉莉花是在量angular器超时,Selenium服务器之后崩溃(问题出现在Chrome浏览器,Firefox – 确定)

真的需要一些帮助,我一直在挣扎了很长时间,不能自己搞清楚! 我正在使用chrome进行testing,当量angular器login到系统时,它突然停止,基本上崩溃 – 起初茉莉花是超时(明确延长超时),在这里input代码 然后量angular器无法长时间退出浏览器(从Selenium Serverlogin – Timed out receiving message from renderer: 295.458, Timed out receiving message from renderer: 10.000 ) 所以这里是代码: describe('Login with username and password', function () { it('Logging in with VALID credentials', function () { browser.get(''); expect(browser.getCurrentUrl()).toContain('login'); element(by.id('username')).sendKeys("username"); element(by.id('password')).sendKeys("password"); element(by.css('input[type="submit"]')).click();//here I am login into the system. On successful login, system loads […]

茉莉花间谍只检测调用Node.js导出对象的方法调用

我试图从一个Jasmine规范窥探Node.js模块中的依赖关系,并且遇到一些奇怪的行为。 Jasmine探讨了驻留在模块中的exports对象所公开的对象上的方法。 当我调用模块中的spied-on方法时 exports.umap() 间谍发现它。 但是,当我在模块中使用我分配给相同的方法的variables名称 var umap = exports.umap umap() 间谍不检测它。 这看起来很奇怪,因为var umap引用与exports.umap相同的方法。 任何人有任何想法,为什么这是? 下面的代码。 (我这样做的全部原因是我想模块的依赖关系,而不需要devise模块作为一个类,并使用dependency injection。) // mapper.js exports.umap = require('underscore').map; var umap = exports.umap; function map () { return exports.umap([1,2,3], function(el) {console.log(el);return el * 2}); // umap() goes unnoticed by the spy // return umap([1,2,3], function(el) {console.log(el);return el * 2}); } exports.map […]

如何testing构build在node.js和socket.io上的聊天应用程序的负载?

这里是一个简单的聊天应用程序与房间概念的链接,我指的是学习如何创buildsocket.io应用程序 – https://github.com/mcantelon/chatrooms 。 我需要testing这个应用程序为socket.io带来多less负载。 我如何testing成功连接了多less个连接? 有没有任何工具或方法来实现这一目标?

使用sinon和mocha来testingnode.js http.get

假设我有以下function 'use strict'; var http = require('http'); var getLikes = function(graphId, callback) { // request to get the # of likes var req = http.get('http://graph.facebook.com/' + graphId, function(response) { var str = ''; // while data is incoming, concatenate it response.on('data', function (chunk) { str += chunk; }); // data is fully recieved, and now […]

如何从Web框架中分离业务逻辑进行testing?

为了testingWeb应用程序,许多来源build议尽可能使您的业务逻辑免受Web框架的影响,以便可以在无需使用Web框架的情况下进行testing。 如何才能做到这一点? 如果我有一个注册页面,我需要validationHTTP POST数据(例如,确保出生date是一个date和必填字段给出),那么我需要将validation的数据持久化到数据库。 我不确定如何将与Web框架相关的部分从业务逻辑中分离出来,因为这是相当简单的function。 同样适用于login页面,帐户删除页面等 我认为web框架除了将HTTP数据传递给业务逻辑function之外,并不会做太多的工作,而业务逻辑function则会完成Web框架function在重构之前所做的一切(validation,持久化)。 所以我没有看到我正在获得什么。 例如它会变成 businessLogicRegister( request.data['email'], request.data['birthday'], request.data['username'] ); 有人可以举一些例子,例如像Express或Koa这样的基本的Node JS框架中的注册/login等基本function,以及将业务逻辑与Web框架分开的好方法吗? 以及这将如何帮助使代码更加unit testing?

如何检测我的express(4.0)node.js应用程序是否使用特定的中间件?

为了进行unit testing,我希望能够解决一些中间件是否在使用中。 例如 app.js var express = require('express'); var morgan = require('morgan'); module.exports = function(options) { var app = express(); if (options.logRequests) { app.use(morgan('dev')); } return app; } app.test.js (通过摩卡运行) describe('app', function(){ it('should log requests when initialized with the `log requests` option', function() { var app = require('./app)({ logRequests: true }); // Something to establish […]

Nodejs摩卡/应该在静音模式

我尝试在摩卡上find一个选项,以避免当我的某个断言失败时出现如此巨大的错误解释。 5 passing (561ms) 1 failing 1) Actors Actors list should get a list of well formed actors: Uncaught AssertionError: expected … to have property properties at test/actors.js:70:47 at Array.forEach (native) at Test.<anonymous> (test/actors.js:65:35) at Test.emit (events.js:95:17) at IncomingMessage.emit (events.js:117:20) at _stream_readable.js:943:16 我想只是传递和失败的信息,而不是其他的。 任何想法 ? 干杯,

在asynchronous系列中存储api请求

我有一个模块,调整图像, imageResizer ,使用graphicsmagick和另一个模块, apiCaller ,它有两个函数,一个用于get请求,另一个用于post请求,使用request模块。 在imageResizer我调用apiCaller.get ,一个触发图像resize的函数,然后调用,如果get请求成功,然后如果这样就可以了apiCaller.post被调用。 这是这样的事情: exports.imageResizer = function (arguments) { async.series([ function(callback) { apiCaller.get(callback); }, function(callback) { gm("filepath") .resize("sizes") .write("destinationPath", function (err) { if(err) // do something }, callback()); }, function(callback) { apiCallerPost(arguments) } ]); } apiCaller = {}; apiCaller.get = function (arguments, callback) { // setup variables and stuff function _callback […]

在风帆testing中加载灯具

文档只是说 // here you can load fixtures, etc. 我已经搞清楚了,我可以包括在内 var fixtures = require('./fixtures/models.js'); 在引导脚本中,所以完整的引导脚本是: /* * Lifts Sails before testing comenses. */ var Sails = require('sails'); var sails; before(function(done) { this.timeout(5000); Sails.lift({ // configuration for testing purposes environment: 'test', }, function(err, server) { sails = server; if (err) { return done(err); } // here you […]

如何确保在节点上使用mocha和phantomjs进行每个testing的未触及的HTML

我写了一个web应用程序,我想要使用摩卡和phantomjs从命令行做一些DOMtesting,我想找出最好的方法来做到这一点。 由于networking应用程序正在进行大量的DOM操作,我希望能够在每次testing中加载全新的DOM。 我试图使用phantomjs的网页模块,但我不知道如何在页面上运行摩卡testing(或者如果这是正确的方式)。 当然,我可以创build一个文件test.html ,其中包含通过脚本标签的mocha,然后运行phantomjs test.html 。 但是我怎样才能确保在每个testing中都没有触动DOM? 为每个具有相同内容的testing添加一个HTML文件将是一个噩梦来支持。 我到目前为止: 我的testrunner.js: var Mocha = require('mocha'), expect = require('expect.js'), fs = require('fs'), path = require('path'); var mocha = new Mocha( { ui: 'bdd' }); // I only add one file for now mocha.addFile( path.join(__dirname, 'tests_integration/test.js') ); mocha.run(function(failures){ process.on('exit', function () { process.exit(failures); }); }); 我的test.js:这是我奋斗的地方,因为我不知道如何在页面内运行testing: var […]