java - 具有相同字符串的 JUnit 断言错误
问题描述
我正在尝试制作一个测试用例来检查 Dropwizard Metric Meter 名称:这是代码:
@Test
public void getMeterName(){
String metricsPrefix = "com.company.team";
String tagSupplied = "tenant.db.table";
String expectedMeterName = "com.company.team.tenant.db.table";
assertSame(expectedMeterName,MetricRegistry.name(metricsPrefix,tagSupplied));
}
这是我得到的错误:
java.lang.AssertionError: expected same:<com.company.team.tenant.db.table> was not:<com.company.team.tenant.db.table>
Expected :com.company.team.tenant.db.table
Actual :com.company.team.tenant.db.table
我在这里想念什么?
解决方案
我在这里想念什么?
您正在测试的字符串相等但不是同一个对象。
你正在使用assertSame
你应该使用的地方assertEquals
。
这类似于使用==
比较字符串的错误。
(另请参阅:如何在 Java 中比较字符串?)
推荐阅读
- perl - Mojo::UserAgent 非阻塞 vs 阻塞性能
- javascript - HTML/Javascript:我试图检索插入表中的特定复选框值
- r - 在R数据框的字符列(创建新列)中提取括号之间的文本
- php - 如何从 woocommerce 中的链接产品中获取分组的产品 ID
- css - 试图理解 BEM
- php - oop 中的错误(SQLSTATE [HY000]:一般错误)
- javascript - 如何向此 DIV TOGGLE Hid/Show 添加过渡动画?
- c# - 如何暂停或停止正在播放的音频文件
- javascript - 带有 js 和 php 的步行(tic-toc)时钟
- java - 不知道为什么我收到 java.util.NoSuchElementException 错误