·5분 읽기

iOS 개발자를 위한 Mac용 SQLite 브라우저

iOS 개발은 앱이 로컬 데이터베이스에 무엇을 기록했는지 끊임없이 확인하는 일입니다. Xcode에는 내장 SQLite 뷰어가 없어서 터미널과 서드파티 도구로 워크플로우를 짜맞춰야 합니다.

영속성을 위해 Core Data나 순수 SQLite를 사용하는 iOS 앱을 만들고 있습니다. UI에서 뭔가 이상해 보입니다 — 목록이 채워지지 않거나 값이 오래된 것처럼 보일 수 있습니다. 데이터베이스를 확인해야 합니다. Xcode는 데이터 모델 편집기와 Instruments 프로파일러를 제공하지만, 둘 다 SQLite 파일에 실제로 있는 행을 보여주지는 않습니다. 그래서 터미널을 열고 시뮬레이터의 컨테이너 경로를 찾아, Z 접두사가 붙은 테이블에 대해 SELECT * 쿼리를 실행하기 시작합니다. 이 워크플로우는 매번 집중을 깨뜨립니다.

iOS 개발자의 데이터베이스 문제

모든 iOS 시뮬레이터 실행은 UUID 이름의 디렉터리 안에 중첩된 ~/Library/Developer/CoreSimulator/Devices/ 아래에 데이터를 저장합니다. 시뮬레이터를 초기화하거나 기기를 전환하면 경로가 바뀝니다. 위치를 북마크해두어도 다음 Xcode 업데이트가 순서를 뒤섞어버릴 수 있습니다. 올바른 .sqlite 파일을 찾는 것이 절반의 싸움입니다.

일단 찾으면 sqlite3 CLI는 원시 텍스트 출력을 줍니다. Core Data의 Z 접두사가 붙은 테이블과 열 이름은 수동 쿼리를 헷갈리게 만듭니다. 열 이름에 대한 자동완성도 없고, 행을 훑어볼 시각적 그리드도 없으며, 전체 UPDATE 문을 작성하지 않고 테스트 값을 빠르게 편집할 방법도 없습니다. 대부분의 개발자는 하루에도 여러 번 이런 춤을 추느라 시간을 낭비합니다.

DB Browser for SQLite 같은 서드파티 도구는 작동하지만 macOS에서는 낯설게 느껴집니다 — 잘못된 키보드 단축키와 네이티브가 아닌 파일 대화상자를 가진 Qt 기반 인터페이스. DBeaver와 DataGrip은 완전한 데이터베이스 IDE로, 로컬 SQLite 파일 하나를 검사하기에는 과합니다.

Tome: Mac 워크플로우를 위해 만들어진 SQLite 브라우저

Tome은 iOS 개발자의 워크플로우에 자연스럽게 녹아드는 네이티브 macOS SQLite 브라우저입니다. 시뮬레이터의 .sqlite 파일을 열면 모든 테이블, 뷰, 인덱스를 즉시 확인할 수 있습니다. 스크롤 가능한 그리드에서 Core Data의 Z 접두사가 붙은 테이블을 탐색하세요. SQL을 작성하지 않고 값을 인라인으로 편집해 테스트 시나리오를 구성하세요.

Tome browsing an iOS app's SQLite database on Mac

Core Data 저장소를 시각적으로 검사하기

Core Data의 SQLite 테이블은 터미널에서 해석하기 어려운 Z 접두사 이름을 사용합니다. Tome에서는 모든 테이블이 사이드바에 나타납니다 — 하나를 클릭하면 제대로 정렬된 열과 함께 모든 행을 볼 수 있습니다. ZUSER와 ZPOST 테이블을 관리 객체 모델과 한눈에 맞춰보세요.

재구성 없이 테스트 데이터 편집하기

버그를 재현하기 위해 값을 바꿔야 하나요? Tome에서 셀을 클릭하고 새 값을 입력하세요. UPDATE 문을 작성하거나 앱의 시딩 로직을 다시 실행할 필요가 없습니다. 엣지 케이스를 테스트하기 위해 행을 삽입하거나 깨끗한 상태를 시뮬레이션하기 위해 레코드를 삭제하세요.

진단 쿼리 실행하기

구문 강조와 자동완성을 갖춘 Tome의 SQL 편집기로 조인, 집계, 필터링된 쿼리를 작성해 앱의 데이터를 검증하세요. 관계를 검증하고, 레코드를 세고, 특정 값을 검색하세요 — 모두 앱을 벗어나지 않고서.

Mac App Store에서 Tome 받기

다음 기사

Tome

Browse, query, and edit SQLite databases in a native Mac app.

Get Tome on the Mac App Store