首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用concordion:使用参数运行?

如何使用concordion:使用参数运行?
EN

Stack Overflow用户
提问于 2015-09-09 15:29:07
回答 1查看 373关注 0票数 1

我想使用参数来运行Concordion规范。我想做的是使用concordion:run执行规范。一个少研究向我指出了concordion:params属性的存在,但我找不到任何文档或示例。

我不知道这两个命令是如何结合在一起的;params元素应该嵌套在run元素内部还是外部?在concordion:params="?"调用中,在何处指定param值本身-要填写的值是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-09-11 21:32:49

concordion:params是一个与concordion:run属性相同的元素上使用的属性。

例如,在MyIndex.html中:

代码语言:javascript
复制
<a concordion:run="concordion" concordion:params="foo=5" href="MySpec.html">My Spec</a>

使用夹具类:

代码语言:javascript
复制
@RunWith(ConcordionRunner.class)
@FullOGNL
public class MyIndex {
    public void setFoo(Integer foo) {
        System.out.println("foo = " + foo);
    }
}

请注意,@FullOGNL属性是必需的,以允许表达式中的语法foo=5,否则将不被允许。

注意:提姆·赖特( Tim )对这种方法有一个问题:

我看到的问题是,相同的规范可能由两个不同的规范(或者从一个规范中运行两次)运行,具有不同的参数,也可以从没有参数的jUnit中运行。因为我们只创建一个HTML文件,这种行为可能不是用户所期望的。这也意味着使用concordion:run将创建一个不同于直接作为jUnit测试运行规范的规范--这是我们一直在努力避免的。 当前的行为(使用concordion运行缓存)是第一个被调用的将创建HTML文件,第二个将返回缓存的运行结果,从而忽略参数。

这可能意味着我们反对concordion:params,并在2.0中删除它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32483658

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档