栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何使用参数化运行JUnit SpringJUnit4ClassRunner?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何使用参数化运行JUnit SpringJUnit4ClassRunner?

至少有两个选项可以做到这一点:

  1. 以下http://www.blog.project13.pl/index.php/coding/1077/runwith-junit4-with-both-springjunit4classrunner-and-parameterized/

您的测试需要看起来像这样:

         @RunWith(Parameterized.class)     @ContextConfiguration(classes = {ApplicationConfigTest.class})     public class ServiceTest {         private TestContextManager testContextManager;         @Before         public void setUpContext() throws Exception {  //this is where the magic happens, we actually do "by hand" what the spring runner would do for us, // read the JavaDoc for the class bellow to know exactly what it does, the method names are quite accurate thoughthis.testContextManager = new TestContextManager(getClass());this.testContextManager.prepareTestInstance(this);         }         ...     }
  1. 有一个github项目https://github.com/mmichaelis/spring-aware-rule,它建立在以前的博客上,但是以一种通用的方式添加了支持
        @SuppressWarnings("InstanceMethodNamingConvention")    @ContextConfiguration(classes = {ServiceTest.class})    public class SpringAwareTest {        @ClassRule        public static final SpringAware SPRING_AWARE = SpringAware.forClass(SpringAwareTest.class);        @Rule        public TestRule springAwareMethod = SPRING_AWARE.forInstance(this);        @Rule        public TestName testName = new TestName();        ...    }

因此,您可以让一个基本类实现其中一种方法,并从中继承所有测试。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/497402.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号