์ฌ์ฉ์ ์ธํฐํ์ด์ค(UI) ํ ์คํธ๋ ์ํํธ์จ์ด ๊ฐ๋ฐ ์๋ช ์ฃผ๊ธฐ์์ ์ค์ํ ๋จ๊ณ๋ก, ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ํํ๊ณ ์ค๋ฅ๊ฐ ์์ผ๋ฉฐ ์ฌ์ฉ์ ์นํ์ ์ธ ํ๊ฒฝ์ ์ ๊ณตํ๋์ง ํ์ธํฉ๋๋ค. ์ฌ๊ธฐ์๋ ๊ฒฐํจ์ด๋ ๋นํจ์จ์ฑ์ ์๋ณํ๋๋ก ์ค๊ณ๋ ์ผ๋ จ์ ํ ์คํธ๋ฅผ ์ํํ์ฌ ์ต์ข ์ฌ์ฉ์์ ํ๋ฉด, ๋ฉ๋ด, ๋ฒํผ, ์์ ๋ฐ ๊ธฐํ ๊ทธ๋ํฝ ๊ตฌ์ฑ ์์๋ฅผ ํฌํจํ ์ ํ๋ฆฌ์ผ์ด์ UI ์์ ๊ฐ์ ์ํธ ์์ฉ์ ๊ฒ์ฆํ๋ ์์ ์ด ํฌํจ๋ฉ๋๋ค. UI ํ ์คํธ๋ ๋์์ธ๊ณผ ๊ธฐ๋ฅ์ด ๋ชจ๋ ์ต์ข ์ฌ์ฉ์์ ์๊ตฌ์ ๊ธฐ๋๋ฅผ ์ถฉ์กฑํ๋์ง ํ์ธํ๋ ๋ฐ ์ค์ ์ ๋๊ธฐ ๋๋ฌธ์ AppMaster ์ ๊ฐ์ ํ๋ซํผ์ ๊ตฌ์ถ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๋ฐ์ ์ธ ํ์ง์ ํฅ์์ํค๋ ๋ฐ ์ค์ถ์ ์ธ ์ญํ ์ ํฉ๋๋ค.
ํ ์คํธ ๋ฐ ํ์ง ๋ณด์ฆ์ ๋งฅ๋ฝ์์ UI ํ ์คํธ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ฌ์ฉ์ ์ธํฐํ์ด์ค์ ์ต์ ์ ์ฑ๋ฅ, ํธํ์ฑ, ์ ๊ทผ์ฑ ๋ฐ ๋ณด์์ ๋ณด์ฅํ๊ธฐ ์ํ ๋ค์ํ ๊ธฐ์ , ๋๊ตฌ ๋ฐ ํ๋ก์ธ์ค๋ก ๊ตฌ์ฑ๋ฉ๋๋ค. ์ด๋ฌํ ํ ์คํธ๋ ์ผ๊ด๋๊ณ ์๋ฒฝํ ์ฌ์ฉ์ ๊ฒฝํ์ ๋ณด์ฅํ๊ธฐ ์ํด ๋ค์ํ ์ฅ์น, ์ด์ ์ฒด์ ๋ฐ ๋ธ๋ผ์ฐ์ ์์ ์ํ๋ฉ๋๋ค. ์ฃผ์ ๋ชฉํ๋ ์ฌ์ฉ์ ๋ง์กฑ๋, ์ ํ๋ฆฌ์ผ์ด์ ์ฑํ ๋ฐ ์ ๋ฐ์ ์ธ ์ฑ๊ณต์ ์ํฅ์ ๋ฏธ์น ์ ์๋ ๋ฌธ์ ๋ฅผ ์๋ณํ๊ณ ์์ ํ๋ ๊ฒ์ ๋๋ค.
ํต๊ณ์ ์ผ๋ก ๋งํ๋ฉด, ์ํํธ์จ์ด ๊ฒฐํจ์ ์์ ํ๋ ๋น์ฉ์ ๋ค์ํ ๊ฐ๋ฐ ๋จ๊ณ๋ฅผ ๊ฑฐ์น๋ฉด์ ๊ธฐํ๊ธ์์ ์ผ๋ก ์ฆ๊ฐํฉ๋๋ค. IBM Systems Sciences Institute์ ์ฐ๊ตฌ์ ๋ฐ๋ฅด๋ฉด ํ ์คํธ ๋จ๊ณ์์ ๋ฒ๊ทธ๋ฅผ ์์ ํ๋ ๋ฐ ๋๋ ๋น์ฉ์ ์ค๊ณ ๋จ๊ณ๋ณด๋ค 10๋ฐฐ ๋๊ณ ๋ฐฐํฌ ํ ๋น์ฉ์ 100๋ฐฐ ๋ ๋์ต๋๋ค. ๋ฐ๋ผ์ UI ํ ์คํธ๋ ๋ถ์ ์ ํ ๋์์ธ์ด๋ ๊ธฐ๋ฅ๊ณผ ๊ด๋ จ๋ ์ํ์ ์ต์ํํ๊ณ ๋น์ฉ ํจ๊ณผ์ ์ธ ์ํํธ์จ์ด ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ๋ณด์ฅํ๋ ๋ฐ ํ์์ ์ ๋๋ค.
UI ํ ์คํธ์๋ ์ผ๋ฐ์ ์ผ๋ก ๋ค์ํ ์ธก๋ฉด์ ๋ง๋ ์๋ ๋ฐ ์๋ ํ ์คํธ ๋ฐฉ๋ฒ์ด ๋ชจ๋ ํฌํจ๋ฉ๋๋ค. ์๋ ํ ์คํธ์๋ ์ธ๊ฐ ํ ์คํฐ๊ฐ ๋ณต์กํ ์์ ์ ์ํํ๋ ๋ฐ๋ฉด, ์๋ํ๋ ํ ์คํธ์๋ ์ต์ฒจ๋จ ๋๊ตฌ์ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฏธ๋ฆฌ ์คํฌ๋ฆฝํธ๋ ํ ์คํธ๋ฅผ ์ ์ํ๊ฒ ์คํํฉ๋๋ค. ๋ ๊ฐ์ง ๋ฐฉ๋ฒ ์ค ํ๋๋ฅผ ์ ํํ๋ ๊ฒ์ ์ ํ๋ฆฌ์ผ์ด์ ๋ณต์ก์ฑ, ์ฌ์ฉ ๊ฐ๋ฅํ ๋ฆฌ์์ค, ์์ฐ ์ ์ฝ๊ณผ ๊ฐ์ ์์ธ์ ๋ฐ๋ผ ๊ฒฐ์ ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค.
์๋ UI ํ ์คํธ์๋ ์๋ จ๋ ํ ์คํฐ๊ฐ ์์ฑํ ํ ์คํธ ์ฌ๋ก ๋ฐ ํ ์คํธ ๊ณํ์ ๊ฐ์ถ ๊ตฌ์กฐํ๋ ์ ๊ทผ ๋ฐฉ์์ด ํ์ํฉ๋๋ค. ํ๋ก์ธ์ค์๋ ํ ์คํฐ๊ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ง๊ด์ ์ผ๋ก ํ์ํ์ฌ ์ ์ฌ์ ์ธ ๋ฌธ์ ๋ฅผ ์ฐพ์๋ด๋ ํ์์ ํ ์คํธ๊ฐ ํฌํจ๋๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ด ๋ฐฉ๋ฒ์ ์ธ๊ฐ์ ์ง๊ด๊ณผ ๊ด์ฐฐ์ ํฌ๊ฒ ์์กดํ๋ฏ๋ก ์๋ํ๋ ํ ์คํธ ๋๊ตฌ์์ ๊ฐ๊ณผ๋ ์ ์๋ ์ฌ์ฉ์ฑ ๋ฌธ์ ๋ฅผ ์๋ณํ๋ ๋ฐ ๋งค์ฐ ์ค์ํฉ๋๋ค.
๋ฐ๋ฉด, ์๋ํ๋ UI ํ ์คํธ๋ ๊ณ ๊ธ ๋๊ตฌ, ์คํฌ๋ฆฝํ ์ธ์ด ๋ฐ ํ ์คํธ ํ๋ ์์ํฌ๋ฅผ ํ์ฉํ์ฌ ํ ์คํธ ํ๋ก์ธ์ค ์๋๋ฅผ ๋์ ๋๋ค. ํ ์คํธ ์คํฌ๋ฆฝํธ๋ ์ํํธ์จ์ด ๊ฐ๋ฐ์ ๋๋ ํ ์คํฐ๊ฐ ์์ฑํ ํ ์๋ํ ๋๊ตฌ๋ก ์คํ๋์ด ๋ฒํผ ํด๋ฆญ์ด๋ ์์ ์์ฑ๊ณผ ๊ฐ์ ๋ค์ํ ์ฌ์ฉ์ ์ํธ ์์ฉ์ ์๋ฎฌ๋ ์ด์ ํฉ๋๋ค. ์๋ํ๋ ํ ์คํธ ๋๊ตฌ์ ์ฃผ๋ชฉํ ๋งํ ์๋ก๋ Selenium, Appium ๋ฐ XCTest๊ฐ ์์ต๋๋ค. ์๋ํ๋ ํ ์คํธ๋ ํ๊ท ํ ์คํธ์ ํนํ ์ ์ฉํ๋ฉฐ, ์๋ก์ด ๊ธฐ๋ฅ์ด๋ ์ฝ๋ ๋ณ๊ฒฝ์ผ๋ก ์ธํด ๊ธฐ์กด ๊ธฐ๋ฅ์ด ์ค์๋ก ์ค๋จ๋์ง ์๋๋ก ๋ณด์ฅํฉ๋๋ค.
AppMaster ํ๋ซํผ์ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฒฝ์ฐ UI ํ ์คํธ๋ ๋ค์ํ ์ฅ์น์ ํ๋ซํผ์์ ์ฐ์ํ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ์งํ๋ ๋ฐ ํ์์ ์ ๋๋ค. Vue3 ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ์ฌ ์์ฑ๋ ์น ์ ํ๋ฆฌ์ผ์ด์ , ์๋ฒ ์ค์ฌ ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํ์ฌ ์์ฑ๋ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ , Go(golang)๋ก ๊ฐ๋ฐ๋ ๋ฐฑ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ํตํด AppMaster ๋ฐ์์ฑ์ด ๋ฐ์ด๋๊ณ ๊ธฐ๋ฅ์ด ํ๋ถํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ๊ธฐ ์ํ ํฌ๊ด์ ์ธ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ ๊ณตํฉ๋๋ค.
AppMaster ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ํ UI ํ ์คํธ๋ฅผ ์ํํ๋ ค๋ฉด ์ฅ์น ํธํ์ฑ, ๋ธ๋ผ์ฐ์ ํธํ์ฑ, ์ ๊ทผ์ฑ, ์ฑ๋ฅ ๋ฐ ๋ณด์๊ณผ ๊ฐ์ ๋ค์ํ ์ฐจ์์์ ํ๋ซํผ์์ ์์ฑ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ํ ์คํธํด์ผ ํฉ๋๋ค. REST API endpoints ๋ฐ WebSocket endpoints ์ ๊ฐ์ ์ค์ํ ๊ตฌ์ฑ ์์๋ ํด๋น ๊ธฐ๋ฅ์ ๋ํด ๊ฒ์ฆ๋์ด์ผ ํฉ๋๋ค.
ํจ๊ณผ์ ์ธ UI ํ ์คํธ๋ ์ ์ฒด ๊ฐ๋ฐ ๋ฐ ํ ์คํธ ํ๋ก์ธ์ค์ ํตํฉ๋ ๋ ์ํํธ์จ์ด ์ ํ๋ฆฌ์ผ์ด์ ์ ํ์ง๊ณผ ์์ ์ฑ์ ํฌ๊ฒ ํฅ์์ํต๋๋ค. UI ํ ์คํธ๋ ๊ฐ๋ฐ ์ฃผ๊ธฐ ์ด๊ธฐ์ ๊ฒฐํจ์ ์๋ณํ๊ณ ์์ ํจ์ผ๋ก์จ ํ๋ก์ ํธ ์ง์ฐ ๋ฐ ๋น์ฉ ์ด๊ณผ์ ์ํ์ ์ค์ ๋๋ค. ํ ์คํธ ์ฌ๋ก ์ฐ์ ์์ ์ง์ , ์ง์์ ์ธ ํตํฉ, ๊ฒฐ๊ณผ ์ค์ฌ ํ ์คํธ ์๋ํ ๋ฑ UI ํ ์คํธ์ ๋ํ ์ ๊ณ ํ์ค ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ํ์ฉํจ์ผ๋ก์จ ์กฐ์ง์ ์ํํธ์จ์ด ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ์ต์ ํํ๊ณ ๋ ๋์ ์ฌ์ฉ์ ๋ง์กฑ๋, ์ฑํ ๋ฐ ์์ต์ผ๋ก ์ด์ด์ง๋ ๋ฐ์ด๋ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ๊ณตํ ์ ์์ต๋๋ค. ํฌ์์.