🚀 3단계 - GitHub(UI 상태)#52
Conversation
BeokBeok
left a comment
There was a problem hiding this comment.
이전 단계 피드백과 Github(UI 상태) 미션하시느라 고생하셨습니다. 👍
고민해볼만한 의견들을 코맨트로 작성하였으니, 충분히 고민해보시고 도전해보세요. 💪
| @Preview | ||
| @Composable | ||
| private fun GithubRepositoryScreePreview() { | ||
| private fun GithubRepositoryScreeErrorPreview() { |
There was a problem hiding this comment.
에러 화면일 경우 Preview는 어떻게 확인해보면 되는걸까요? 🤔
만약 방법을 아신다면, 어떻게 확인해야하는지 코드만 보고 인지할 수 있으면 좋을 것 같은데 상아님은 어떻게 생각하시나요?
There was a problem hiding this comment.
질문을 잘 이해하지 못했습니다.
해당 preview 빌드 시, 에러 화면이 로드 되고, 재시도 버튼 클릭 시, 빈화면이 노출되게 해서 상태에 따른 변화도 업데이트 되는 것 확인했습니다.
코드에서
최초 repositoryState 를 Error 로 할당하고,
retryAction 클릭 시, respositoryState 를 empty 로 업데이트 해서 확인할 수 있게 개발했습니다.
어떻게 확인해야 하는지 코드만 보고 인지하게 하려면, 주석으로 테스트 방법을 써놔야 할까요?
preview 빌드 해보고나 간단히 interaction mode 이용하면 바로 확인할 수 있을거라 생각했는데 어떤 부분이 어려우셨을까요?
Screen_recording_20250312_231800.webm
There was a problem hiding this comment.
@ethanchaee
일반적으로 Preview는 안드로이드 스튜디오 상에서 UI가 어떻게 그려지는지 확인할텐데요.
상아님께서는 해당 Preview는 빌드를 해서 직접 확인해봐야한다는 것을 아시지만, 동료가 봤을 때 Preview를 빌드를 해서 직접 확인해봐야한다는 것을 어떻게 알 수 있을까요? 🤔
혹시 상아님께서 Preview를 봤을 때 "아 이건 빌드를 해서 확인해봐야겠다" 하는 기준이 있을까요?
There was a problem hiding this comment.
보통 코드리뷰 할 때, 한번씩 실행 해보는 편입니다.
특히 클릭 인터랙션, 애니메이션, 다이얼로그, 스낵바가 있을 때는 인터랙션을 보기위해, 빌드를 해보거나, interaction mode 를 활용하는데요.
저는 해당 프리뷰를 생성했을 때, 에러가 발생했고, 발생 이후에 클릭 시, 성공으로 상태가 변경되는 것을 보여주기 위함이었습니다.
이런 생각을 가지고 있다 보니 당연히 빌드 해봐야 한다고 생각했는데요.
현석님이 질문주신 내용 보고 생각해보니, preview 로 단순 UI 노출을 기대하지, 위와 같은 과정을 기대할거라 생각되지 않네요.
이런 케이스라면, 프리뷰 보다는 ViewModel 테스트로 진행하는게 더 적절 하다고 생각이 들었습니다.
또는, RespoitoryState 상태에 따른 화면을 보여주는 것이다 라는 걸 표현할 수 있는 다른 네이밍이 좋겠다 라는 생각도 들었습니다.
프리뷰를 좀 더 프리뷰로 활용하거나,
복잡한 프리뷰의 경우 더 명시적인 네이밍 또는 상세 설명이 필요하다고 느꼈습니다.
다시 한 번 생각 해볼 수 있게 질문 주셔서 감사합니다.
@ethanchaee |
BeokBeok
left a comment
There was a problem hiding this comment.
피드백 반영하시느라 고생하셨습니다. 👍
추가로 고민해볼만한 의견들을 코맨트로 작성하였으니, 충분히 고민해보시고 도전해보세요. 💪
다음 미션을 진행하시면서, 추가로 작성된 코맨트들도 반영해주세요. 🙏
step3 UI state
구현사항
안녕하세요 현석님,
궁금한 점이 하나 있습니다.
프로그래밍 요구 사항 중에, 기능 요구 사항에 대한 UI 테스트를 작성한다 라는 내용이 있었는데요.
UI 테스트 작성하다 보니, 케이스 별로 구현한 Preview 와 테스트 케이스가 동일해서 UI 테스트는 작성하지 않았습니다.
UI 테스트는 로직을 검증하지 않고, 노출에 중점을 둔다는 수업 내용을 미루어 봤을 때도, 필요 없어 보입니다.
현석님의 생각은 어떠신지 궁금합니다.
리뷰 잘 부탁드립니다 🙇♀️