๐ EasyRandom - Java beans๋ฅผ ๋๋ค ์์ฑํด ์ฃผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ
๋ณดํต ํ ์คํธ๋ฅผ ์์ฑํ ๋ ๊ฐ์ฒด๋ฅผ ์์๋ก ์์ฑํด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ์ข ์ข ์์ต๋๋ค.
๊ฐ์ฒด์ ํ๋๊ฐ 1~2๊ฐ๋ผ๋ฉด ์๊ด์๊ฒ ์ง๋ง, ์กฐ๊ธ ๋ง์์ง๋ค๋ฉด ๊ฐ์ฒด๋ฅผ ์์ฑํ ๋ ์๊ทผ(?) ๊ท์ฐฎ์๋ฐ์,
์ ์ฌ์ง์ฒ๋ผ ๊ฐ ํ๋์ ๋ง๋ ๊ฐ์ ํ๋์ฉ ์ค์ ํด ์ฃผ์ด์ผ ํ๊ธฐ ๋๋ฌธ์ ๊ฝค๋ ๋ฒ๊ฑฐ๋ก์ด ์์ ์ ๋๋ค.
์ด์ ๊ฐ์ ๋, ๊ฐ์ฒด์ ํ๋๋ฅผ ๋ฐ๋ก ์ค์ ํ์ง ์๊ณ ๊ฐ์ฒด๋ฅผ ์๋์ผ๋ก ์์ฑํด์ฃผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ EasyRandom ์ ๋๋ค.
(์ฌ์ฉ๋ฒ๋ ๊ต์ฅํ ๊ฐ๋จํ๋, ์์ธํ ๊ฑด ๊นํ๋ธ ๋ฌธ์๋ฅผ ์ฐธ๊ณ ํด ์ฃผ์ธ์.)
๐ ์ฌ์ฉ๋ฒ
์์กด์ฑ ์ถ๊ฐ
ํ ์คํธ์์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๊ทธ๋ ์ด๋ค์ testImplementation์ผ๋ก ์ค์ ํ์ต๋๋ค.
Member ํด๋์ค
Post ํด๋์ค
EasyRandom Custom ํด๋์ค
EasyRandom ํด๋์ค์๋ ๊ธฐ๋ณธ ์์ฑ์์ EasyRandomParameters ๋ณ์๋ฅผ ๋งค๊ฐ๋ณ์๋ก ๋ฐ๋ ๋ ๊ฐ์ ์์ฑ์๊ฐ ์กด์ฌํฉ๋๋ค.
EasyRandomParameters ํด๋์ค๋ ๊ฐ์ฒด๋ฅผ ๋๋ค์ผ๋ก ์์ฑํ ๋ ๊ฐ ์ ์ฝ์กฐ๊ฑด(String ๊ธธ์ด ๋ฒ์, Date ๋ฒ์, Time ๋ฒ์ ๋ฑ๋ฑ)์ ์ค์ ํ๊ณ ์ ํ ๋ ์ฌ์ฉํ๋ ํด๋์ค์ ๋๋ค.
์๋ฌด๋ฐ ์ค์ ์์ด ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ create() ๋ฉ์๋์ Parameters๋ฅผ ์ค์ ํ์ฌ ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ createWithParameters() ๋ฉ์๋๊ฐ ์กด์ฌํฉ๋๋ค.
- excludeField(): ๋๋คํ๊ฒ ์์ฑํ์ง ์์ ํ๋ ์ค์
- stringLengthRange(): String length ๋ฒ์ ์ค์
- randomize(): ์ฃผ์ด์ง type์ ๋ํด ์์ฑํ ๋๋ค ๊ฐ ์ค์
ํ ์คํธ
์ฒซ ๋ฒ์งธ Member๋ ์๋ฌด๋ฐ ์ค์ ์์ด ์์ฑํ ๊ฐ์ฒด์ด๊ธฐ์ ๊ฐ์ด ๋งค์ฐ ์์ ๋ถ๋ฐฉ(?)ํ๊ฒ ๋์จ ๋ฐ๋ฉด, Parameters๋ฅผ ์ค์ ํ ๋ ๋ฒ์งธ Member๋ ์ ์ฝ ์กฐ๊ฑด์ ๋ฐ๋ผ ๋ฒ์์ ๋ง์กฑํ๋ ๊ฐ์ฒด๊ฐ ์์ฑ๋ฉ๋๋ค.
'Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Java ํด๋์ค ์ค๊ณ ์์ ํ๊ฒ ์ ํ๊ธฐ (1) | 2023.12.16 |
---|---|
Java Map - compute(), computeIfAbsent(), computeIfPresent() (0) | 2023.03.13 |
[Java DeepDive] - Map(HashMap) 1. ๊ฐ๋ , ํ๋, ์์ฑ์ (2) | 2022.11.27 |
[Java DeepDive] - List (ArrayList) (2) | 2022.10.29 |
[Java DeepDive] - String (2) ๋ด์ฅ ํจ์ (0) | 2022.10.23 |
๋๊ธ