2016-08-19 85 views
4

我只想知道是否可以使用Robolectric框架对android录音机应用程序进行单元测试。如何使用robolectric单元测试android音频录音应用程序

据我所知,Robolectric不用于测试的模拟器或真实设备。但在录音应用程序中,我需要测试音频是否正在录制?它是否存储在SD卡上的指定位置?它是否使用媒体播放器播放?和许多其他场景。

我看了很多Robolectric的教程,但他们不回答我的问题。我还在Robolectric谷歌组中提出了这个问题(https://groups.google.com/forum/#!topic/robolectric/JLKrRGsvIkU),这个问题没有得到答复。阴影的概念在这里有用吗?

回答

4

我使用MediaRecorder录制音频。

Robolectric已经有一个Shadow for the MediaRecorder。该阴影仅存储属性和当前的采样/启动状态。没有实施录音。有关详情请参阅https://github.com/robolectric/robolectric/blob/master/robolectric-shadows/shadows-core/src/main/java/org/robolectric/shadows/ShadowMediaRecorder.java

是的,你可以进行单元测试与robolectric但真正的录音您的应用程序将无法正常工作。你可以做的一件事是当其他代码部分与这个文件一起工作时,将一个虚拟记录文件放到目标路径中。

此外,像espresso等其他工具可能很难测试。

+0

谢谢帮助我..! – nikhil