如何实时更改模拟器虚拟场景?
Posted
技术标签:
【中文标题】如何实时更改模拟器虚拟场景?【英文标题】:How can I change emulator virtual scene in real time? 【发布时间】:2021-11-11 10:21:00 【问题描述】:我正在为扫描条形码的应用程序进行 UI 测试。我已经成功找到了一种在模拟器虚拟场景中插入条形码图像的方法,以测试this post之后的扫描。
我已经按照这个答案做了,因为这正是我所需要的: 问题是我想为每个测试用例测试不同的条形码图像,并且我正在尝试找到一种方法。
我认为的一种方法是实时替换图像,但我认为您需要重新启动模拟器,而且它看起来很脏,我不知道如何在 kaspresso 中实现它。另一种方法是在扫描仪中注入虚假结果,但这样就失去了端到端 UI 测试的目的,所以......
什么是最好的方法来做到这一点并实施它(如果可能的话)。我正在寻找答案,但似乎还没有人这样做。
我也发现模拟器文件夹的资源文件夹中有宏,这可能有用但我不知道如何使用它们:
【问题讨论】:
建议:android 模拟器 can accept webcam as input 并取决于您的 OS platform you can attempt to inject in test video/test images。不知道您是否可以invoke external commands 开始/停止视频/图像,或者是否能够使用您的测试框架适当地包装每个测试调用。 【参考方案1】:最后,我使用 Java 8 制作了一个 .jar 文件,该文件使用套接字来操作我使用 .posters 解决方案用作条形码的文件。它在运行 UI 测试时通过 Gradle 任务启动,在 android 模拟器中,我使用客户端来传达要在虚拟场景中放置的条形码。运行最后一个测试时,模拟器会关闭服务器。我们可以在管道中实现它。
【讨论】:
以上是关于如何实时更改模拟器虚拟场景?的主要内容,如果未能解决你的问题,请参考以下文章
制作实时 3D 场景的最简单方法,有点像一个简单的游戏(用于模拟器可视化目的)
声网Agora Lipsync技术剖析:通过实时语音驱动人像模拟真人说话