Groovy Script Structure
nGrinder์์ ๊ธฐ๋ณธ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ์ ๋ ๋์ค๋ ๊ธฐ๋ณธ ์คํฌ๋ฆฝํธ๋ Java๋ก ์์ฑ๋์์ง๋ง, Groovy ์คํ์ผ๋ก ๋ณด์ผ ์ ์๋ค. ์ค์ ๋ก nGrinder๋ JUnit
์ ๊ธฐ๋ฐ์ผ๋ก Java ์ธ์ด๋ฅผ ์ฌ์ฉํ์ง๋ง, Groovy ์คํ์ผ๋ก ์์ฑ๋ GrinderRunner
์ ๊ฐ์ ์ฃผ์ ๋ฐ ์ด๋
ธํ
์ด์
์ ํฌํจํ๊ณ ์๋ค.
nGrinder Groovy ํ ์คํธ๋ฅผ ์ํด์๋ ํด๋์ค ์์ @RunWith(GrinderRunner) ์ ๋ํ ์ด์ ์ ๊ผญ ๋ถ์ฌ์ฃผ์ด์ผ ํ๋ค. ์ด ๋ถ๋ถ์ GroovyRunner๊ฐ JUnit์ ํ๋์ ์ ์ดํ๋ฉฐ JUnit์ grinder context๋ฅผ ๋ง์ดํธ ํ๋ค.
nGrinder๋ ๊ธฐ๋ณธ์ ์ผ๋ก Groovy ๊ธฐ๋ฐ์ JUnit ํ ์คํธ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ๋ค. ๋ฐ๋ผ์ ๊ธฐ๋ณธ ์คํฌ๋ฆฝํธ๋ Groovy์ Java์ ์กฐํฉ์ผ๋ก ์์ฑ๋๋ฉฐ, Groovy ์ธ์ด์ ๊ฐ๊ฒฐํจ๊ณผ Java์ ๊ฐ๋ ฅํจ์ ๋์์ ํ์ฉํ ์ ์๋ค.
๊ธฐ๋ณธ ์คํฌ๋ฆฝํธ ๋ถ์
์คํฌ๋ฆฝํธ ๊ตฌ์กฐ ๋ฐ ๋ถ์:
์ฃผ์ ๋ถ๋ถ ์ค๋ช
์ด๋ ธํ ์ด์ ๋ฐ ํด๋์ค ์ฃผ์
@RunWith(GrinderRunner)
:GrinderRunner
๋ฅผ ์ฌ์ฉํด ํ ์คํธ ์คํ.@BeforeProcess
,@BeforeThread
,@Before
,@Test
์ด๋ ธํ ์ด์ ์ ์ฌ์ฉํ์ฌ ํ ์คํธ ๋ผ์ดํ์ฌ์ดํด์ ์ ์.
ํ ์คํธ ๋ผ์ดํ์ฌ์ดํด ํจ์
@BeforeProcess
: ์ ์ฒด ํ๋ก์ธ์ค ์์ ์ ํ ๋ฒ ์คํ.@BeforeThread
: ๊ฐ ์ค๋ ๋ ์์ ์ ํ ๋ฒ ์คํ.@Before
: ๊ฐ ํ ์คํธ ์ ๋ง๋ค ์คํ.@Test
: ํ ์คํธ ํจ์๋ก, ๋ถํ ํ ์คํธ๋ฅผ ์ํํ๋ ํต์ฌ ์ฝ๋ ์์ฑ.
์ฃผ์ ๊ฐ์ฒด ๋ฐ ํ๋ฌ๊ทธ์ธ ์ฌ์ฉ
GTest
: ํ ์คํธ ๊ฐ์ฒด ์์ฑ.HTTPRequest
,HTTPResponse
: HTTP ์์ฒญ ๋ฐ ์๋ต์ ์ฒ๋ฆฌํ๋ ๊ฐ์ฒด.Cookie
,CookieManager
: ์ฟ ํค ๊ด๋ฆฌ ๊ฐ์ฒด.
์์ฝ:
๊ธฐ๋ณธ์ ์ผ๋ก nGrinder์์ ์์ฑ๋๋ ์คํฌ๋ฆฝํธ๋ Java์ Groovy ์คํ์ผ์ ์กฐํฉ์ผ๋ก, Groovy๋ฅผ ๊ธฐ๋ฐ์ผ๋ก JUnit ํ ์คํธ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉ.
GrinderRunner
์ ์ด๋ ธํ ์ด์ ์ ํตํด ํ ์คํธ ๋ผ์ดํ์ฌ์ดํด์ ๊ด๋ฆฌํ๋ฉฐ, ์ฃผ์ ํ๋ฌ๊ทธ์ธ๊ณผ ๊ฐ์ฒด๋ฅผ ํ์ฉํด ๋ถํ ํ ์คํธ๋ฅผ ์์ฑ.
Q1: ์คํฌ๋ฆฝํธ์์ ๋ถํ ํ ์คํธ ์๋๋ฆฌ์ค๋ฅผ ์ด๋ป๊ฒ ํ์ฅํ ์ ์์๊น?
Q2: Groovy ์คํ์ผ์ ์คํฌ๋ฆฝํธ ์์ฑ ์ ๋ค๋ฅธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผ ํ๋?
Q3: ๊ฐ ์ด๋ ธํ ์ด์ ์ ์ญํ ์ ๊ตฌ์ฒด์ ์ผ๋ก ์ค๋ช ํ ์ ์๋?
Last updated