首页 > 数据库技术 > 详细

对图数据库(Nebula)进行单元测试时的坑

时间:2021-07-03 10:50:28      阅读:14      评论:0      收藏:0      [点我收藏+]

通过Nebula提供的Java Client完成代码开发后,使用JUnit对其进行单元测试,需要注意几点:

一、不确定性

1.Nebula创建图空间是异步实现的,Nebula将在下一个心跳周期内(默认是10s)完成图空间的创建

  如果单元测试代码中有动态创建、删除图空间的语句,单元测试结果可能是不确定的,时好时坏

2.如果单元测试中有动态创建Tag、EdgeType,单元测试结果可能是不确定的,时好时坏

二、解决方案

1.基于前面的两种不确定性,建议提前手动创建好图空间(相当于关系数据库)、Tag(相当于关系数据库中的表)、EdgeType(相当于关系数据库中的表)

  只对Vertex以及Edge进行动态插入删除操作,这样单元测试的结果是稳定的,不会出现时好时坏的现象

2.如果使用JUnit5进行单元测试,建议:

 在@BeforeAll注解的方法里进行Vertex及Edge的初始化

 在@AfterAll主机的方法里进行Vertex及Edge的清除、Nebula会话的释放、连接池的关闭等操作

对图数据库(Nebula)进行单元测试时的坑

原文:https://www.cnblogs.com/liugh/p/14965266.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!