问题内容: 假设我有实现它的接口和实现类,并且我想为此编写单元测试。我应该测试什么接口或Impl? 这是一个例子: 因此,我有实现它的HelloInterface和HelloInterfaceImpl。什么是被测单元接口或Impl? 我认为应该是HelloInterface。请考虑以下JUnit测试草图: 主线实际上是我注释掉的那条线。 方法不是我的公共接口的一部分,所以我不想 意外地 调用它。如
问题内容: 我们刚刚开始在我们的项目上使用Gradle和TestNG,所以我正在检查是否有任何测试失败实际上会使构建失败。我很惊讶地发现事实并非如此。正确地拾取并编译了测试,因此我看到了类文件。我也得到了运行的报告,但是显示0个测试(预期2个)。跑步给我以下内容: SuperSimpleTest.java: build.gradle包含: 我已经看过有关此主题的其他问题,并且找到了用作解决方法的提
问题内容: 这是我的控制器内部的方法,其注释为 我期望作为我的json。 这是我的JUnit测试: 这是控制台输出: Even 是一个空字符串。 有人可以建议如何在我的JUnit测试方法中获取JSON,以便完成测试用例。 问题答案: 我使用TestNG进行单元测试。但是在Spring Test Framework中,它们看起来都很相似。所以我相信你的测试如下 如果要检查json键和值,可以使用js
问题内容: 我有一个使用当前时间进行一些计算的函数。我想使用模仿器模拟它。 我要测试的课程示例: 我想要类似的东西: 可以嘲笑吗?我不想更改“已测试”的代码以进行测试。 问题答案: 正确的做法是重组代码,使其更具可测试性,如下所示。重组代码以消除对Date的直接依赖关系将使您可以为正常运行时和测试运行时注入不同的实现:
问题内容: 有时我需要测试哪个类声明了一些变量,如果具体类包含具有某些名称的变量,还有另一种方法可以测试该变量 问题答案: 如果我理解正确,则可以在超类中使用此代码来测试子类是否具有字段。 为什么不简单地添加这样的方法? 对我来说似乎更多面向对象,不会破坏封装。 就是说,我并没有真正理解您为什么首先需要它。
问题内容: 如何使该单元测试在所有时区都通过测试,而与DST是否处于活动状态无关? 问题答案: 默认情况下,新用户将使用系统默认时区。如果您想要一个特定的时区,请致电: 对于第二项测试,您想要将其更改为: 请注意,通常不应该使用静态变量,因为它不是线程安全的。(而Joda Time 实现 是 线程安全的。)
问题内容: 单元测试对我来说是新手,而我却不明白这个错误。我有2个TestCases子类,它们在独立运行时可以正常运行,但在我的测试套件中却不能。 在测试套件(下面的AllTest类)中,前三个可以正常工作,但是AvailableResouresTest和ModelTest会生成错误。 我怀疑这与以下事实有关:我必须在AllTest中导入这两个类(并且只有它们),而它们都位于同一包中。 我使用Ec
问题内容: Maven执行 我正在尝试使用我的一个Maven项目,但在此阶段无法使用- 我得到的输出是- 尝试实施上述解决方案@ Surefire没有采用Junit5测试来将依赖关系更新为- 并将插件更新为- 但输出保持不变。 问题 -这是自定义提供没有更多的支持,或者是有什么解决方案使用执行测试,和/或 现在? 注意 -测试执行在JUnit-4上运行良好。 问题答案: 您应该像这样配置maven
问题内容: eclipse(Helios)中是否可以将我的JUnit测试套件(甚至可能的话,测试用例)打包/导出为可执行jar? 我知道如何从具有主类的项目中生成可运行的jar,但是我对如何包含。 有没有一种直接的方法,还是我必须制作一个以某种方式调用的替代主类? 细节会很棒。 问题答案: 正确的说,可执行jar需要main()方法。 不过,将主要方法添加到测试套件很容易。
问题内容: 我想测试用Go编写的gRPC服务。我使用的示例是来自grpc-go repo的Hello World服务器示例。 protobuf的定义如下: 主要类型是: 我在寻找示例,但找不到有关如何在Go中实现gRPC服务测试的任何示例。 问题答案: 我认为您正在寻找该软件包,以帮助您避免使用真实端口号启动服务,但仍允许测试流式RPC。 这种方法的好处是,您仍然可以通过网络连接来获得网络行为,但
问题内容: 我正在通过Jenkins构建Qt GUI应用程序。我添加了3个构建步骤: 构建测试可执行文件 运行测试可执行文件 用gcovr编制覆盖率报告 由于某种原因,用于运行测试可执行文件的shell任务在执行后会停止。即使是简单的也不运行。测试是使用Google Test编写的,并输出xUnit XML文件,这些文件将在构建后进行分析。一些测试启动了应用程序的用户界面,因此我安装了jenkin
问题内容: 我正在使用Selenium为网站构建一些功能测试,但我陷入了一个奇怪的浏览器问题,即页面似乎永远无法完成加载。状态栏读取“正在从…传输数据”或“读取…”。 由于页面从未完成加载,因此我的selenium测试超时。 该问题似乎仅在FireFox上发生。 我们的测试依靠FireFox * chrome来测试文件上传,因此FireFox对于我们的测试策略至关重要。 我已经检查了FireBug
问题内容: 我有一个充满void方法的Java类,我想进行一些单元测试以获得最大的代码覆盖率。 例如我有这种方法: 它的名字不好用是因为我翻译了代码以更好地理解。每种方法均会验证参数是否在某种程度上有效并且编写正确。 范例: 我的单元测试很好地涵盖了小的方法,因为我要求它们检查ErrorFile是否包含错误消息,但是我看不到如何测试方法checkIfValidElements,它什么也不返回或什么
问题内容: 我有以下课程: 我的意图是验证当我调用doIt()时,将按该顺序调用metodOne(),methodTwo()和methodThree()方法。 我正在使用模拟嘲笑。有谁知道我如何测试这种情况? 问题答案: 不想成为这个人,但是:别测试这个。测试输出,副作用,结果-而不是执行。 如果您确实想确保顺序正确,请将这些方法提取到单独的类中并进行模拟。
问题内容: 如何模拟使用PowerMock进行测试的专用方法?我有一个类,我想使用一个调用私有方法的公共方法进行测试。我想假设私有方法可以正常工作。例如,我想要类似的东西。我发现有使用PowerMock的解决方案,但该解决方案对我不起作用。怎么做?有人有这个问题吗? 问题答案: 我在这里没有问题。使用Mockito API的以下代码,我做到了: 这是JUnit测试: