草庐IT

模拟电路

全部标签

javascript - 有没有办法限制 javascript 性能来模拟慢速客户端

我在一个使用jQuery的网站上工作,并且有相当数量的使用$(document).ready()运行的javascript。在我的开发机器上,一切都运行良好,但它是一台非常强大的机器。我收到过使用旧硬件的人的报告,他们的行为看起来很奇怪,而且我相当确信这是因为在较慢的机器上处理这个初始javascript所花费的时间。显然,解决方案是整理这个初始的javascript,但这让我想知道-有没有人知道在Chrome或Firefox中减慢javascript执行速度的方法,以便能够在我的开发中模拟这些较慢的客户端机器?干杯!更新:回到发布此问题时,并没有与今天相同的工具集。当时VM选项是最佳

javascript - Jasmine 模拟 ajax 调用在 IE 中不起作用

我尝试编写一个允许模拟Ajax调用的规范。该测试用例在Chrome和Firefox等浏览器上运行良好。但是当我在IE(版本9,10)上运行测试用例时,我遇到了一些问题。当使用jQueryAjax进行正常的Ajax调用时会出现此问题。我在IE中得到如下错误:TypeError:Unabletogetvalueoftheproperty'response':objectisnullorundefined.我写的测试用例如下describe("mockingajax",function(){beforeEach(function(){jasmine.Ajax.install();});aft

javascript - 电子电路图组件连接算法

Closed.Thisquestionneedstobemorefocused。它当前不接受答案。想改善这个问题吗?更新问题,使其仅关注editingthispost的一个问题。7年前关闭。Improvethisquestion我正在创建一个网络服务,旨在模拟电子电路的工作方式。project甚至还没有进入Alpha阶段。我坚持该项目的一些重要里程碑:当一个人试图将一个组件的引脚连接到其他某个引脚时,应该建立连接线。首先,连接线只是一条直线,几乎没有任何方法可以更改它。然后,它变成了弯曲的线,可以添加,移动和删除点,从而确定了线的弯曲方式。现在,它(连接线)是使用A*算法创建的。实现还

javascript - 如何在 Vue.js 中测试计算属性?无法模拟 "data"

我想知道如何在Vue.js的单元测试中测试计算属性。我已经通过vue-cli(基于webpack)创建了一个新项目。例如这是我的组件:exportdefault{data(){return{source:[]}},methods:{removeDuplicates(arr){return[...newSet(arr)]}},computed:{types(){returnthis.removeDuplicates(this.source))}}}我试过这样测试it('shouldremoveduplicatesfromarray',()=>{constarr=[1,2,1,2,3]co

javascript - Jest 模拟一个yaml文件

我有一个yaml文件,其中包含一些配置信息,我在要测试的模块中使用它。但是当我测试它时我想模拟它所以它只有简化和静态数据,所以它很容易测试并且如果配置发生变化我不必编辑测试。到目前为止,这是我尝试过的://config/index.jsconstyaml=require('js-yaml');constfs=require('fs');constpath=require('path');constfilePath=path.join(__dirname,'stuff.yaml');module.exports={getStuff(){returnyaml.safeLoad(fs.rea

javascript - 在 "Actions must be plain objects. Use custom middleware for async actions."中使用 Jest 模拟结果

我有几个Redux-Thunk风格的函数,可以在一个文件中分派(dispatch)其他操作。其中一个Action将另一个作为其逻辑的一部分进行分派(dispatch)。它看起来类似于:exportconstfunctionToMock=()=>async(dispatch)=>{awaitdispatch({type:'abasicaction'});};exportconstfunctionToTest=()=>async(dispatch)=>{dispatch(functionToMock());};在我实际遇到的情况下,这些函数都涉及更多,并且每个都分派(dispatch)多个

javascript - 如何在单元测试环境中模拟 browserHistory?

我正在尝试测试使用react-router的browserHistory的React组件。为了确保能够访问browserHistory,我使用了createMemoryHistory(react-router)模块,如下所示:letcreateMemoryHistory=require('react-router/lib/createMemoryHistory');在测试环境中,我利用了JSDOM库。global.document=jsdom('');global.window=document.defaultView;然后我尝试将创建的历史对象分配给DOM:lethistory=cr

javascript - 如何用 sinon 模拟 hapi.js 回复以进行单元测试

是否有简单的方法来模拟hapi回复对象/函数以便于进行单元测试?我看到的hapi示例都使用server.inject和“实验室”框架进行测试。我很想知道如何继续使用mocha,并希望直接测试Controller而不是注入(inject)服务器。我应该使用sinon来模拟回复对象吗?测试/post.jsbefore(function(){PostController=proxyquire('../controllers/post',{'mongoose':mongooseMock});});it('shouldbeabletocreateapost',function(done){var

javascript - 如何创建一个可模拟的类来连接到 mongoDB?

我已经尝试创建一个类来连接到mongoDB(并使用(gridfs-stream)获得gridFS连接)。但是我确实遇到了两个问题:我有时会收到mongo错误serverinstanceininvalidstateconnected我不可能模拟这个类-使用jestJS所以如果有人可以帮助我优化这个类以获得一个真正扎实的工作类,我将非常感激。例如,我不喜欢connect()函数中的letthat=this。Examplerepo数据库类constmongo=require('mongodb')constGrid=require('gridfs-stream')const{promisify

javascript - Fabrice Bellard 使用什么技巧使他的 Javascript PC 模拟器如此之快?

法布里斯·贝拉德的PCemulatorimplementedinJavascript速度快得令人印象深刻——它会在几秒钟内在浏览器中启动一个小型Linux镜像。使用了哪些技术来获得这种性能? 最佳答案 我认为与现代JS解释器的“速度”分享一些普遍的荣誉在Bellard的技术列表中是一个遥远的话题(因为他没有取代浏览器的引擎)。他的优化技巧是什么?是个很好的问题,我想得到更详细的记录。到目前为止我能说出的要点(可选)JS类型数组排除了不必要的内存分配动态(调整大小)。固定类型(大小)允许分配连续的内存块(此类block中没有可变长度元