Ответ 1
Я использую googletest через NDK. Я использую $(вызов import-module для вывода основного .so, а затем в исполняемом файле есть один файл, который выглядит как
int main(int argc, char *argv[])
{
#if RUN_GTEST
INIT_GTESTS(&argc,(char**)argv);
RUN_ALL_GTESTS();
#endif
}
И затем я создаю это с помощью BUILD_EXECUTABLE, разворачиваю его так:
find libs/ -type f -print -exec adb push {} /data/local/tmp \;
и запустите его, как
adb shell LD_LIBRARY_PATH=/data/local/tmp:/vendor/lib:/system/lib /data/local/tmp/gtest
Таким образом, он не проверяет жизненный цикл приложения, но проверяет все модульные тесты.
Если мне нужно было что-то протестировать с помощью пользовательского интерфейса, я мог бы сделать что-то подобное, но сделать то, что теперь является "основной" родной функцией и вызывать ее при загрузке активности.