Я собираюсь приступить к реализации проекта с использованием Apache Hadoop / Hive, который будет включать в себя коллекцию сценариев запросов Hive для создания потоков данных для различных приложений в нисходящем направлении. Эти сценарии кажутся идеальными кандидатами для какого-то модульного тестирования - они представляют собой выполнение API-контракта между моим хранилищем данных и клиентскими приложениями, и поэтому довольно просто написать, какими должны быть ожидаемые результаты для данного набора исходных данных. Моя проблема в том, как запустить эти тесты.
Если бы я работал с запросами SQL, я мог бы использовать что-то вроде SQLlite или Derby, чтобы быстро вызывать тестовые базы данных, загружать тестовые данные и запускать для них набор тестовых запросов. К сожалению, я не знаю о таких инструментах для Hive. На данный момент моя лучшая мысль - заставить тестовую среду вызвать локальный экземпляр hadoop и запустить Hive против этого, но я никогда раньше этого не делал, и я не уверен, что он будет работать или будет правильным путем.
Кроме того, меня не интересует педантичная дискуссия о том, что я делаю, это юнит-тестирование или интеграционное тестирование - мне просто нужно иметь возможность доказать, что мой код работает.