具有相同字符串的 JUnit 断言错误
JUnit Assertion error with identical strings
我正在尝试制作一个测试用例来检查 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
我在这里错过了什么?
What am I missing here?
您正在测试的字符串相等但不是同一个对象。
您正在使用 assertSame
而您应该使用 assertEquals
。
这类似于使用==
比较字符串的错误。
(另请参阅:How do I compare strings in Java?)
使用 assertEquals() 而不是 assertSame(),因为您不能对字符串使用 assertSame()。
.参考这个
我正在尝试制作一个测试用例来检查 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
我在这里错过了什么?
What am I missing here?
您正在测试的字符串相等但不是同一个对象。
您正在使用 assertSame
而您应该使用 assertEquals
。
这类似于使用==
比较字符串的错误。
(另请参阅:How do I compare strings in Java?)
使用 assertEquals() 而不是 assertSame(),因为您不能对字符串使用 assertSame()。
.参考这个