μΉ΄μΉ΄μ€ μλ¦Όν‘ ν
νλ¦Ώ κ΄λ¦¬ API
λͺ¨λμ μμ±νμ¬ λ°°ν¬μ μ API
λ¬Έμλ₯Ό λ§λ€κ³ μμλ€.
swagger
λ λ§μ΄ μ¬μ©λμ§λ§ μ°λ¦¬νμ¬λ spring
μ λ μ΅μ ν λμ΄μλ Restdoc
μ μ¬μ©νμ¬ API
λ¬Έμλ₯Ό λ§λ λ€.
λ¬Έμλ₯Ό λ§λλ건 μ¦κ²μ§ μλ€. ν μ€νΈμ μμ€ν€λ λ¬Έμ κΎΈλ―ΈκΈ° λ Έκ°λ€μ μ°μμ΄κΈ° λλ¬Έμ΄λ€.
κ·Έ μμ€μ λΉν©μ€λ° μ€μλ₯Ό νμκ³ , ꡬκΈλ§ν΄λ μ΄μν λ΅μ΄ μμ΄μ λ΄κ° μ§μ ν΄κ²°ν κ²μ ν¬μ€ν νλκ² λ«λ€ μΆμ΄ ν¬μ€ν νλ€.
java.lang.IllegalArgumentException: urlTemplate not found. If you are using MockMvc did you use RestDocumentationRequestBuilders to build the request?
RestDoc
μ μμ§ μμ ν μ΅μνμ§ λͺ»νλ λλ λ λ΄μλͺ»μ΄κ² κ±°λ μ²μ²ν λ©μΈμ§λ₯Ό μ½μλ€.MockMvc
λ, RestDocumentationRequestBuilders
λ ν
μ€νΈμμ λ€ μ¬μ©νκ³ μλλ°... λμ리λ λ μ
λ§λλ‘ λκ° λ§μΆ°μ€μΌνλ..? π€
ꡬκΈλ§μ ν΄λ³΄λκΉ λ pathParameter
λ₯Ό μ¬μ©νλ©΄ get, post, patch, delete
λ± λ©μλ μμ RestDocumentationRequestBuilders
λ₯Ό λͺ
μν΄μ€μΌνλ€κ³ νλ€. μ€μ λ‘ ν΄λ³΄λ λκΈ΄λλ€. κ·Όλ° μ’ κΊΌλ¦ΌμΉνλ€. μμ ν΄λμ€λ₯Ό μ λ κ² λͺ
μν΄μ€λ€λ 건.. μλ μ¬μ©νλ λ©μλκ° λ€λ₯Έ ν΄λμ€λ₯Ό import
ν΄μ κ°μ Έμλ€λ κ² κ°μλ°....?
μ€μ λ‘ λ΄μκ°μ΄ λ§μλ€.pathParameter
μ΅μ
μ μ¬μ©ν λ μ ν΄λμ€λ₯Ό λͺ
μν΄μ€μΌνλ κ²μ΄ μλλΌ! κ±°μ§κ°μ μ΄μν κΈλλ¬Έμ λ ν€λ§¨λ― import
λ°μ ν΄λμ€ μμ²΄κ° λ¬λλ€.
μ¬μ§μμ νμΈν μ μλ―μ΄ method
μ 2κ°μ§ ν΄λμ€λ₯Ό 골λΌμ import
ν΄μΌνλ€.
νλλ MockMvcRequestBuilder
κ³ , νλλ RestDocumentationRequestBuilder
λ€.
MockMvcREquestBuilder
κ° μμ μ¬λΌκ°μμ΄μ μμ°μ€λ½κ² κ·Έκ±Έ import
νλ κ²½μ°κ° λ§μλ°, μ΄λ΄κ²½μ° μμ κ°μ μμΈλ₯Ό λ±λλ€. RestDocumentationRequestBuilder
λ₯Ό import
ν΄μ£Όμ.
κ΅¬κΈ μ μλμ€μμλ λ§μ§ μλ μ λ³΄λ‘ νΌλμ€λ½κ² νλ λΆλ€μ΄ κ½€ μλ€. μ νν μ΄μ λ₯Ό λͺ¨λ₯Έμ± μΆμΈ‘μ± κΈμ ν©νΈμ²λΌ μ¨μ¬λΌμ λΆλ€ λλ¬Έμ νΌλμ΄ μ¨λ€. μ λλ‘ μκ³ ν¬μ€ν
νμ μ λ°. μ€λ κ°μ κ²½μ°λ λ€λ₯Έκ² λ¬Έμ κ° μλλΌ λ¨μ import
λ¬Έμ λ€.
μ λλ‘ import
λ°μ. κ°μ μ΄λ¦μ λ©μλλ€μ΄ μ€λ¬΄μμ μ½λ©μ νλ©΄ ν μλ‘ μ΄κ³³ μ κ³³μμ λμ¨λ€.