问题内容: 在过去的几年中,我一直以为Java在单元测试中广泛使用了反射。由于某些必须检查的变量/方法是私有的,因此某种程度上有必要读取它们的值。我一直以为反射API也用于此目的。 上周,我不得不测试一些软件包,因此编写了一些JUnit测试。一如既往,我使用反射来访问私有字段和方法。但是我检查代码的主管对此并不满意,并告诉我ReflectionAPI并不是要用于这种“黑客”活动。相反,他建议修改生
问题内容: 这是代码: 这是测试: 效果很好,该类已经过测试。但是Cobertura表示,该类的私有构造函数的代码覆盖率为零。我们如何向这样的私有构造函数添加测试覆盖率? 问题答案: 好吧,有很多方法可以使用反射等-真的值得吗?这是一个 永远不 应该 被调用 的构造函数,对吗? 如果您可以在类中添加注释或类似内容以使Cobertura理解不会被调用,请执行以下操作:我认为不值得人工添加覆盖范围。
问题内容: 我有一段使用环境变量的Java代码,代码的行为取决于此变量的值。我想用不同的环境变量值测试此代码。如何在JUnit中做到这一点? 我已经大致了解了一些在Java中设置环境变量的方法,但我对它的单元测试方面更感兴趣,尤其是考虑到测试之间不应相互干扰。 问题答案: 库系统Lambda具有设置环境变量的方法。 对于Java 5至7,库系统规则具有一个名为的JUnit规则。 完全公开:我是两个
问题内容: 我有一个Manager类,可以将数据保存在SQL表中,还可以从SQL表中获取结果并测试这些数据。当我运行程序时,将显示一个获取ID和密码的框架,如果它们正确,则另一个框架将但是我不知道为什么它只是测试SQL表的最后一行?我的意思是如果我用除最后一行以外的其他ID和密码设置那些文本字段,它将显示数据错误(我之前为错误的数据设置了它) 经理班: 我的按钮在获取ID和密码并对其进行测试的框架
问题内容: 有没有办法改变詹金斯基于失败的测试来计算构建状态的方式?我希望詹金斯将 所有 失败的测试视为“阳光明媚”之外的东西,但到目前为止,我一直在寻找一种方法来解决这一问题。标准设置是否允许这种级别的控制,或者也许有插件可以做到这一点? 问题答案: 如果使用支持多种测试报告格式的xUnit插件,则可以添加构建后操作来解析构建的测试报告,并根据失败或跳过的测试数量将构建声明为不稳定或失败。
问题内容: 如果我有与一起使用的代码,如何在不实际创建与localhost的网络连接的情况下为其编写测试? 我在网上没有看到任何解决方案。人们似乎忽略了它(没有测试),编写了不能并行运行的测试(即使用实际的网络连接,使用了端口),或者使用了io.Pipe。 然而,限定,; 而io.Pipe没有。net.Pipe 也 没有,尽管从表面上声称实现了该接口,但它只是通过以下方式实现: (请参阅:http
问题内容: 我正在用golang编写HTTP处理程序的单元测试。在查看代码覆盖率报告时,我遇到了以下问题:从请求中读取请求正文时,可能会返回我需要处理的错误。但是,当我为我的处理程序编写单元测试时,我不知道如何以触发该错误的方式将请求发送到我的处理程序(内容的结尾过早似乎不会产生这样的错误,但是会在解体身体)。这就是我想要做的: 我该如何为不存在的情况编写测试用例? 问题答案: 您可以创建和使用伪
问题内容: 我的代码中有很多组件具有持久的go例程,这些例程可以侦听事件以触发操作。在大多数情况下,没有理由(测试之外)让他们在完成该操作后发回通知。 但是,我的单元测试正在使用sleep等待这些异步任务完成: 这似乎是坏事,但我无法提出一种更好的解决方案,该解决方案不会在非测试使用中增加不合理的开销。有没有我错过的合理解决方案? 问题答案: Soheil Hassas Yeganeh的解决方案通
问题内容: 我的node.js摩卡套件中的典型测试如下所示: 这里的问题是,如果操作不正确,或者服务器中断并且从不调用,则将永远不会被调用。这给以前从未与测试人员一起工作过的人留下了模棱两可的错误,例如: 我的问题是,是否有一种方法可以重写这些测试,无论是与mocha一起使用还是与另一个lib一起使用,都可以使异步工作更容易遵循。我希望能够输出以下内容: 或类似的东西。 我不确定是否使用诸如pro
问题内容: 我需要根据元素包含的值单击元素。但是我想在测试运行或关键字定义中设置此值(我猜最好的选择是在测试中)我应该怎么做? 包含xpath的变量应如下所示: 当我将变量替换为实际数字(如“ 002”)时,此定位器有效,但我希望它更通用。 在关键字定义中,我像这样使用它: 在测试中,我只调用关键字 我的问题是 在哪里以及如何设置 xpath中使用 的$ {second_number} 变量 的变
问题内容: 您能用几句话来解释一下吗: 为什么我们需要它/为什么它们使我们的生活更轻松? 如何对[Java中的简单示例]进行单元测试? 什么时候我们不需要它们/项目类型,我们可以不进行单元测试? 有用的链接 问题答案: 为什么我们需要它/为什么它们使我们的生活更轻松? 它允许您检查要测试的代码段的预期行为,并作为它必须满足的合同。 它还允许您安全地重构代码,而不会破坏其功能(合同)。 它使您可以通
问题内容: 如何对具有内部私有方法,字段或嵌套类的类进行单元测试(使用xUnit)?还是通过内部链接(static在C / C ++中)或在私有(匿名)名称空间中使其私有化的函数? 仅仅为了能够运行测试而更改方法或函数的访问修饰符似乎很糟糕。 问题答案: 更新: 大约十年后,测试私有方法或任何无法访问的成员的最佳方法可能是来自Manifold框架。 这样,您的代码将保持类型安全和可读性。没有设计折
问题内容: 我想测试枚举类型的几个变量的等效性,如下所示: 可悲的是,这些都会产生这样的错误: 翻译:如果您的枚举使用关联的值,则无法测试它的等效性。 注意:如果(和相应的测试)已删除,则代码将按预期工作。 4,我想知道是否有更好的方法?还是发生了使链接的解决方案无效的更改? 谢谢! 问题答案: 迅捷的建议 SE-0185合成平等和可哈希的一致性 已在 Swift 4.1 (Xcode 9.3)中
问题内容: 我正在操场上进行测试,不确定如何执行此操作。对于没有关联值的普通枚举,一切都很好。 但是,如果我的一个枚举具有关联的值,则方向测试将因以下错误而失败:找不到成员“ West” 我该怎么做才能进行这项测试? 问题答案: 枚举的原始值为时,将自动进行枚举。在您的第一种情况下,假定原始值为,但是如果您给它指定另一个特定类型(例如或),它将有效。 但是,一旦添加了关联值,就不会再发生这种自动符
问题内容: 我有一个选择器视图,其中包含以下几个项目:“红色”,“绿色”,“黄色”,“黑色”。在我的UI测试中,我需要从中选择一个特定的项目“绿色”。我正在使用Xcode 7引入的XCTest UI测试API。 到目前为止,我设法在单元测试中向上滑动了整个选择器视图。这并不理想,因为它总是将选择器视图更改为底部项目(向上滑动时)。 更改选择器视图的另一种但非常相似的方法是调用,这不是我想要的。 当