当前位置: 首页 > 知识库问答 >
问题:

测试执行中未使用模拟的RestTemplate.PostForObject

宋涵忍
2023-03-14

我使用Mickito模拟了一个postForObject resttemplate调用。

mockito.when(RestTemplate.PostForObject(mockito.eq(remoteServerlocation),mockito.any(Input.Class),mockito.eq(String.Class))).ThenReturn(responseString);

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = Application.class)
public class ActionImplTest {

    @Autowired
    private ActionImpl recommendation;

    RestTemplate restTemplate = new RestTemplate();

    @Test
    public void performActionTest() throws Exception {
        String textInput = "InputText";
        Map<String, Object> map = new HashMap<String, Object>();

        map.put("convId", "C123");
        map.put("reID", 1);
        map.put("chID", "Chann_1");

        String convID = "1254356671563";
        String chId = "2";
        String responseString = "Success"
        Mockito.when(restTemplate.postForObject(Mockito.eq("remoteServerlocation"), Mockito.any(Input.class), Mockito.eq(String.class))).thenReturn(responseString);

        Map<String, Object> response = recommendation.performAction(textInput, map, convID, chId);  
    }
}

共有1个答案

时宾实
2023-03-14

这里有一个例子来说明我在Spring文档注释中的意思。

@RunWith(SpringRunner.class)
@SpringBootTest
public class ActionImplTest {

    @MockBean
    private RestTemplate restTemplate;

    @Autowired
    private ActionImpl recommendation;
 类似资料:
  • 我已经编写了示例CRUD方法,我已经为服务组件编写了JUnit测试用例,但得到的结果是“地址id没有找到…”当我做测试的时候。 @test public void updateAddressTest()引发ResourceNotFoundException{

  • 嗨,我想在appium上使用ios模拟器并行运行ios测试用例。我知道MAC会有限制,因为只有一个模拟器会启动,但有没有后门入口可以让它们并行运行,我不想使用网格,因为有一些原因,所以有没有办法在ios模拟器上并行运行ios测试用例。 如果我一次运行两个不同端口和地址的appium服务器,只有一个ios模拟器会启动,因为它会关闭另一个。 我使用的是1.6.4 appium服务器和Xcode 8。

  • 我刚刚通过composer安装了PHPUnit,试图通过跳上测试驱动开发的潮流,成为一名优秀的后端开发人员。然后我运行命令vendor/bin/phpunit,可以看到phpunit安装正确。 以下是我的文件结构: 在phpunit内部。xml文件我有以下内容: 如果我运行vendor/bin/phpunit,我可以看到我的配置文件已加载,但没有运行任何测试。 我基本上在tests文件夹和扩展的P

  • 我正在编写单元测试的方法,以找到银行附近我的位置。我嘲弄了这个类并尝试调用这些方法。但是,控件不会转到方法来执行它。下面是单元测试用例。 我所尝试的也是调用它的真实方法, 这调用真实的方法,但我上面嘲笑的方法执行起来就像真实的方法一样。意思是“被嘲弄的方法”没有返回我要求它们返回的内容。 那么,我在这里做错了什么?方法为什么不执行?

  • 问题内容: 我在NetBeans 8.2中的一个新的干净Maven项目中创建了此测试: 如果我运行测试,日志显示 我的pom.xml包含以下依赖项: 是什么导致JUnit 5忽略测试方法? 更新:我添加了surefire插件,这是完整的pom.xml: 输出更改为: 并且surefire-reports文件夹包含两个“ .dump”文件。第一个内容: 问题答案: 确保将您的配置正确地设置为: 而且

  • 我正在尝试夸克入门项目。使用maven执行包含的单元测试。然后我尝试了提议的gradle构建文件,因为我们使用gradle而不是maven。当我运行时,单元测试肯定没有执行(我知道,因为我修改它失败了)。 这是一个错误还是我有什么问题?