源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

JUnit中获取测试类及方法的名称实现方法

  • 时间:2022-03-12 23:23 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:JUnit中获取测试类及方法的名称实现方法
在JUnit的测试中,有时候需要获得所属的类(Class)或者方法(Method)的名称,以方便记录日志什么的。 在JUnit中提供了[url=https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/rules/TestName.java]TestName[/url]类来做到这一点,在org.junit.rules中:
public class TestName extends TestWatcher {
 private String fName;
 @Override
 protected void starting(Description d) {
  fName = d.getMethodName();
 }
 /**
  * @return the name of the currently-running test method
  */
 public String getMethodName() {
  return fName;
 }
}
虽然TestName只提供了方法的名称,要加上类的名称很容易,只需对TestName稍作修改如下:
protected void starting(Description d) {
 fName = d.getClassName() + "." + d.getMethodName();
}
在测试用例中的用法是:
public class NameRuleTest {
 @Rule public TestName name = new TestName();
 @Test public void testA() {
  assertEquals("testA", name.getMethodName());
 }
 @Test public void testB() {
  assertEquals("testB", name.getMethodName());
 }
}
大功告成!
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部