正如我在问题中所说,是否可以将 jmeter 变量(通过 -J 传递)传递到JUnit Request
为了它可以在 junit 测试内部使用?
听起来可行Apache Junit 请求文档 http://jmeter.apache.org/usermanual/component_reference.html#JUnit_Request表明:
... JMeter 目前直接运行测试方法,而不是
将其留给 JUnit。 ...
这表明 jmeter 可以控制传递参数,但我发现没有支持文档,并且通过 JUnit 请求采样器配置没有明显的机制。
背景
我本来希望使用CSV Data Set Config
加载用户池(如Victor Klepikovskiy 出色的重要提示 http://jmeter-tips.blogspot.co.uk/2010/03/tip-10-how-to-add-authorization-to-test.html)并将随机获得的用户提供给我的单元测试(用于跨线程/循环使用)。我找到了一种执行我想要的操作的替代方法(但使用从 junit 测试中访问的我自己的用户池)。我知道您可以通过以下方式管理登录Http Request
也是(如上所述),但我们在内部管理对 junit 的其余服务调用,以便它们也可以作为 junit 测试运行。我对尽可能不打扰他人很感兴趣。
这样做的第二个原因可能是拥有单个 junit 测试方法,但对其进行参数化以适应场景。
Addendum
就其价值而言,我对当前的替代方法感到满意,但仍然对您如何能够做到这一点感兴趣,以供将来参考。我对 jmeter 相当陌生,但希望能看到更多。还考虑查看预处理器,但不确定它们如何与 Junit 请求交互。
我试图完全按照你正在做的事情(尽管从未专门使用过 -J )。
简而言之,我仍然没有找到一种方法可以将变量传递到 JUnit 请求中。我相信目前不支持它。
当时,我看到这样做的唯一方法是传递参数(例如,${__threadNum}甚至从CSV 数据集配置) 进入构造函数字符串标签并适当地编写我的构造函数。但是,我只得到了字符串文字“${__threadNum}“。我联系了支持人员,他们向我提到这行不通。我完全忘记了他们说的内容,也找不到电子邮件。但主要思想是在参数中的参数之前实例化或创建 JUnit 请求。构造函数字符串标签被解析。这就是为什么它行不通的原因。
我目前正在使用与您相同的替代方案,让我的测试从文件中读取凭据。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)