草庐IT

test-protobuf

全部标签

java - 当我使用命令 `mvn test -Xlint:unchecked` 时。出现一些错误

[ERROR]Nopluginfoundforprefix'lint'inthecurrentprojectandintheplugingroups[org.apache.maven.plugins,org.codehaus.mojo]availablefromtherepositories[local(C:\Users\Administrator\.m2\repository),alimaven(http://maven.aliyun.com/nexus/content/groups/public/)]->[Help1]org.apache.maven.plugin.prefix.N

java - 为什么 JUnit 5 测试不从抽象类继承 @Test 注解?

我刚刚意识到(在将遗留代码从JUnit4迁移到JUnit5时)我们的一些测试方法没有执行,因为它们没有@Test注释。他们没有它,因为它们覆盖了抽象父类(superclass)(存在注释的地方)的方法。我可以通过向每个方法添加@Test轻松解决此问题。但我想知道这是否是预期的行为。它从JUnit4更改为5,但我在officialJUnit5UserGuide中找不到任何相关信息或其他任何地方。根据thisquestion,注解通常不被继承。但似乎这是在新的JUnit版本中有意更改的。(或者我错过了什么?)抽象测试类importorg.junit.jupiter.api.Test;abs

java - 测试调用 : how to do set up common to all test suites

有没有办法知道JUnit4测试类是否由测试套件启动?我有全局的东西,我想在所有测试之前运行(关于内存数据库),所以我想在测试服中做它。但是,我仍然希望能够在没有测试服的情况下一次启动一个测试,所以我需要知道我是否需要在测试的@Before部分初始化全局事物......有人知道吗如果它是可能的? 最佳答案 有几种方法可以实现这一点。最简单和最简单的方法是在套件的开始和结束时运行一个“测试”,它会设置您的数据库,然后设置一个全局标志。在您的@Before和@After测试中,您检查此标志,并在必要时进行设置/拆卸。@RunWith(Su

java - 如何最好地指定用于 Netty 的 Protobuf(最好使用内置的 protobuf 支持)

我在protocolbuffers中指定了一个协议(protocol).传输层正在利用Netty的ProtocolBuffer支持-Netty的ProtobufDecoder的重要性接受一种且仅一种MessageLite类型.现在,我想沿着这个channel发送各种不同的消息类型,每个子类型都有与之关联的结构化信息。Protocol-buffers没有继承机制,所以我使用了一种组合。我不确定我的处理方式是否正确。我的方法是使用枚举对我的不同事件进行分类,并使用可选成员封装它们的差异。请参阅下面我的.proto,为了清楚起见,我对其进行了简化。我的问题是接收代码需要在EventType.

java - 依赖名称在 google protobuf 2.5.0 中不一致

我有一个在Windows和Linux环境中运行的Web应用程序。在linux和仅linux中,我遇到以下异常:Causedby:java.lang.IllegalArgumentException:Invalidembeddeddescriptorfor"moop_shared.proto".atcom.google.protobuf.Descriptors$FileDescriptor.internalBuildGeneratedFileFrom(Descriptors.java:301)...Causedby:com.google.protobuf.Descriptors$Desc

java - Protobuf "oneof"功能不工作

我有一个示例protobuf消息:messagetestMessage{oneofoneOfTest{stringtest2=2;int32test3=3;}}但是编译失败,说:[ERROR]protocfailederror:Expected"required","optional",or"repeated".test.proto:Missingfieldnumber.根据行号,它正在寻找“oneof”之前的必需/可选/重复的keyworkd,并提示“oneOfTest”之后缺少字段号。这不是使用oneof的正确方法吗?我正在为Protobuf使用java编译器。

java - 无法在 Spring Boot Test 1.5 中设置运行时本地服务器端口

我正在为我的应用程序使用SpringBoot1.5。在集成测试中,我想获取Web服务器的运行时端口号(注意:TestRestTemplate在我的情况下没有用。)。我尝试了几种方法,但似乎都不起作用。以下是我的方法。第一种方法@SpringBootTest(classes=TestConfig.class,webEnvironment=WebEnvironment.DEFINED_PORT)publicclassRestServiceTest{@LocalServerPortprotectedintport;在我的src/main/resources/config/applicatio

java - 使用 maven : run jar before tests and terminate after 进行集成测试

我有一个可运行的jar,我想在我的集成测试开始之前(在pre-integration-test上)在一个新进程中运行它,并在我的集成测试完成后让它终止(在集成后测试).我可以使用的东西之一是maven-antrun-plugin或exec-maven-plugin在pre-integration-test上启动新进程,但如何终止它?对于我想要实现的目标,也许有更好的解决方案?PS:我在Windows和Linux上构建我的项目,所以可移植性对我来说很重要。 最佳答案 您可以使用maven-process-plugin由BV开源以分别启

java - JUnit + Derby + Spring : drop in-memory db after every test

在我的单元测试中,我Autowiring了一些使用URL的数据源jdbc:derby:memory:mydb;create=true创建内存数据库。要删除内存中的Derby数据库,您必须连接:jdbc:derby:memory:mydb;drop=true我希望在每次测试后都发生这种情况,并从一个新的数据库开始。我如何使用Spring执行此操作? 最佳答案 HowtoshutdownDerbyin-memorydatabaseProperly给了我一个解决方案的提示:mydb.drop.url=jdbc:derby:memory:m

java - 在 gradle 的 eclipse 构建中拆分 main 和 test

今天我尝试将一个带有集成测试的项目从maven切换到gradle。一切正常,除了我在testng上遇到严重问题。该项目使用hibernate/JPA2进行数据库访问,并有几个依赖于test/resources/META-INF/persistence.xml中的持久性单元的测试。当我使用gradle运行测试套件时,一切正常。但是当我从eclipse运行xml(或任何测试类本身)时,它似乎试图使用main/resources/META-INF/persistence.xml。因为我的大部分工作都使用TDD,所以我确实需要从eclipse运行/调试测试。当我将持久性单元添加到生产persi