草庐IT

javascript - 在 Jest 中 stub 窗口函数

在我的代码中,我在点击window.confirm提示“确定”时触发回调,我想测试是否触发了回调。在sinon中,我可以通过以下方式stubwindow.confirm函数:constconfirmStub=sinon.stub(window,'confirm');confirmStub.returns(true);有没有办法在Jest中实现这种stub? 最佳答案 开个Jest,您可以使用global覆盖它们。global.confirm=()=>true开个Jest,每个测试文件都在自己的进程中运行,您不必重置设置。

javascript - 如何在 javascript 全局命名空间中 stub /模拟函数

我正在尝试在测试期间stub/模拟/覆盖函数调用,该函数调用将日志写入数据库。functionlogit(msg){writeMessageToDb(msg);}functiontryingToTestThisFunction(){varerror=processSomething();if(error){logit(error);}}我想要logit()在测试期间简单地打印到控制台...并在isTesting()中执行“logit()”if/elseblock功能不是一个选项。这是否可能不包括一些额外的模拟框架。我目前正在使用JsTestDriver用于单元测试并且没有机会评估任何模

PHPUnit 测试 double

我开始使用PHPUnit来测试我的代码,但我在理解双重测试方面遇到了一些问题。我尝试对类方法b进行stub以在自另一个方法调用时返回true而不是通常的行为(false)我有这样的代码classMyClass{functiona(){return$this->b();}functionb(){returnfalse;}}classMyClassTestextendsTestCase{functiontestAThrowStubB(){$myClassStub=$this->getMockBuilder('\MyClass')->getMock();$myClassStub->expec

Phpunit,期望一个方法正好运行两次

classTestMe{publicfunctionmethod(){}}测试:classTestTestextendsPHPUnit_Framework_TestCase{publicfunctiontestA(){$stub=$this->getMock('TestMe');$stub->expects($this->exactly(2))->method('method');}publicfunctiontestB(){$stub=$this->getMock('TestMe');$stub->expects($this->exactly(2))->method('method'

PhpUnit 测试 stub 方法多次返回

我正在用symfony2做一些PHPUnit测试。我在一项特定测试中遇到问题。我正在测试我类(class)之一的回应,当然一个回应是对的,一个是错的。我有一个我的数据库的模拟,并且我有一个来self的databaseRepository的方法的stub。问题是,在一个测试中,我对具有有效数组的方法进行了stub,在第二个测试中,我只想查询无效的null。我的数据库模拟://Settingupmockofdatabaserepositoryclass$this->db=$this->getMockBuilder('DatabaseRepository')->disableOriginal

PHPUnit stub : default return value from map

我在PHPUnit手册中读到,对于以下示例,方法调用doSomething('a','b','c')将返回d方法调用doSomething('e','f','g')将返回h。getMockBuilder('SomeClass')->getMock();//Createamapofargumentstoreturnvalues.$map=array(array('a','b','c','d'),array('e','f','g','h'));//Configurethestub.$stub->method('doSomething')->will($this->returnValueMa

php - 如何使用 Git 在开发和生产环境中分发 Thrift 生成的代码?

您如何使用Git(PHP、Python等)管理存储库中生成的源代码文件和部署例程?例如,我有一个名为“interfaces”的存储库,其中包含Thrift定义。它们可以转换为Python、PHP、JS等框架/stub。其他不同语言的项目,每个项目都在自己的存储库中,想要使用这些stub。如何将stub交付给项目?我只看到两种方式:生成stub文件并将它们存储在“interfaces”存储库中,这个存储库应该附加到项目的存储库中(作为只读子模块或任何其他方式)。但是由于过于复杂的“git子模块”概念,这种方式在检查接口(interface)和stub的更新时会带来很多麻烦。将纯“inte

PHPUnit:如何保存传递给 stub 方法的参数

SomeClass类中的方法setValue()接受参数,但无法取回此参数以进行断言。我能否为方法setValue()创建一个stub,以允许保存传递给该方法的参数?classSomeClass{publicfunctionsetValue($name,$value){//dosomestuff}publicfunctiondoSomething(array$values){foreach($valuesas$name=>$value){$this->setValue($name,trim($value));}}}classTestSomeClassextendsPHPUnit_Fra

java - EJB 3 stub 生成

我有一个ejb-3兼容的ejb,比方说@RemoteinterfaceHai{StringsayHai();}Stateless(name="xxx",mappedname="yyy")publicclassHaiImplimplementsHai{publicStringsayHai(){return"Hai";}}我需要为这个EJB生成stub。但我不想使用websphere工具或maven工具。有没有办法用jdk生成stub?创建远程客户端时Haihai=(Hai)ctx.lookup("yyy#com.zz.Hai");System.out.println(hai.sayHai

java - MockitoException - 是一个 *void 方法*,它 *不能* 用 *返回值* stub !

我正在使用Mockito进行单元测试,但出现以下异常。org.mockito.exceptions.base.MockitoException:`'setResponseTimeStampUtc'`isa*voidmethod*andit*cannot*bestubbedwitha*returnvalue*!VoidsareusuallystubbedwithThrowables:doThrow(exception).when(mock).someVoidMethod();***Ifyou'reunsurewhyyou'regettingaboveerrorreadon.Duetoth