2016 - 2024

感恩一路有你

mockito怎么读 mock构造方法?

浏览量:2718 时间:2021-03-15 20:36:19 作者:admin

mock构造方法?

@RunWith(PowerMockRunner.class)

@PrepareForTest(Helper.class)//1.添加要初始化的类,就是构造函数所在的类

public class HelperTest {

@Mock

private Something mockSomething

@InjectMocks

private Helper helper

@Test

public void doSomething() throws Exception {

String argument = "arg"

PowerMockito.whenNew(Something.class).withArguments(argument).thenReturn(mockSomething)//2.添加要构造的函数的类,参数和返回值

// 3.调用需要测试方法

helper.doSomething(argument)

// 进行验证

verify(mockSomething).doIt()

}

}

public class Helper {

public void doSomething(String arg) {

Something something = new Something(arg)

something.doit()

}

}

手工测试人员如何转测试开发?

~首先,手工测试和测试开发的职能都是为了要保障项目和产品的质量,所不同的是测试开发是偏向把测试技术化来提升测试效率。

手工测试要转测试开发就是学习如何更有效地提升测试效率,把最耗时重复测试工作用工具或脚本代替。

学习一些测试工具的使用,如Jmeter,postman做性能和接口测试;学编程语言,写自动化脚本做回归测试。

手工测试转测试开发是个技术提升的过程,在工作之余多练练手写写小脚本和自动化测试,可以和开发多交流。转不转得成功,就看能力和运气了…

如何mock静态方法?

因为Mockito使用继承的方式实现mock的,用CGLIB生成mock对象代替真实的对象进行执行,为了mock实例的方法,你可以在subclass中覆盖它,而static方法是不能被子类覆盖的,所以Mockito不能mock静态方法。但PowerMock可以mock静态方法,因为它直接在bytecode上工作,类似这样:import org.powermock.api.mockito.PowerMockitoimport org.powermock.core.classloader.annotations.PrepareForTestimport org.powermock.modules.testng.PowerMockTestCaseimport org.testng.Assertimport org.testng.annotations.Test@PrepareForTest(AbstractAnimal.class)public class AbstractAnimalTest extends PowerMockTestCase {@Testpublic void shouldGetMockedHello() {PowerMockito.mockStatic(AbstractAnimal.class)PowerMockito.when(AbstractAnimal.getHello()).thenReturn("Hello mocked animal world!")String greetings = AbstractAnimal.getHello()Assert.assertTrue(greetings.equals("Hello mocked animal world!"))}}

mockito怎么读 mockito单元测试 mockito教程

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。