作为 Karate.Runner(Java 调用)的一部分传递标签和特征文件参数
Pass both tags and feature file parameters as a part of Karate.Runner (Java invocation)
我正在使用 Runner class 使用 java 执行功能文件。据我在 class 实现中所见,我可以 运行 多个并行的特征文件 (Runner.parallel()
) 或 运行 个单独的特征文件 (Runner.runFeature()
).
正如我所探索的那样,Runner.runFeature()
能够将 java 中定义的对象传递给特征文件,但不能 运行 同时发送多个特征文件,并且,运行设置一组特定的@tags(或者我不知道如何完成)。而Runner.parallel()
可以一次执行多个feature文件,也提供提供@tags执行的能力,但是java对象不能作为feature文件参数传递。
有没有一种方法可以让我从 java 传递特征文件参数(以 json 对象的形式)以及通过 [=25= 只执行一组 @tags ] 调用?
到目前为止我使用的是 v1.0.1。
不,你不能。空手道的设计让你想要“初始化”的任何东西都可以加载到功能文件或 karate-config.js
中以获得更多“全局”的东西。
如果您需要示例,请参阅日志屏蔽文档:https://github.com/intuit/karate#log-masking - 展示了如何加载 Java class。您可以传递参数并将其设为“全局”,由您决定。
一个提示 - 您在空手道之外初始化的任何 Java 单例,例如在 JUnit 运行器中可以随时通过 Java 互操作从任何功能文件访问。
如果需要,请随时为 Karate 贡献代码以改进它。
我正在使用 Runner class 使用 java 执行功能文件。据我在 class 实现中所见,我可以 运行 多个并行的特征文件 (Runner.parallel()
) 或 运行 个单独的特征文件 (Runner.runFeature()
).
正如我所探索的那样,Runner.runFeature()
能够将 java 中定义的对象传递给特征文件,但不能 运行 同时发送多个特征文件,并且,运行设置一组特定的@tags(或者我不知道如何完成)。而Runner.parallel()
可以一次执行多个feature文件,也提供提供@tags执行的能力,但是java对象不能作为feature文件参数传递。
有没有一种方法可以让我从 java 传递特征文件参数(以 json 对象的形式)以及通过 [=25= 只执行一组 @tags ] 调用?
到目前为止我使用的是 v1.0.1。
不,你不能。空手道的设计让你想要“初始化”的任何东西都可以加载到功能文件或 karate-config.js
中以获得更多“全局”的东西。
如果您需要示例,请参阅日志屏蔽文档:https://github.com/intuit/karate#log-masking - 展示了如何加载 Java class。您可以传递参数并将其设为“全局”,由您决定。
一个提示 - 您在空手道之外初始化的任何 Java 单例,例如在 JUnit 运行器中可以随时通过 Java 互操作从任何功能文件访问。
如果需要,请随时为 Karate 贡献代码以改进它。