我有一些安全测试,可以在Firestore模拟器上本地运行。该过程如下所示:
在终端选项卡1中,启动仿真器:
firebase emulators:start --only firestore
在终端标签2中,运行测试
yarn test rules
我想将这些测试作为GitHub Actions for CI运行。当前看起来像这样:
- name: Test Security Rules
run: |
firebase emulators:start --only firestore
yarn test rules
问题是启动仿真器不会返回,因此挂起并最终超时。
emulators: All emulators started, it is now safe to connect.
我希望了解如何启动仿真器,知道它何时准备就绪(或等待N秒钟),运行测试,然后(可选)关闭该过程。
答案 0 :(得分:1)
请阅读documentation for starting the Firebase emulators。您将要使用emulators:exec <scriptpath>
参数:
启动在firebase.json中配置的Firebase产品的仿真器后,在scriptpath上运行脚本。脚本完成运行后,仿真器进程将自动停止。
如果将要运行的命令的名称传递给它,则CLI会在准备就绪后为您运行该命令,然后在脚本完成后结束该过程。