为基于AOSP构建的模块设置/运行测试

时间:2018-08-07 05:57:01

标签: android unit-testing android-source android-make

我是AOSP的新手。

我们正在开发AOSP C ++中间件模块。当前,我们将LOCAL_MODULE设置命名为Foo,并带有一些LOCAL_SHARED_LIBRARIES,例如音频,SqliteDatabase,Curl,http客户端等...

我想看看是否可以使用googletest对我的代码运行一些单元测试。

我在设置和运行测试时遇到问题。谁能给我一些指导或例子? (即使fooDummyTest assert(true)也可以)。

  1. 如何构造代码?
  2. 我该怎么做才能运行测试? (让Foo VS让FooTest吗?)

欢迎任何资源或链接, 在此先感谢!

2 个答案:

答案 0 :(得分:1)

您可以看一下带有BUILD_NATIVE_TEST变量的模块,例如:

frameworks/av/camera/tests/Android.mk

还可以查看LOCAL_SRC_FILES中列出的文件,在那里您可以找到Google测试的示例。

要构建测试,请转到包含Android.mk的目录并运行mm(在正确的lunch命令之后)。

观看构建输出,找到测试可执行路径,然后使用adb push将其推送到目标,或者使用adb sync来同步所有内容。然后连接到目标并通过调用测试可执行文件来运行测试。

答案 1 :(得分:0)

我实际上最终在Android.mk中创建了一个单独的模块,并在Linux上编译了一个主机库。对于其他库,我模拟了这些类。

包括$(BUILD_HOST_NATIVE_TEST)