【问题标题】:Running karate-gatling tests in distributed mode using docker使用 docker 在分布式模式下运行 karate-gatling 测试
【发布时间】:2020-07-17 00:07:55
【问题描述】:

我对使用 docker 有点陌生,作者提到可以使用 docker 运行 karate-gatling 测试来运行分布式测试:https://github.com/intuit/karate/wiki/Distributed-Testing#gatling 如果有人已经尝试过,谁能给我一个可以用来执行此操作的示例或将我定向到 github repo 吗? 空手道作者提供了一个很好的例子来使用 docker 运行 web ui 测试,所以我正在寻找类似的东西:https://github.com/intuit/karate/tree/master/examples/jobserver

【问题讨论】:

    标签: docker karate


    【解决方案1】:

    这实际上是examples/gatling 示例项目的一部分,请查看GatlingDockerJobRunner 单元测试。

    我将编辑 wiki 以使其更清楚。是的,这可能不是最好的示例,请尝试一下,我们很乐意采纳您建议的任何更改。

    编辑:这张票的更多信息:https://github.com/intuit/karate/issues/1220

    【讨论】:

    • 您在 wiki 中这样提到:“您应该能够使用相同的方法在多个硬件节点上“横向扩展”。一旦服务器 jobUrl 已知,只需启动多个 JobExecutor-s”我有 2 个安装了 docker 的 Windows 虚拟机,所以我如何使用它们来运行测试,比如你能举个例子,使用 JobExectutor-s 以及如何在这个 main() 方法中调用它们:github.com/intuit/karate/blob/develop/examples/gatling/src/test/…
    • @dk8080 如果您是 Docker 新手,这真的很难解释。我就说这个吧。 jenkins 部分有一个关于如何启动 docker 容器并传递 JobUrl 的示例:github.com/intuit/karate/wiki/… - 其余的由您决定。
    • 我能够使用 GatlingDockerJobRunner 在 docker 本地运行测试,但最后我收到了与 JobServerHandler 19:32:41.649 [nioEventLoopGroup-3-2] WARN i.n.k.channel.DefaultChannelPipeline - An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception. 相关的警告。报告是在两个文件夹中生成的,即 1 和 2 但它们不是解压缩,然后合并为一份汇总报告。
    • 当我检查 zip 文件位于目标\1594341059681\1\ 时,会显示此错误消息java.lang.RuntimeException: java.io.FileNotFoundException: target\1594341059681\1\1\ (The system cannot find the path specified) at com.intuit.karate.job.JobUtils.unzip(JobUtils.java:113)。为什么要检查另一个级别,即 1\1 可能是代码中的错误
    • @dk8080 绝对可能是代码中的错误。你认为你可以修复它并提交 PR 吗?文档确实说这是实验性的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-05
    • 1970-01-01
    • 1970-01-01
    • 2020-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多