์ค์ ! ์คํ๋ง๋ถํธ ์ํ-์ฃผ๋ฌธ API ๊ฐ๋ฐ๋ก ์์๋ณด๋ TDD
์คํ๋ง๋ถํธ๋ฅผ ์ด์ฉํด TDD๋ก ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์๋๋ค. TDD๋ฅผ ํตํด ๊ฐ๋ฐ ์์ฐ์ฑ์ ์ ์งํ๊ณ ์ ๋ขฐ๊ฐ๋ฅํ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง๋๋ ๋ฐฉ๋ฒ์ ์ป์ผ์ค ์ ์์ ๊ฒ๋๋ค.
์๊ฐ์ 4,994๋ช
๋์ด๋ ์ด๊ธ
์๊ฐ๊ธฐํ ๋ฌด์ ํ

- ๋ฏธํด๊ฒฐ
DatabaseCleanup ์ฝ๋์ ๋๋น ํ์ํ ๋ถ๋ค ์ฐ์ธ์
package com.clarity.productorderservice; import java.util.List; import java.util.Set; import java.util.stream.Collectors; import ja
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapi์ ์ ํ
ใป
์ผ ๋ ์
0
115
1
- ๋ฏธํด๊ฒฐ
์ด ๋ฐฉ๋ฒ์ด TDD๊ฐ ๋ง๋์?
์๋ ํ์ธ์! ๊ฐ์๋ฅผ ๋๋ ์ค ์์ํ ๋ถ๋ถ์ด ์๋๋ฐ์.์ ๊ฐ ์๊ณ , ๊ณต๋ถํ๋ TDD ์๋ ๋ฌ๋ผ์ ์ข ์๋ฌธ์ด๋ค์.์ ๊ฐ ์๋ TDD๋ Red - Green - Refactor ์ฌ์ดํด์ ํตํด ํ ์คํธ ์ฝ๋๋ฅผ ์์ฑํ๋ฉด์ ์์ฐ์ค๋ฝ๊ฒ ํ๋ก๋ํธ
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapi์ดํธ๋ฏผ
ใป
0
1,092
2
- ๋ฏธํด๊ฒฐ
POJO๋ก ๊ฐ๋ฐํ๋๋ฐ ๋น์ฆ๋์ค ๋ก์ง์ ๋ก๊น ํด์ผ ํ ๊ฒฝ์ฐ, ์ด๋ป๊ฒ ํด์ผ ํ ๊น์?
๊ฐ์ ์ ๋ฃ๊ณ ์์ต๋๋ค! ๊ฐ์ ๋ค์ผ๋ฉด์ ๋ฌธ๋ ๊ถ๊ธํ ์ ์ด ์๊ฒผ๋๋ฐ์. POJO๋ก ๊ฐ๋ฐํ๋๋ฐ, ๋๋ฉ์ธ ํด๋์ค ๋ด์ ๋น์ฆ๋์ค ๋ก์ง์ ๋ก๊น ์ ํด์ผํ๋ ๊ฒฝ์ฐ๊ฐ ์ค๋ฌด์์ ๋ง์๊น์? ๋ง์ฝ, ๊ทธ๋ฐ ๊ฒฝ์ฐ๊ฐ ์๋ค
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapiserverstudymaster
ใป
0
331
1
- ๋ฏธํด๊ฒฐ
generate -> add Dependency ์ด ๋ฉ๋ด๊ฐ ์๋ณด์ด๋๋ฐ, ์ด๋ป๊ฒ ๋ณด์ด๊ฒํ ๊น์?
generate -> add Dependency ์ด ๋ฉ๋ด๊ฐ ์๋ณด์ด๋๋ฐ, ์ด๋ป๊ฒ ๋ณด์ด๊ฒํ ๊น์?
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapi์๋ํ
ใป
0
343
1
- ๋ฏธํด๊ฒฐ
์ค๋ฌด Asserta ์ฌ์ฉ์ฌ๋ถ๊ฐ ๊ถ๊ธํฉ๋๋ค.
์๋ ํ์ธ์ ๊ฐ์๋ฅผ๋ณด๋ค๊ฐ validation ๊ฒ์ฌ๋ฅผAssert Class๋ฅผ ํ์ฉํ์ฌ ํ๊ณ ๊ณ์๋๋ฐ์ค๋ฌด์์๋ ์์ฃผ ์ฐ๋ ๋ฌธ๋ฒ์ธ์ง ๊ถ๊ธํฉ๋๋ค.
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapi์ด๊ฐ์
ใป
0
446
1
- ๋ฏธํด๊ฒฐ
ํ ์คํธ ์ฝ๋ ๋ด์ ์ง์ญ๋ณ์๋ฅผ final๋ก ์ ์ธํ๋ ์ด์ ๊ฐ ๊ถ๊ธํฉ๋๋ค.
ํ ์คํธ ์ฝ๋ ๋ด์์ ์ธํ ๋ฆฌ์ ์ด ์๋ ํ๋์ ์ธ ๊ธฐ๋ฅ ์ฌ์ฉ์ ์ ๋ ๋ฐ๋ก ์์ํค์๋๊ฐ ๋ถ์ง ์๋๋ฐ. ์ ์๋๊ป์๋ final์ด ์๋์ผ๋ก ๋ถ๋ ๊ฒ ์์ฒด๋ ์ ๊ธฐํ์ง๋ง ๊ทธ ์ด์ ๊ฐ ๊ถ๊ธํฉ๋๋ค.
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapiYoonjae han
ใป
0
522
1
- ๋ฏธํด๊ฒฐ
ํตํฉํ ์คํธ์ ๋จ์ ํ ์คํธ
๊ฐ์ฌ๋์ ํตํฉํ ์คํธ๋ ๋จ์ํ ์คํธ ๋๋ค ๋นก์๊ฒ ํ์๋ ํธ์ด์ ๊ฐ์? ์๋๋ฉด ๊ฐ์ฝ ์กฐ์ ํ์๋์? ์ด๋ ์ชฝ์ ์ข๋ ์ค์๋๋ฅผ ๋์๋์ง๋ ๊ถ๊ธํฉ๋๋ค.
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapi๋ฐฑ๋ฆฐ์ด
ใป
0
954
1
- ๋ฏธํด๊ฒฐ
์์กด์ฑ ๋ฐ ์ค๊ณ? ๋ถ๋ถ ์ง๋ฌธ๋๋ฆฝ๋๋ค.
์ํ ์ฃผ๋ฌธ API ๊ฐ๋ฐPOJO๋ก ์ํ ์ฃผ๋ฌธ ๊ตฌํํ๊ธฐ ๊ฐ์์์OrderService
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapibha4388
ใป
0
393
1
- ๋ฏธํด๊ฒฐ
ํ ์คํธ ๋๋ธ
๋๋ถ์ ํ ์คํธ์ ๋ํด ํฅ๋ฏธ๋ฅผ ๊ฐ์ง๊ณ ๊ณต๋ถ์ค์ ์์ต๋๋ค.ํ ์คํธ ๊ณต๋ถํ๋ฉด์ ํ๊ฐ์ง ๊ถ๊ธํ ์ ์ด ์์ต๋๋ค. ํน์, Mock, Stub, Fake ๋ฑ ์ํฉ์ ๋ฐ๋ผ ๊ตฌ๋ถํด์ ์ฌ์ฉํ๊ณ ๊ณ์ ๊ฐ์?
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapi๋ฐฑ๋ฆฐ์ด
ใป
0
391
1
- ๋ฏธํด๊ฒฐ
๋ฆฌ๋ทฐ๋ฐ์ ๊ฐ์์์ shortcut ctrl + esc ๋ ์ด๋ป๊ฒ ์ค์ ํ๋์?
์ด ํ๋ฉด์์ ๋จ์ถํค ctrl + esc ๋ง ๋๋ฅด๋ฉด ์์ ํ๋ฉด์ด ์๊พธ ๋ ์ ๋จ์ถํค
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapi์ด์น์
ใป
0
469
1
- ๋ฏธํด๊ฒฐ
POJO
๊ฐ์ฌ๋์ด ์๊ฐํ์๋ POJO๋ ์ด๋ค ๋ฐฉ๋ฒ๋ก ์ธ๊ฐ์?? ์์ค์ ๋์์๋ ์ค๋ช ์ผ๋ก๋ ์ฉ์ด๊ฐ ์ ์๋ฟ์ง ์์์์!!
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapiCharlie Park
ใป
0
591
1
- ๋ฏธํด๊ฒฐ
POJO ์ํ ๋ฑ๋ก ๊ธฐ๋ฅ ๊ตฌํํ๊ธฐ ๊ฐ์ ์ง๋ฌธ
์๋ ํ์ธ์.POJO ์ํ ๋ฑ๋ก ๊ธฐ๋ฅ ๊ตฌํํ๊ธฐ ๊ฐ์์3:58 ์์ throw new UnsupportedOperationException("Unsupported addProduct");๊ฐ ์ ์์ผ๋ก ๋ฐ๋ก ๋ฌ ์ด์ ๋ฅผ ์ฌ์ญ๋๋ค..!</
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapiJ J
ใป
1
536
1
- ๋ฏธํด๊ฒฐ
steps ํด๋์ค๋ฅผ ์ฌ์ฉํ๋ ์ด์
์๋ ํ์ธ์!๊ฐ์ ์ ๋ฃ๊ณ ์์ต๋๋ค! steps ํด๋์ค๋ฅผ ๋ฐ๋ก ๋ง๋๋ ์ด์ ๋ ๋ญ๋ผ๊ณ ํ ์ ์์๊น์?? ๊ฐ์ฌํฉ๋๋ค.
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapi๋๋๋์
ใป
0
329
1
- ๋ฏธํด๊ฒฐ
๋๋ค ํฌํธ๋ฅผ ์ฌ์ฉํ๋ ์ด์
์๋ ํ์ธ์! ๋๋ฌด ์ข์ ๊ฐ์ ์ ๋ณด๊ณ ์์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค! ๊ฐ์๋ฅผ ๋ฃ๋ค๊ฐ ๊ถ๊ธํ ๊ฒ์ด ์๊ฒผ๋๋ฐ,๊ตณ์ด ApiTest ๋ผ๋ ํด๋์ค๋ฅผ ๋ฐ๋ก ๋ง๋ค์ด์ ๋๋ค ํฌํธ๋ก ์ค์ ํด์ค ์ด์ ๋ ๋ฌด์์ธ๊ฐ์??&nbs
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapi๋๋๋์
ใป
0
1,096
1
- ๋ฏธํด๊ฒฐ
์ํ๋ฑ๋ก API ๊ฐ๋ฐ, JPA๋ก ๋ณํํ๊ธฐ ์์
org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "PRODUCTS" not found (this database is empty); SQL statement:select product0_.name as n
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapiThe Beeeast
ใป
0
855
2
- ๋ฏธํด๊ฒฐ
ํจํค์ง ๊ตฌ์กฐ์ ๋ํด์ ๊ถ๊ธํฉ๋๋ค!
์๋ ํ์ธ์ ์ข์ ๊ฐ์๋ฅผ ๋ฌด๋ฃ๋ก ์ฌ๋ ค์ฃผ์ ์ ์ ๋ง ์ ๋ณด๊ณ ์์ต๋๋ค.๋ณด์ฌ์ฃผ์ ํจํค์ง ๊ตฌ์กฐ๊ฐ ํฅ์ฌ๊ณ ๋ ํจํค์ง ๊ตฌ์กฐ์ ๊ธฐ๋ฐ ํ์ จ๋ค๊ณ ๋ค๋ฅธ ๊ธ์์ ๋ง์์ ํด์ฃผ์ จ๋ ๊ฒ์ ๋ดค์ต๋๋ค. ๊ทธ๋ผ controller ๋ฅผ ๋ฃ๊ฒ ๋๋ค๋ฉด port ์ in ํด๋๋ฅผ ๋ฃ๊ณ ๋ค์ ๋๋๋
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapiํ์น๋ น
ใป
0
634
1
- ๋ฏธํด๊ฒฐ
BeforeEach ๋ฅผ ํ์ ํด๋์ค์์ ๋ค์ ์ฌ์ฉํ๋๊ฒ์ ๋ํด์ ์ง๋ฌธ ๋๋ฆฝ๋๋ค.
์๋ ํ์ธ์..!์ฌ์ญค๋ณด๊ณ ์ถ์๊ฒ ์์ด์ ์ง๋ฌธ ๋จ๊น๋๋ค.ํ์ฌ ํ ์คํธ์ ๊ตฌ์กฐ๊ฐApiTest ๋ผ๋ ํด๋์ค๋ฅผ ์์๋ฐ์์ ProductApiTest๋ฅผ ๋ง๋ค๊ฒ ๋์์ต๋๋ค.class Prod
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapi์์ฑ์ ์์
ใป
1
553
1
- ๋ฏธํด๊ฒฐ
ProductService์ updateProduct ๋ก์ง ์ง๋ฌธ์ ๋๋ค.
updateProduct ๋ก์ง์ ๋ณด๋ฉด, ๋งจ ์ฒซ์ค์productPort.getProduct๋ก ์กฐํ๋ฅผ ํด์จ ๋ค product.update(~~~)๋ก ๋ณ๊ฒฝ์ ํ๋ฉด, ๋ณ๊ฒฝ ๊ฐ์ง๊ฐ ์ผ์ด๋ ํ ๋ฐ๊ตณ์ด save๋ฅผ ํธ์ถํ์ ์ด์ ๊ฐ ๋ญ์์ฉ?
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapildy_1204
ใป
0
551
2
- ๋ฏธํด๊ฒฐ
TRUNCATE TABLE ์ AUTO_INCREMENT ์ปฌ๋ผ 1๋ก ์ด๊ธฐํ
MySQL์ด๋ H2 ์์ TRUNCATE TABLE ์ AUTO_INCREMENT ์ปฌ๋ผ๊ฐ๋ 1๋ก ์ด๊ธฐํ๋๋ ๊ฑธ๋ก ์๊ณ ์์ต๋๋ค. ๊ทธ๋ฐ๋ฐ ๊ฐ์์์๋ TRUNCATE ํ AUTO_INCREMENT ์ปฌ๋ผ์ธ ID ๋ฅผ 1๋ถํฐ ๋ค์ ์์ํ๊ฒ ํ๋ ์ฟผ๋ฆฌ๋ฅผ ์ถ๊ฐํ์ ์ ์ด๋ค๊ฒ ๋ง
tddspring-bootpojo์ํํธ์จ์ด-ํ ์คํธapipgrrr119
ใป
2
3,464
1
- ๋ฏธํด๊ฒฐ
POJO๋ก ๊ฐ๋ฐ ํ ์คํ๋ง์ผ๋ก ์ ํ, ์ดํ JPA ์ ํํ๋ ์ด์
POJO๋ก ๊ฐ๋ฐ ํ ์คํ๋ง์ผ๋ก ์ ํ, ์ดํ JPA ์ ํํ๋ ์ด์ ๊ฐ ์๋์?? ์ฒ์๋ถํฐ JPA๋ก ๋ง๋ค๋ฉด ์๋๋์ง ๊ถ๊ธํฉ๋๋ค
tddspring-bootpojoapi์์ฑ์ ์์
ใป
4
1,271
1






