我知道String在比较的时候最好使用方法,StringA.equals(StringB);
所以想问一下Junit是不是也不能直接assertEquals(StringA,StringB),而必须采用assertEquals(true,StringB.equals(StringA));的方法?
assertEquals(String,String)能否比较成功没有问题?
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 小P聊技术 2021-06-01 10:08关注
assertEquals 和 assertTrue 区别
相同之处:都能判断两个值是否相等
assertTrue 如果为true,则运行success,反之Failure
assertEquals 如果预期值与真实值相等,则运行success,反之Failure不同之处:
assertEquals 运行Failure会有错误提示,提示预期值是xxx,而实际值是xxx。容易调式
assertTrue 没有错误提示代码块
App.java
package com.yubai.Test; public class App { public String method(){ return this.getClass().getName(); } }
AppTest.java
package com.yubai.Test; import static org.junit.Assert.*;//必须是static import org.junit.Test; public class AppTest { App app = new App(); @Test public void testBaseClass(){ assertTrue(app.method().equals("com.yubai.Test.App")); } @Test public void testmethod(){ assertEquals("com.yubai.Test.App", app.method()); } }
运行成功结果
assertEquals 运行失败后的错误提示
org.junit.ComparisonFailure: expected:<…ven.TestMaven_test.A[]> but was:<…ven.TestMaven_test.A[pp]>
assertTrue 运行失败后的错误提示
总结
两种方法都可以判断,一般建议使用assertEquals 容易调试
解决评论 打赏 举报无用 1
悬赏问题
- ¥15 elementui上传结合oss接口断点续传,现在只差停止上传和继续上传,各大精英看下
- ¥100 单片机hardfaulr
- ¥20 手机截图相片分辨率降低一半
- ¥50 求一段sql语句,遇到小难题了,可以50米解决
- ¥15 速求,对多种商品的购买力优化问题(用遗传算法、枚举法、粒子群算法、模拟退火算法等方法求解)
- ¥100 速求!商品购买力最优化问题(用遗传算法求解,给出python代码)
- ¥15 虚拟机检测,可以是封装好的DLL,可付费
- ¥15 kafka无法正常启动(只启动了一瞬间会然后挂了)
- ¥15 Workbench中材料库无法更新,如何解决?
- ¥20 如何推断此服务器配置