특정 클래스 내에서 메서드를 추가하고 변경할 때 메서드에 대해 단위 테스트를 만들고 실행합니다. 이러한 테스트가 Android 프레임워크에 종속되는 경우 androidx.test API와 같은 통합된 장치 불가지론 API를 사용합니다. 이러한 일관성을 통해 물리적 장치 나 에뮬레이터 없이 로컬로 테스트를 실행할 수 있습니다. 나는 이해를 위해 예제에 간단한 손을 제공하고 싶습니다,하지만 그럼에도 불구하고 더 복잡한 경우에이 방법을 적용하는 것은 매우 쉽습니다. 단위 테스트는 테스트 폴더에 간다, 계측 테스트는 안드로이드 테스트 폴더를 통해 간다. 예를 들어 “작업 목록” 앱에는 작업을 만들고, 완료된 작업에 대한 통계를 보고, 특정 작업과 연결하기 위해 사진을 찍는 모듈이 있을 수 있습니다. 또한 이러한 모듈식 아키텍처는 관련 없는 클래스를 분리된 상태로 유지하는 데 도움이 되며 개발 팀 내에서 소유권을 할당하는 자연스러운 구조를 제공합니다. 시간이 많이 바뀌었고, 현재 우리가 처분할 수 있는 것은 적당한 양의 테스트를 작성할 뿐만 아니라 테스트에 의해 구동되는 앱과 라이브러리를 개발하기에 충분합니다. 이 기사에서는 안드로이드에서 TDD를 수행하는 방법을 공유 할 것입니다. 나는 TDD의 개념에 깊이 파고 하지 않습니다., 난 단순히 내가 사용 하는 접근 방식과 어떻게 크게 내 개발을 개선 설명 거 야.

구체적인 예제로 이에 대해 살펴보겠습니다. 프로젝트에 테스트 라이브러리 종속성을 추가할 때 주의해야 할 사항: 앱 모듈 build.gradle 파일에서 Android 테스트 또는 단위 테스트에 대한 종속성을 지정합니다. 이 프로젝트에서 app/build.gradle 파일을 살펴보면 JUnit과 같은 일부 종속성이 testImplementation을 사용하고 에스프레소와 같은 다른 종속성은 androidTestImplementation을 사용하는 것을 볼 수 있습니다. 이것은 테스트 파일이 테스트 / 또는 androidTest / 폴더에 있는지 여부와 일치합니다. 이제 테스트를 작성하고 통과되었으므로 테스트를 녹색으로 유지하면서 코드를 가능한 한 멋지게 만들기 위해 리팩터링을 수행합니다. 이 튜토리얼은 간단한 예이기 때문에이 방법에 대한 특정 리팩터를 가지고 있지 않지만, 창의적인 느낌이 들면 테스트가 여전히 통과하는 한 원하는 방식으로이 방법을 리팩터링할 수 있습니다! UI에서 요소를 테스트합니다. 예를 들어 단추에 올바른 레이블이 있거나 AlertDialog가 표시됩니다. 이러한 종류의 테스트는 개발자 자신 및 / 또는 QA (MonkeyRunner와 같은 일부 외부 프레임 워크를 사용하는 경우)에 의해 작성됩니다. 우리는 이러한 간단하고 쉬운 단계와 안드로이드 개발을위한 TDD를 채택했다.