验证单元测试中私有方法调用的顺序

2023-11-29

我有以下课程:

class MyClass {

  public void doIt() {
     methodOne();
     methodTwo();
     methodThree();
  }

  private void methodOne() {
     // ...
  }

  // rest of methods similar...

}

我的目的是验证当我调用 doIt() 时,将按顺序调用 methodOne()、methodTwo() 和 methodThree() 方法。

我在用着mockito为了嘲笑。有谁知道我如何测试这个场景?


我讨厌成为这样的人,但是:不要测试这个。测试输出、副作用、结果——而不是实施。

如果您确实想确保正确的顺序,请将这些方法提取到单独的类中并模拟它们。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

验证单元测试中私有方法调用的顺序 的相关文章

  • 模块化应用程序堆栈中的虚拟数据和单元测试策略

    如何管理用于测试的虚拟数据 将它们保留在各自的实体中 在一个单独的测试项目中 使用外部资源的序列化程序加载它们 或者只是在需要的地方重新创建它们 我们有一个应用程序堆栈 其中包含多个模块 这些模块依赖于另一个模块 每个模块都包含实体 每个模
  • JDK:如何以编程方式启用 PlatformLogger

    我需要以编程方式启用某些 JDK7 内部类的日志记录 这就是我在应用程序初始化时所做的事情 httpLogger Logger getLogger sun net www protocol http HttpURLConnection ht
  • 为什么我们要在invokeAll方法之后调用join?

    我正在尝试了解 ForkJoinPool 框架并遇到以下示例 public class ArrayCounter extends RecursiveTask
  • 将日期从“2009-12 Dec”格式转换为“31-DEC-2009”

    2009 12 Dec should be converted to 31 DEC 2009 2010 09 Sep should be converted to 30 SEP 2010 2010 02 Feb should be conv
  • 如果没有发生触摸事件,Android SurfaceView 会变慢

    我正在制作一款游戏 除了游戏循环之外一切都很顺利 我正在使用 SurfaceView 并绘制 2D Sprites 位图 目前游戏是一艘穿过小行星带的飞船 飞船停留在屏幕中央 手机向任一方向倾斜以移动小行星 小行星改变位置而不是玩家 当旧的
  • 查找 Maven 使用的 Java 选项

    如何找到 Maven 正在使用哪些 Java 选项 Xmx Xms Xss 等 我发现有一种方法set它们是通过环境 MAVEN OPTS 实现的 现在我想要一种方法来确保它获得正确的设置 编辑 我相信它有所不同这个问题 https sta
  • 当生成 Apache CXF 客户端时,为什么在实例化客户端时仍然需要 WSDL?

    我想要使 用 SOAP 服务 但 WSDL 是离线提供给我的 因此导致使用 WSDL 的本地路径生成客户端 public class SoSo extends Service public final static URL WSDL LOC
  • 什么是运行时绑定?

    根据 Android 开发者指南 Intent 是一个提供运行时绑定独立组件之间 例如两个活动 什么是 运行时绑定 继承创建类型兼容性 它允许超类引用 引用子类的对象 反过来则不然 超类引用 指的是 子类的对象 只能用于 访问继承的和重写的
  • 关于final关键字的java基础知识

    方法中可以使用final关键字吗 绝对地 这final关键字几乎可以应用于任何事物 在每种情况下都意味着 您无法再更改它 这就是它应用于时的含义 一个变量 您根本无法为变量分配新值 将其呈现为constant 当然 a method 您不能
  • 从 android 将用户注册到 QuickBlox 用户

    我正在尝试在我的 Android 应用程序中使用 QuickBlox 我阅读了指南并导入了示例 一切正常 我更改了一些用户可以使用 EditText 作为用户名和另一个密码登录的内容 并且效果很好 但现在我想添加一个注册按钮 使用户能够注册
  • 基于区域设置的 SimpleDateFormat 模式,但强制使用 4 位数年份

    我需要建立一个像这样的日期格式dd MM yyyy 几乎就像DateFormat SHORT 但包含 4 个年份数字 我尝试用它来实现它 new SimpleDateFormat dd MM yyyy locale format date
  • 您可以链接两个 JFormattedTextField 的值吗?

    我有一个带有 2 个 JFormattedTextFields 的界面 我需要它们的值 不仅仅是显示的文本 相同 理想情况下 它们都应该是可编辑的 其中一个的更改会反映在另一个中 我一开始只是在两者之间共享一个文档 但很快就遇到了一个问题
  • 使用 Spring Security 标记库时将异常映射到 404 页面

    将异常映射到 404 页面时 Spring Security 标记无法从安全上下文中找到身份验证信息 通过 真实 404 可以找到身份验证 我的 web xml
  • 在 onClick 处理程序的活动类 [...] 中找不到方法 [...](View)

    当我按下按钮时fragment main xml 出现这个错误 java lang IllegalStateException Could not find a method sendMessage View in the activity
  • 如何向 XML DOM 对象添加命名空间前缀?

    我正在尝试使用特定的命名空间构建 XML 文档 我尝试生成的最终文档应该如下所示
  • 从 Runnable 类内部访问共享变量

    我需要在主类的 main 方法中定义一个共享变量 我需要两个线程才能访问该共享变量 我通过实现 Runnable 接口并实现该接口的抽象 run 方法来创建线程 如何从实现 Runnable 接口的类中定义的 run 方法中引用 Main
  • 模拟 default=timezone.now 进行单元测试

    我正在尝试为执行大量日期时间操作的 django 应用程序编写单元测试 我已经安装了mock http www voidspace org uk python mock 给 django 打猴子补丁timezone now为了我的测试 虽然
  • RMI服务器异常

    当我尝试运行使用远程注册表的服务器时 我收到以下来自 RMI 的异常 我的 Server2 类中 main 方法的注册表代码是 Registry registry LocateRegistry getRegistry 192 168 1 4
  • Java 8 并行流和 ThreadLocal

    我试图弄清楚如何在 Java 8 并行流中复制 ThreadLocal 值 所以如果我们考虑一下 public class ThreadLocalTest public static void main String args Thread
  • 如何在servlet应用程序中更改用户的tomcat密码?

    我们的 Web 应用程序部署在 Tomcat 上 目前使用 UserDatabaseRealm 来确保安全 我们希望在应用程序中提供一个页面 用户可以在其中更改密码 一个简单 常见的 Web 应用程序功能 我找不到任何示例 servlet

随机推荐

  • 将 matlab 矩阵转换为向量

    我想在预定义位置获取 Matlab 矩阵的元素向量 例如 我有以下内容 gt gt i 1 2 3 gt gt j 1 3 4 gt gt A 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 A 1 2 3 4
  • Trello.Net 授权有效,但授权后无法访问数据

    我是新来的Trello Net并在授权方面遇到了一些困难 我了解请求 URL 然后要求用户浏览该 URL 以获取令牌的过程 第一个问题是我正在尝试编写一个无需任何 UI 即可自动运行的进程 因此 我必须使用硬编码令牌 该令牌是通过运行此代码
  • 为 Outlook 2010 构建插件时 FindRibbons 任务意外失败

    我们正在使用 VS2013 NET4 Microsoft Async 和 BCL Portability 来自 Nuget 构建 Outlook 2010 插件 并遇到类似于以下内容的构建错误这个问题 and 本次论坛讨论不幸的是 这些资源
  • 使用从笛卡尔空间和世界文件生成的纬度和经度计算多边形面积

    给定一系列 GPS 坐标对 我需要计算多边形 n 边形 的面积 这是相对较小的 不大于 50 000 平方英尺 地理编码是通过对世界文件中的数据应用仿射变换来创建的 我尝试使用两步方法将地理编码转换为笛卡尔坐标 double xPos lo
  • 熊猫合并两个数据帧求和值[重复]

    这个问题在这里已经有答案了 假设我有两个带有部分重复条目的数据帧 source1 pandas DataFrame key a b value 1 2 key value 0 a 1 1 b 2 source2 pandas DataFra
  • 在 PhpStorm 中打开和关闭 HTML 标签时添加自动注释

    我想添加 HTML 注释 div class div 以及他们各自的 div s 例如 假设我有一个 div class main container 我想在它之后立即发表评论 然后在其之后 div 我想要一个 一切都会是什么样子的一个例子
  • Roslyn:如何从当前加载的解决方案中获取对工作区的引用?

    我试图获取对当前加载的工作区的引用 但没有成功 根据文档 粗体部分 我应该能够获得它的参考 工作区 API 位于 Roslyn Services 命名空间中 并且 如果您包含以下 using 指令 则它们可用 使用 Roslyn Servi
  • Windows 8 Metro 是否支持托管 c++/cli

    我似乎无法在任何地方找到这个问题的答案 但是 Metro 会支持托管 C 吗 目前在 Visual Studios 2012 RC 中还没有 仅在 Metro 中 我有一些用 c cli 编写的框架 想将它们移植到 Metro 我知道 c
  • MSSQL - 将 1970 年以来的毫秒转换为 datetime2

    考虑以下查询 在 MSSQL 2008 中 SELECT dateModified FROM SomeTable 这将返回 javascript 格式的浮点数 自 1970 年以来的毫秒数 dateModified 130159829068
  • 如何查找实现给定接口的所有类?

    在给定的命名空间下 我有一组实现接口的类 我们就这样称呼它吧ISomething 我还有另一堂课 我们称之为CClass 知道ISomething但不知道实现该接口的类 我想要那个CClass寻找所有的实施ISomething 实例化它的实
  • 在 Windows 中安装 perl DBI-mysql 的问题

    我已经下载并安装了活动Perl在我的 Windows 7 64 机器上 一切都很顺利 也加载了perl翻译成我的Eclipse平台 但是 当我尝试访问localhostMySQL数据库 我得到以下错误 database
  • 如何摆脱整个选项列表周围的蓝色边框[重复]

    这个问题在这里已经有答案了 我想做的是 如果我单击选择框并且下拉列表显示下拉列表的蓝色边框颜色将被删除 测试链接 http jsfiddle net 5kcsn 320 script input select textarea form b
  • 如何创建以表达式作为参数的通用表达式

    有一个DisplayNameFor x gt x Title ASP Net MVC 中的助手 我想在行为上实现类似的东西 我想要一种接受基于表达式的方法User class u gt u Birthdate或 u gt u Name 一个
  • 如何使用 HTML 和 CSS 创建完全灵活的钢琴键盘

    我正在尝试创建一个钢琴键盘 该键盘将使用弹性框保持其元素比例 但一旦我开始更改窗口大小 似乎无法使黑色音符保持相同的宽度或高度 这里有一个fiddle body width 800px height 200px display flex k
  • 查找每个组的第一个实例并填充到 R 中的新列

    我有以下 df ID Date 1 01 01 2018 2 01 01 2010 2 01 01 2012 2 01 01 2013 3 01 01 2015 3 01 01 2018 我已按 ID 升序对列进行排序 但现在想要找到每个
  • 如何根据多个值过滤数据框中的单列

    我有一个数据框 我想按单个列中的多个值对其进行过滤 如何实现此目的 当我按奇异值过滤时 我通常使用df filtered df df column value 但至少在我尝试过的情况下 这对于 61 个值不起作用 谢谢 MRN Result
  • 将 URL 参数从 Flask 发送到 Bokeh 服务器

    我正在尝试将 Bokeh 自动加载 服务器集成到 Flask 应用程序中 其中要加载的数据集将由用户在另一个页面上选择 这组数据的ID位于URL 获取参数 中 我无法将其从Flask应用程序发送到Bokeh服务器 一些示例代码 flask
  • 在 PageViewer 中自动滚动

    我的页面查看器有问题 我希望我的页面每两秒滚动一次 我尝试这样的事情 handler postDelayed new Runnable public void run viewPager setCurrentItem viewPager g
  • BufferedImage 旋转,更改生成的背景

    当我使用旋转图像时Graphics2D rotate 显然它在角落里留下了一些空白空间 空的角落变得透明 我希望我的程序能够旋转BufferedImage并用白色填充剩余的空角 我该怎么做呢 换句话说 我想旋转图像 同时保留整个图像的白色背
  • 验证单元测试中私有方法调用的顺序

    我有以下课程 class MyClass public void doIt methodOne methodTwo methodThree private void methodOne rest of methods similar 我的目