Tag: 压力testing

摩卡testing不返回mongod保存

我在使用nodejs,MongoDB和mochatesting用户validation方法时遇到了麻烦。 错误 ^CHarrys-MacBook-Pro:Phonex hcbh96$ npm run test-watch > ls@1.0.0 test-watch /Users/hcbh96/Desktop/PhonexDevelopment/Phonex > nodemon –exec 'npm test' [nodemon] 1.12.1 [nodemon] to restart at any time, enter `rs` [nodemon] watching: *.* [nodemon] starting `npm test` > ls@1.0.0 test /Users/hcbh96/Desktop/PhonexDevelopment/Phonex > mocha tests/**/*.test.js Node app is running at localhost: + 3000 Post /tempUser { phone: '5005550006', countryCode: '+1', […]

testingfindOneAndUpdate插入重复预防

您好我有一个节点js代码,使用findOneAndUpdate与Upsert = true创build一个新的MongoDB文档,如果不存在。 我想testing两个asynchronous线程同时调用我的代码,然后它会创build重复。 那甚至有可能testing? 我怎样才能做到这一点。 我是一个初学者在testing。

使用ElementArrayFinder.filter()和async / await

Webdriver的Control Flow启用时,我一直使用下面的函数来过滤元素数组: filterElementsByText (elemList, comparator, locator) { return elemList.filter((elem) => { let searchTarget = locator ? elem.element(locator) : elem return searchTarget.getText().then((text) => text === comparator) }) } 我现在试图迁移我的回购使用async / await需要closures控制stream。 这个转换大部分都是成功的,但是我在上面的函数中遇到了麻烦。 间歇性地,我看到这个错误: 失败:java.net.ConnectException:连接被拒绝:连接 我能够用我写的一个testing用例https://angularjs.org来重现这个问题,虽然它发生的频率比我自己的应用要高得多。 let todoList = element.all(by.repeater('todo in todoList.todos')) let todoText = element(by.model('todoList.todoText')) let todoSubmit = element(by.css('[value="add"]')) let addItem = async (itemLabel = 'write […]

加快meteortesting刷新

在testingMeteor应用程序时,我注意到Meteor做了很多重复的任务,比如 下载缺less的软件包(几秒钟) 在“下载缺失的软件包”之前,尤其是在unit testing或其他特定于应用程序的代码(即没有新的导入)内进行更改时,检查更新的package.json和.meteor/versions会更有效率。 build立web.cordova(我不使用) 我非常肯定,指定testing的目标是可能的,所以这个项目只是为web.browser构build,例如。 如果有错误,一切都build立和执行三次(失败三次)。 当testing失败时,为什么必须使用完全相同的代码再次尝试? 有没有什么用例,这是有道理的? 现在,每当testing模块发生变化时,由于所有这些任务,testing再次运行几秒钟。 有没有什么办法来优化,使其更高效和更快?

使用appium节点服务器在模拟器上安装Android APK

我有一个在NODE.JS中创build的appium服务器。 我正在制作appiumtesting来运行模拟器并安装apk。 无法在网上find任何具体的例子,如何使用节点服务器。 大多数情况下,桌面安装的appium服务器就是这样的例子 我需要一些关于如何做到这一点的指导方针。 为了进一步细化,我想使用appium Node服务器来执行以下的事情(不要在应用程序源代码中纠正任何testing用例) 启动模拟器或可能的话,如果可以在真实的设备上进行 在模拟器/设备上安装APK 启动在模拟器/设备上启动应用程序的意图。 意图还包含数据包中的数据 点击应用程序中的button。

誓言:testingasynchronous交织

有没有一种方法来testing(潜在的)与asynchronous函数交叉誓言? 例如: // Topic portion var user = new User('jacob') user.set('email,'foo@bar.com') user.save() // a user.set('email',derp@cherp.com') user.save() // b user.refresh(this.callback) // Reload from database // Callback assert.equals(user.email,'derp@cherp.com') 这两个节省之间可能会有一个竞赛条件。 在编写我的testing时,我想确保我的API确保b完成最后(并且我们拥有正确的电子邮件最终值)。 随着写作的方式,testing将在一些巧合的时间通过。

基准JavaScript执行与callback函数

我有一些JavaScript,我试图基准执行所需的时间。 问题在于for循环快速完成,同时Item.save()方法的执行尚未完成。 任何build议如何计时,这将考虑循环内容的完整执行时间? 谢谢! var start = new Date().getTime(); var Item = new Item(); for (i = 0; i < 500; i++) { var item = {}; item.name = 5; item.id = 10; item.set = []; Item.save(item, function (err, res) { console.log(res); }); } var elapsed = new Date().getTime() – start; console.log(elapsed); 编辑:这是在一个nodejs服务器上。

Node.js apache bench test

玩,并试图看看有多快node.js可以从磁盘使用Apache的工作台静态文件 ab -r -n 10000 -c 1000 http://server:8080/loadtestfile.txt 我在OSX Lion的Ubuntu 11.04 x64 VirtualBox VM上遇到ulimit问题 (node) Hit max file limit. Increase "ulimit – n" 我不能再增加限制了。 $ ulimit -n 1000000 $ limit -n 1100000 -su: ulimit: open files: cannot modify limit: Operation not permitted 这是强制node.js从磁盘重新加载文件来为每个HTTP请求提供服务的正确方法吗? 我如何增加超过1000000的限制? 正常curl请求的作品: curl http://server:8080/loadtestfile.txt 码 var sys = require('sys'), http = require('http'), […]

我应该如何侦察在另一个对象内调用的构造函数?

比方说,我有一个对象,有一个function,创build另一个对象作为其操作的一部分。 sinon = require('sinon') chai = require 'chai' sinonChai = require("sinon-chai") chai.use(sinonChai) chai.should() Paper = {} Paper.Origami = require('../assets/src/coffee/origami.coffee').Paper.Origami describe '#throwOrigami', -> it 'should create origami and throw it', -> m = new Monkey() throwSpy = sinon.spy(m, 'throwOrigami') createSpy = sinon.spy(Paper, 'Origami') # next function creates origami, then 'throws' it at someone m.throwOrigami(); createSpy.should.have.been.calledWithNew throwSpy.should.have.been.calledOnce […]

使用集群的Node.js性能

我一直在试图弄清楚这一点。 我在节点上写了一个非常简单的http服务器来衡量使用集群的效果。 这是我的代码: var cluster = require('cluster'); var http = require('http'); var numCPUs = 0; //require('os').cpus().length; if(process.argv.length >= 3) { numCPUs = process.argv[2]; } if (cluster.isMaster && numCPUs > 0) { console.log("launching " + numCPUs + " procs"); // Fork workers. for (var i = 0; i < numCPUs; i++) { console.log("launching proc #" + […]