Here,它指出我们可以使用DJISimulator
对象来帮助促进连续集成(即单元/集成测试)。但是我似乎无法弄清楚那是怎么可能的。 DJISimulator
和DJIFlightController
不遵循相同的基本协议,也没有相似的委托。
我想做的是在我的单元测试中,模拟(不附加无人机硬件或运行DJIAssistant 2)无人机起飞并执行我们建立和上传的航点任务,并在完成后,回家并着陆;遵循与我们使用真正的无人机和集成了DJISDK的自定义iOS应用程序飞行时执行的相同代码流。
这可能吗?
答案 0 :(得分:1)
目前,无法物理上循环运行模拟器(
但是,您可以在测试回路中连接并打开电源,而无需实际驾驶无人机即可模拟航点任务。
要开始模拟,请从飞机的DJISimulator
获取flightController对象,然后使用所需的位置,频率等调用start simulation方法。启动模拟器后, ,您可以听模拟器的委托方法来获取无人机在模拟世界中的状态。
编辑:
要添加更多有关编写单元测试的方法的信息,下面是一系列大致步骤的测试内容,例如:这样的任务[起飞,向北偏航,航点任务,回家和着陆] :
P.S。如果您希望对任务(航路点,热点等)进行更详细的更新,则还可以订阅以收听MissionOperator侦听器(WaypointMissionOperator,HotpointMissionOperator等)。那些有可能感兴趣的上载/下载侦听器。
此外,在测试的任何时候,您都根本不需要监听模拟器的状态监听器,因为您只需探测无人机的状态即可(位置,电动机是否打开等等),它会提供模拟值,您可以将其与期望值进行核对。