当前位置: 首页 > 知识库问答 >
问题:

空手道加特林:对特征文件的更改未被拾取

仲孙鸣
2023-03-14

我试图建立一系列触发空手道场景的加特林测试。我对功能文件所做的更改只是偶尔被加特林发现。例如,在下面的功能文件代码中,运行前四个项目(包括注释掉的“关系”行):

Feature: This feature attempts to load the main tabs in sequence for the purposes of performance testing via gatling

    Background: Create the investigation and job first
      # Get api url from karate-config.js
      * url baseUrl
      # This configures the http headers to use admin user for running the tests
      * callonce read('classpath:common/headers/admin-headers.feature')

      * def investigaitonId = 150
      * def jobId = 51


  Scenario: Twitter investigation with 1 selector
    Given path 'investigations', investigaitonId
    When method get
    Then status 200

    Given path 'jobs', jobId
    When method get
    Then status 200

    Given path 'investigations', investigaitonId, 'actors'
    When method get
    Then status 200

    #Given path 'investigations', investigaitonId, 'relationships'
    #When method get
    #Then status 200

    Given path 'investigations', investigaitonId, 'entities'
    When method get
    Then status 200

    Given path 'investigations', investigaitonId, 'events'
    When method get
    Then status 200

    Given path 'investigations', investigaitonId, 'activities'
    When method get
    Then status 200

    Given path 'investigations', investigaitonId, 'activities-media'
    When method get
    Then status 200

其余的不是。请参阅运行结果的附加屏幕:在此输入图像描述

POM供参考版本:

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.8</java.version>
        <maven.compiler.version>3.6.0</maven.compiler.version>
        <karate.version>0.9.4</karate.version>
        <junit5.version>5.5.1</junit5.version>
        <masterthought.version>4.9.0</masterthought.version>
        <gatling.plugin.version>3.0.2</gatling.plugin.version>
        <gatling.charts.version>3.2.1</gatling.charts.version>
        <scala.version>2.15.2</scala.version>
    </properties>

我怀疑像编译文件这样的东西在进行更改时不会刷新或重新编译。

共有2个答案

夏兴生
2023-03-14

使用以下命令解决了此问题:

mvn clean test-compile gatling:test
羊舌兴文
2023-03-14

您的pom中肯定缺少一些内容。xml。请将您的设置与此项目进行比较:https://github.com/intuit/karate/tree/develop/examples/gatling

如果*。功能文件不会自动复制到目标/测试类文件夹-您将面临此行为。

 类似资料:
  • 我遵循DemotestSelected.java示例在我的空手道框架中运行特性文件。当我在Intellij中运行它们时,它工作得很好。但当我将其转换为jar并运行时,它会抛出以下错误。 java.lang.RuntimeException:java.io.FileNotFoundException:file:\c:\src_path\target\app-jar-with-dependencies

  • 我有一个活动,我使用空手道模拟。其中一个API返回一个响应,但在一段延迟后,它还会调用另一个API(模拟工作负载的处理) 我希望达到以下目标: 我现在的处境是 在一个单独的功能文件中调用B,我可以从另一个功能文件中调用它。 所以我想我在空手道中与异步呼叫作斗争。 我确实创建了一个实现异步执行的Java类,但我不确定如何从它调用功能文件。这将立即为我解决这个问题。 还有没有更好的方法?

  • 我正在使用空手道测试REST API,现在我正在尝试并行运行特性文件: 该测试仅并行运行3个特性文件,并不运行所有5个特性。我从CucumberRunner.Parallel函数中得到了这段代码:

  • 我正在和空手道加特林一起做一个POC,以了解这种组合对我们性能要求的可行性。到目前为止,我能够成功地运行空手道功能文件与gatling。 但我面临两个问题: 我不能更新模拟类名。demo(空手道gatling)项目模拟默认类名是CatsKarate模拟。我想给它重新命名。 问题是: 当我重命名它时,它开始抛出以下错误: 无法执行目标io.gatling:gatlin-maven-plugin:2.

  • 我有一个模拟: 测试1。特色: 测试2。特色: 因为test1。功能失败,我希望Gatling停止该场景,而不打印“2”,但在我看到的日志中: 我做错什么了吗?谢谢

  • 我有3个功能文件,我试图在TestRunner类上使用@CucumberOptions(features=“classpath:karate/karate/APIM_LAYER.feature”)在空手道中执行特定功能。但在执行时,我们能够找到“目标/确定火灾报告路径”中存在的所有3个功能文件的报告。请告知我们是否有解决此问题的方法。