Java 为什么在单元测试期间我的URL中出现%E2%80%8B

Java 为什么在单元测试期间我的URL中出现%E2%80%8B,java,unit-testing,mockito,urlencode,Java,Unit Testing,Mockito,Urlencode,我正在为我的控制器编写单元测试,并获得了404而不是200的成功。 当我在控制台上搜索时,它显示我们警告日志 WARN [2021-02-12T11:53:27.711+0530] servlet.PageNotFound ||${fallback:user}|No mapping for GET /person%E2%80%8B/contacts%E2%80%8B/details 为什么映射更改为/person%E2%80%8B/联系人%E2%80%8B/详细信息而不是/person/co

我正在为我的控制器编写单元测试,并获得了404而不是200的成功。
当我在控制台上搜索时,它显示我们警告日志

WARN  [2021-02-12T11:53:27.711+0530] servlet.PageNotFound ||${fallback:user}|No mapping for GET /person%E2%80%8B/contacts%E2%80%8B/details
为什么映射更改为
/person%E2%80%8B/联系人%E2%80%8B/详细信息
而不是
/person/contacts/details

测试类

@RunWith(MockitoJUnitRunner.class)
@ActiveProfiles("test")
@SpringBootTest
public class PersonControllerTest {

    @Autowired
    private MockMvc mockMvc;

    @InjectMocks
    private PersonController personController;

    @Mock
    private PersonService personService;

    @Before
    public void setupMethod() {

        mockMvc = MockMvcBuilders.standaloneSetup(personController).build();
    }

    @Test
    public void getPersonContactDetailTest() throws Exception {
    
        Person person = new Person();
        person.setName("Test");

        Mockito.when(personService.getPersonContactDetail()).thenReturn(person);

        RequestBuilder rqBuilder = MockMvcRequestBuilders.get("/person/contacts/details")
                .accept(MediaType.APPLICATION_JSON);

        mockMvc.perform(rqBuilder).andExpect(MockMvcResultMatchers.status().isOk());

        Mockito.verify(personService, times(1)).getPersonContactDetail());
    }
}

%E2%80%8B
是“零宽度空格”字符的代码


它可能是在你没有注意到的情况下插入的。我建议完全删除定义URL的字符串并重新写入。

这似乎是URL字符串编码。使用URL解码谢谢,我已经再次输入了我的URL。