草庐IT

Stubbing

全部标签

javascript - 轻松清理 sinon stub

有没有一种方法可以轻松地重置所有sinonspy模拟和stub,这些模拟和stub可以与mocha的beforeEachblock一起干净地工作。我看到沙盒是一个选项,但我不知道如何为此使用沙盒beforeEach->sinon.stubsome,'method'sinon.stubsome,'mother'afterEach->#Iwanttoavoidtheselinessome.method.restore()some.other.restore()it'shouldcallasomemethodandnotother',->some.method()assert.calleds

java - Mockito:如何在不模拟所有参数的情况下轻松 stub 方法

我有一个我想stub的方法,但它有很多参数。我怎样才能避免模拟所有参数但仍然stub方法。例如://MethodtostubpublicvoidmyMethod(Barbar,Foofoo,FooBarfooBar,BarFoobarFoo,.....endlesslistofparameters..); 最佳答案 我不太了解您在使用Mockito时遇到了什么问题。假设您创建了一个包含myMethod()方法的接口(interface)的模拟,然后您可以只验证您感兴趣的方法的参数。例如(假设接口(interface)称为MyInte

java - Mockito:如何在不模拟所有参数的情况下轻松 stub 方法

我有一个我想stub的方法,但它有很多参数。我怎样才能避免模拟所有参数但仍然stub方法。例如://MethodtostubpublicvoidmyMethod(Barbar,Foofoo,FooBarfooBar,BarFoobarFoo,.....endlesslistofparameters..); 最佳答案 我不太了解您在使用Mockito时遇到了什么问题。假设您创建了一个包含myMethod()方法的接口(interface)的模拟,然后您可以只验证您感兴趣的方法的参数。例如(假设接口(interface)称为MyInte

ruby-on-rails - Stubbing 葡萄 helper

我有带GrapeAPI的Rails应用。接口(interface)由Backbone完成,GrapeAPI为其提供所有数据。它返回的都是用户特定的东西,所以我需要引用当前登录的用户。简化版如下所示:API初始化:moduleMyAPIclassAPI端点:moduleMyAPImoduleEndpointsclassNotesAPI助手:moduleMyAPI::APIHelpers#@return[User]defcurrent_userenv['warden'].userenddefauthenticate!unlesscurrent_usererror!('401Unauthor

javascript - stubbing process.exit 开 Jest

我有代码可以做类似的事情functionmyFunc(condition){if(condition){process.exit(ERROR_CODE)}}我如何在Jest中测试它?用jest.fn()覆盖process中的exit并在测试不起作用后将其返回,因为进程退出 最佳答案 此线程中的其他建议会导致我这边出现错误,任何使用process.exit的测试都会无限期地运行。以下选项适用于TypeScript,但它也适用于JavaScript:constmockExit=jest.spyOn(process,'exit').moc

android - 使用 Mockito Kotlin 模拟对象而不是 Stubbing 方法

我有以下代码:@RunWith(MockitoJUnitRunner::class)classOnboardingViewModelTest{@MocklateinitvarauthService:AuthServicelateinitvarinternetProvider:InternetStatusProviderprivatelateinitvarviewModel:OnboardingViewModel@Beforefunsetup(){internetProvider=mock()whenever(internetProvider.hasInternet()).thenRet

java - 安卓测试 : Stubbing out Retrofit with Mockito

在我的MainActivity中,我有一个名为getAPI的方法,它返回一个OTBServiceWrapper。这用于设置调用API的改造。在我的MainActivityTest文件中,我试图清除getApi方法正在进行的newOTBService().getService()调用所以我可以返回一个MockedOTBService,它将客户端更改为返回json的自定义客户端。如果我不得不在MockedOTBService中放置一个记录器,那么当前的实现将是MockedOTBService但也失败并调用真正的api,这是不想要的我想参加考试。我正在尝试使用MockitostubRetro

声明为 "final"的 PHPUnit Stubbing 类方法

我正在为使用模拟调用另一个类的方法的类方法编写单元测试,只有需要调用的方法被声明为final方法,因此PHPUnit无法模拟它。我可以采用其他方法吗?例子:要模拟的类classClass_To_Mock{finalpublicfunctionneedsToBeCalled($options){...}}我的测试用例classMyTestextendsPHPUnit_Framework_TestCase{publicfunctiontestDoSomething(){$mock=$this->getMock('Class_To_Mock',array('needsToBeCalled')

node.js - Mocking/stubbing Mongoose 模型保存方法

给定一个简单的Mongoose模型:importmongoose,{Schema}from'mongoose';constPostSchema=Schema({title:{type:String},postDate:{type:Date,default:Date.now}},{timestamps:true});constPost=mongoose.model('Post',PostSchema);exportdefaultPost;我想测试这个模型,但我遇到了一些障碍。我当前的规范看起来像这样(为简洁起见省略了一些内容):importmongoosefrom'mongoose';i

Ruby MiniTest UnitTest Stubbing 类方法仅用于一次测试

我只想为一个测试stub一个类方法,对于其余的测试,我希望调用实际的方法。我一直在使用rspec和mocha,所以下面的行为看起来很奇怪。我想在我的一个测试中stub的类。classMyClassdefself.foo(arg)return"foo#{arg}"endend我尝试stubMyClass.foo的测试classXYZTest第一个测试通过,但第二个测试失败,提示Mocha::ExpectationError:unexpectedinvocation:MyClass.foo('123')在test_2中,我希望调用实际的类方法,而不是我在test_1中调用的stub。PS: