Skip to content

Exception

Han-Gyeol Lee edited this page Feb 25, 2019 · 7 revisions

사용자의 여러 상황을 테스트

우리 앱은 권한 허용 여부, 네트워크 상태에 매우 의존적이므로, 각각의 경우를 잘 테스트하여 모든 상황에 적절하게 대응하는 것이 중요했습니다.


  1. 네트워크 연결 상태에 따라
  2. HealthKit 권한 상태에 따라
  3. Core Location 권한 상태에 따라

1차 테스트

Network HealthKit CoreLocation 비고
false false false HealthKitService는 에러 발생시 0을 내려줌. 나머지는 네트워크가 없으므로 '정보없음 표시
false false true 네트워크 없으므로 '정보없음'
false true false 이상 없음
false true true CoreLocation 에러 처리 필요 -> LocationError 정의하여 해결
true false false 이상 없음
true false true HealthKit 권한을 가져오는 기능을 HealthKitManager, HealthKitService에 구현하여 문제 해결
true true false 이상 없음
true true true 이상 없음

2차 테스트

Network HealthKit CoreLocation 비고
false false false 어떠한 데이터도 표시되지 않음(-로 표시됨). 그래프는 기본값 표시됨
false false true 어떠한 데이터도 표시되지 않음(-로 표시됨). 그래프는 기본값 표시됨
false true false 헬스킷 데이터만 표시되고 나머지는 표시되지 않음(-로 표시됨). 그래프는 기본값 표시됨
false true true 헬스킷 데이터만 표시되고 나머지는 표시되지 않음(-로 표시됨). 그래프는 기본값 표시됨
true false false 어떠한 데이터도 표시되지 않음. 그래프는 기본값 표시됨
true false true 대기오염 관련 데이터만 표시되고, 오늘 마신 먼지, 헬스킷 정보는 표시되지 않음. 그래프는 기본값 표시됨
true true false 헬스킷 데이터 잘 표시됨. 나머지는 -로 표시됨. 그래프는 기본값 표시됨
true true true 잘 표시됨!

권한을 모두 주어 정상적으로 데이터를 받아와 앱 내부에 보존한 이후, 네트워크에 문제가 있어 네트워킹이 정상적으로 이루어지지 않는 경우에도 마지막으로 요청한 데이터를 잘 보여주는 것을 확인함

Clone this wiki locally