Как использовать локализацию корнишона в рамках каратэ? - PullRequest
3 голосов
/ 25 января 2020

Я хочу использовать корнишон в Karate Framework.

Engli sh версия сценария работает отлично. Но с русской версией похоже, что Karate FeatureParser не знает локализованных тегов и дает сбой. Вот журнал ошибок:

line 15:0 mismatched input '<EOF>' expecting {FEATURE_TAGS, FEATURE}
16:44:01.263 [main] ERROR com.intuit.karate.core.FeatureParser - syntax error: mismatched input '<EOF>' expecting {FEATURE_TAGS, FEATURE}
16:44:01.270 [main] ERROR com.intuit.karate.core.FeatureParser - not a valid feature file: src/test/java/ru.feature - mismatched input '<EOF>' expecting {FEATURE_TAGS, FEATURE}
Exception in thread "main" java.lang.RuntimeException: mismatched input '<EOF>' expecting {FEATURE_TAGS, FEATURE}
    at com.intuit.karate.core.FeatureParser.<init>(FeatureParser.java:150)
    at com.intuit.karate.core.FeatureParser.<init>(FeatureParser.java:126)
    at com.intuit.karate.core.FeatureParser.parse(FeatureParser.java:69)
    at com.intuit.karate.IdeUtils.exec(IdeUtils.java:61)
    at cucumber.api.cli.Main.main(Main.java:36)

Engli sh версия файла функции:

Feature: Services A and B
  Background:
    * url 'http://localhost:8080'

  Scenario: call service A
    Given path 'service-a'
    And method get
    Then status 200

  Scenario: call service B
    Given path 'service-b'
    And method get
    Then status 200

Русская версия файла функции:

# language: ru
Функция: Сервисы А и Б
  Контекст:
    * адрес 'http://localhost:8080'

  Сценарий: вызов сервиса А
    Дано путь 'service-a'
    И метод get
    То статус 200

  Сценарий: вызов сервиса B
    Дано путь 'service-b'
    И метод get
    То статус 200

Что следует Я делаю, чтобы это исправить?

1 Ответ

3 голосов
/ 25 января 2020

Да, каратэ не поддерживает локализацию после того, как мы перешли от Cucumber в версии 0.9.0.

Мы решили не поддерживать локализацию, потому что цели каратэ сильно отличаются от Cucumber. , Карате больше походит на язык программирования, лучше объясненный здесь: { ссылка }

Так же, как Java или JavaScript не поддерживают локализованные ключевые слова, Карате также не поддерживает. У нас пока не было жалоб:)

...