草庐IT

dyld_stub_binder

全部标签

c++ - 纯虚方法 stub 是在什么条件下生成的?

我在很多地方(例如here)读到过关于人们在运行时遇到“纯虚方法调用”错误和程序崩溃的信息。Thisanswer这么说Mostcompilersassignsuchvtableentriestoastubwhichemitsanerrorbeforeabortingtheprogram.和thisone甚至说ItaniumABI指定了该stub是什么。问题是:我所有试图看到这种行为的尝试都被编译器(GCC6.4.1)在编译时捕获为undefinedreference。例如,当从抽象类的构造函数中调用纯虚函数时,我会收到警告从构造函数调用的纯虚拟‘virtualintX::f()’但同时

javascript - ES2016 类,Sinon Stub 构造函数

我正在尝试用sinon和es2016消除一个super调用,但我运气不佳。任何想法为什么这不起作用?运行Node6.2.2,这可能是其类/构造函数实现的问题。.babelrc文件:{"presets":["es2016"],"plugins":["transform-es2015-modules-commonjs","transform-async-to-generator"]}测试:importsinonfrom'sinon';classFoo{constructor(message){console.log(message)}}classBarextendsFoo{construc

javascript - stub Date.now() 和 Math.random()

我正在使用Mocha与Sinon对我的node.js模块进行单元测试。我已经成功地模拟了其他依赖项(我编写的其他模块),但我遇到了stub非纯函数(如Math.random()和Date.now())。我尝试了以下方法(已简化,以便这个问题没有那么本地化),但由于明显的范围问题,Math.random()没有被stub。Math的实例在测试文件和mymodule.js之间是独立的。test.jsvarsinon=require('sinon'),mymodule=require('./mymodule.js'),other=require('./other.js');describe(

node.js - 如何使用 sinon stub 用 typescript 编写的类的私有(private)方法

我正在为一个公共(public)方法编写单元测试,该方法反过来调用用typescript(NodeJS)编写的类的私有(private)方法。示例代码classA{constructor(){}publicmethod1(){if(this.method2()){//Dosomething}else{//Dosomethingelse}}privatemethod2(){returntrue;}}现在要测试method1()我需要stubmethod2()这是一个私有(private)方法。这是我正在尝试的:sinon.stub(A.prototype,"method2");Types

javascript - stub 模块功能

编辑:更精确一点。我想测试我们团队创建的GithubAPI包装器扩展的用例。对于测试,我们不想直接使用API包装器扩展,所以我们想stub它的功能。对API包装器的所有调用都应该为测试而stub,而不仅仅是创建一个克隆stub。我在Node.js中有一个模块“github”:module.exports=function(args,done){...}我要求这样:vargithub=require('../services/github');现在,我想使用Sinon.jsstubgithub(...):varstub_github=sinon.stub(???,"github",fun

java - dyld : Symbol not found: _JNI_CreateJavaVM

这个错误是什么意思?我需要做什么来解决它?我正在尝试在MacOSElCaptain上为node.js(特别是xslt4node)运行基于java的模块,但每次我收到此错误。对于Windows用户来说,一切似乎都正常。完整的错误如下:dyld:lazysymbolbindingfailed:Symbolnotfound:_JNI_CreateJavaVMReferencedfrom:/projects/main-project/node_modules/java/build/Release/nodejavabridge_bindings.nodeExpectedin:flatnamesp

javascript - 使用 Sinon 在 javascript 中 stub Redis 交互

我在node.js中工作。我的应用通过node_redis模块与Redis交互。我正在使用mocha和sinon来自动测试我的应用程序。我的应用看起来像这样:...snipvarredisClient=redis.createClient(redisPort,redisHost);varsomeValue=redisClient.get("someKey");returnsomeValue;....我想stub对redisClient.get()的调用。为此,我还需要对redis.createClient()的调用stub-我认为...这是我的测试代码:...varredis=requ

javascript - 在 sinon 中 stub 整个类以进行测试

序言:我已经阅读了很多SO和博客文章,但没有看到任何可以回答这个特定问题的内容。也许我只是在寻找错误的东西......假设我正在开发一个WidgetManager类,它将对Widget对象进行操作。如何使用sinon来测试WidgetManager是否正确使用了WidgetAPI,而不需要拉入整个Widget库?基本原理:WidgetManager的测试应该与Widget类分离。也许我还没有写Widget,或者Widget是一个外部库。无论哪种方式,我都应该能够测试WidgetManager是否正确使用了Widget的API,而无需创建真正的Widget。我知道sinon模拟只能在现有

node.js - dyld : lazy symbol binding failed: Symbol not found: _node_module_register

我已尝试重新安装和重建npm,但问题仍然存在。最初,问题出在模块mongodb:我没有那个包,所以我使用这个命令npminstallmongodbmongodb.它显示以下错误:dyld:未找到符号:_node_module_register 最佳答案 尝试删除您的node_modules文件夹并再次运行npminstall。rm-rfnode_modules/npminstall这应该可以解决它。 关于node.js-dyld:lazysymbolbindingfailed:Symbo

node.js - 如何在 ES6 中使用 sinon stub 静态方法?

varMyClassStub=sinon.createStubInstance(MyClass);MyClassStub不包含静态方法。如何解决? 最佳答案 静态方法:sinon.stub(YourClass,'yourClassMethod').callsFake(()=>{return{}})不是静态方法:sinon.stub(YourClass.prototype,'yourClassMethod').callsFake(()=>{return{}}) 关于node.js-如何在E