无法使用空手道和黄瓜插件执行 API 脚本
Unable to execute the API script with Karate and Cucumber plugin
我是这个空手道和黄瓜脚本的新手。我已经编写了以下功能文件,它应该 运行 并打印货币转换器 Web 服务的响应。
@featureTest
功能:测试货币转换器
背景:
* url 'http://www.webservicex.net/CurrencyConvertor.asmx?wsdl'
@场景一
场景:soap 1.1
给定请求
"""
AFA或ALL或DZD或ARS或AWG或AUD或BSD或BHD或BDT或BBD或BZD或BMD或BTN或BOB或BWP或BRL或GBP或BND或BIF或XOF或XAF或KHR或CAD或CVE或KYD或CLP或CNY或COP或KMF或CRC或HRK或CUP或CYP或CZK或DKK或DJF或DOP或XCD或EGP或SVC或EEK或ETB或EUR或FKP或GMD或GHC或GIP或XAU或GTQ或GNF或GYD 或 HTG 或 HNL 或 HKD 或 HUF 或 ISK 或 INR 或 IDR 或 IQD 或 ILS 或 JMD 或 JPY 或 JOD 或 KZT 或 KES 或 KRW 或 KWD 或 LAK 或 LVL 或 LBP 或 LSL 或 LRD 或 LYD 或 LTL 或 MOP 或MKD或MGF或MWK或MYR或MVR或MTL或MRO或MUR或MXN或MDL或MNT或MAD或MZM或MMK或NAD或NPR或ANG或NZD或NIO或NGN或KPW或NOK或OMR或XPF或PKR或XPD或PAB或PGK或PYG或PEN或PHP或XPT或PLN或QAR或ROL或RUB或WST或STD或SAR或SCR或SLL或XAG或SGD或SKK或SIT或SBD或SOS或ZAR或LKR 或 SHP 或 SDD 或 SRG 或 SZL 或 SEK 或 CHF 或 SYP 或 TWD 或 TZS 或 THB 或 TOP 或 TTD 或 TND 或 TRL 或 USD 或 AED 或 UGX 或 UAH 或 UYU或 VUV 或 VEB 或 VND 或 YER 或 YUM 或 ZMK 或 ZWD 或 TRY
AFA或ALL或DZD或ARS或AWG或AUD或BSD或BHD或BDT或BBD或BZD或BMD或BTN或BOB或BWP或BRL或GBP或BND或BIF或XOF或XAF或KHR或CAD或CVE或KYD或CLP或CNY或COP或KMF或CRC或HRK或CUP或CYP或CZK或DKK或DJF或DOP或XCD或EGP或SVC或EEK或ETB或EUR或FKP或GMD或GHC或GIP或XAU或GTQ或GNF或GYD 或 HTG 或 HNL 或 HKD 或 HUF 或 ISK 或 INR 或 IDR 或 IQD 或 ILS 或 JMD 或 JPY 或 JOD 或 KZT 或 KES 或 KRW 或 KWD 或 LAK 或 LVL 或 LBP 或 LSL 或 LRD 或 LYD 或 LTL 或 MOP 或MKD或MGF或MWK或MYR或MVR或MTL或MRO或MUR或MXN或MDL或MNT或MAD或MZM或MMK或NAD或NPR或ANG或NZD或NIO或NGN或KPW或NOK或OMR或XPF或PKR或XPD或PAB或PGK或PYG或PEN或PHP或XPT或PLN或QAR或ROL或RUB或WST或STD或SAR或SCR或SLL或XAG或SGD或SKK或SIT或SBD或SOS或ZAR或LKR 或 SHP 或 SDD 或 SRG 或 SZL 或 SEK 或 CHF 或 SYP 或 TWD 或 TZS 或 THB 或 TOP 或 TTD 或 TND 或 TRL 或 USD 或 AED 或 UGX 或 UAH 或 UYU或 VUV 或 VEB 或 VND 或 YER 或 YUM 或 ZMK 或 ZWD 或 TRY
"""
肥皂动作时'http://tempuri.org/CurrencyConverter'
那么状态 200
并匹配 /Envelope/Body/ConversionRateResponse/ConversionRateResult == -1
并打印'response: ',响应
当我执行此脚本时,收到以下错误消息。
Exception in thread "main" cucumber.runtime.CucumberException: Error parsing feature file D:/Workspace/WebservicesTest/src/test/java/feature/soap.feature
at cucumber.runtime.FeatureBuilder.parse(FeatureBuilder.java:133)
at cucumber.runtime.model.CucumberFeature.loadFromFeaturePath(CucumberFeature.java:104)
at cucumber.runtime.model.CucumberFeature.load(CucumberFeature.java:54)
at cucumber.runtime.model.CucumberFeature.load(CucumberFeature.java:34)
at cucumber.runtime.RuntimeOptions.cucumberFeatures(RuntimeOptions.java:239)
at cucumber.runtime.Runtime.run(Runtime.java:111)
at cucumber.api.cli.Main.run(Main.java:36)
at cucumber.api.cli.Main.main(Main.java:18)
Caused by: gherkin.lexer.LexingError: Lexing error on line 26: '@Scenario 1
Scenario: soap 1.1
Given request
"""
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ConversionRate xmlns="http://www.webserviceX.NET/">
<FromCurrency>AFA or ALL or DZD or ARS or AWG or AUD or BSD or BHD or BDT or BBD or BZD or BMD or BTN or BOB or BWP or BRL or GBP or BND or BIF or XOF or XAF or KHR or CAD or CVE or KYD or CLP or CNY or COP or KMF or CRC or HRK or CUP or CYP or CZK or DKK or DJF or DOP or XCD or EGP or SVC or EEK or ETB or EUR or FKP or GMD or GHC or GIP or XAU or GTQ or GNF or GYD or HTG or HNL or HKD or HUF or ISK or INR or IDR or IQD or ILS or JMD or JPY or JOD or KZT or KES or KRW or KWD or LAK or LVL or LBP or LSL or LRD or LYD or LTL or MOP or MKD or MGF or MWK or MYR or MVR or MTL or MRO or MUR or MXN or MDL or MNT or MAD or MZM or MMK or NAD or NPR or ANG or NZD or NIO or NGN or KPW or NOK or OMR or XPF or PKR or XPD or PAB or PGK or PYG or PEN or PHP or XPT or PLN or QAR or ROL or RUB or WST or STD or SAR or SCR or SLL or XAG or SGD or SKK or SIT or SBD or SOS or ZAR or LKR or SHP or SDD or SRG or SZL or SEK or CHF or SYP or TWD or TZS or THB or TOP or TTD or TND or TRL or USD or AED or UGX or UAH or UYU or VUV or VEB or VND or YER or YUM or ZMK or ZWD or TRY</FromCurrency>
<ToCurrency>AFA or ALL or DZD or ARS or AWG or AUD or BSD or BHD or BDT or BBD or BZD or BMD or BTN or BOB or BWP or BRL or GBP or BND or BIF or XOF or XAF or KHR or CAD or CVE or KYD or CLP or CNY or COP or KMF or CRC or HRK or CUP or CYP or CZK or DKK or DJF or DOP or XCD or EGP or SVC or EEK or ETB or EUR or FKP or GMD or GHC or GIP or XAU or GTQ or GNF or GYD or HTG or HNL or HKD or HUF or ISK or INR or IDR or IQD or ILS or JMD or JPY or JOD or KZT or KES or KRW or KWD or LAK or LVL or LBP or LSL or LRD or LYD or LTL or MOP or MKD or MGF or MWK or MYR or MVR or MTL or MRO or MUR or MXN or MDL or MNT or MAD or MZM or MMK or NAD or NPR or ANG or NZD or NIO or NGN or KPW or NOK or OMR or XPF or PKR or XPD or PAB or PGK or PYG or PEN or PHP or XPT or PLN or QAR or ROL or RUB or WST or STD or SAR or SCR or SLL or XAG or SGD or SKK or SIT or SBD or SOS or ZAR or LKR or SHP or SDD or SRG or SZL or SEK or CHF or SYP or TWD or TZS or THB or TOP or TTD or TND or TRL or USD or AED or UGX or UAH or UYU or VUV or VEB or VND or YER or YUM or ZMK or ZWD or TRY</ToCurrency>
</ConversionRate>
</soap:Body>
</soap:Envelope>
"""
When soap action 'http://tempuri.org/CurrencyConverter'
THEN status 200
And match /Envelope/Body/ConversionRateResponse/ConversionRateResult == -1
And print 'response: ', response
%_FEATURE_END_%'. See http://wiki.github.com/cucumber/gherkin/lexingerror for more information.
at gherkin.lexer.En.scan(En.java:872)
at gherkin.lexer.I18nLexer.scan(I18nLexer.java:36)
at gherkin.parser.Parser.parse(Parser.java:62)
at cucumber.runtime.FeatureBuilder.parse(FeatureBuilder.java:131)
... 7 more
请帮助成功执行
谢谢
错误信息很清楚:Lexing error on line 26: '@Scenario
所以删除 @
或整个单词,然后重试。
如果你参考这个例子,你应该能够进行一个简单的测试,然后它应该很容易:soap.feature
karate-demo中还有许多其他示例。
我是这个空手道和黄瓜脚本的新手。我已经编写了以下功能文件,它应该 运行 并打印货币转换器 Web 服务的响应。
@featureTest 功能:测试货币转换器
背景: * url 'http://www.webservicex.net/CurrencyConvertor.asmx?wsdl'
@场景一 场景:soap 1.1 给定请求
""" AFA或ALL或DZD或ARS或AWG或AUD或BSD或BHD或BDT或BBD或BZD或BMD或BTN或BOB或BWP或BRL或GBP或BND或BIF或XOF或XAF或KHR或CAD或CVE或KYD或CLP或CNY或COP或KMF或CRC或HRK或CUP或CYP或CZK或DKK或DJF或DOP或XCD或EGP或SVC或EEK或ETB或EUR或FKP或GMD或GHC或GIP或XAU或GTQ或GNF或GYD 或 HTG 或 HNL 或 HKD 或 HUF 或 ISK 或 INR 或 IDR 或 IQD 或 ILS 或 JMD 或 JPY 或 JOD 或 KZT 或 KES 或 KRW 或 KWD 或 LAK 或 LVL 或 LBP 或 LSL 或 LRD 或 LYD 或 LTL 或 MOP 或MKD或MGF或MWK或MYR或MVR或MTL或MRO或MUR或MXN或MDL或MNT或MAD或MZM或MMK或NAD或NPR或ANG或NZD或NIO或NGN或KPW或NOK或OMR或XPF或PKR或XPD或PAB或PGK或PYG或PEN或PHP或XPT或PLN或QAR或ROL或RUB或WST或STD或SAR或SCR或SLL或XAG或SGD或SKK或SIT或SBD或SOS或ZAR或LKR 或 SHP 或 SDD 或 SRG 或 SZL 或 SEK 或 CHF 或 SYP 或 TWD 或 TZS 或 THB 或 TOP 或 TTD 或 TND 或 TRL 或 USD 或 AED 或 UGX 或 UAH 或 UYU或 VUV 或 VEB 或 VND 或 YER 或 YUM 或 ZMK 或 ZWD 或 TRY AFA或ALL或DZD或ARS或AWG或AUD或BSD或BHD或BDT或BBD或BZD或BMD或BTN或BOB或BWP或BRL或GBP或BND或BIF或XOF或XAF或KHR或CAD或CVE或KYD或CLP或CNY或COP或KMF或CRC或HRK或CUP或CYP或CZK或DKK或DJF或DOP或XCD或EGP或SVC或EEK或ETB或EUR或FKP或GMD或GHC或GIP或XAU或GTQ或GNF或GYD 或 HTG 或 HNL 或 HKD 或 HUF 或 ISK 或 INR 或 IDR 或 IQD 或 ILS 或 JMD 或 JPY 或 JOD 或 KZT 或 KES 或 KRW 或 KWD 或 LAK 或 LVL 或 LBP 或 LSL 或 LRD 或 LYD 或 LTL 或 MOP 或MKD或MGF或MWK或MYR或MVR或MTL或MRO或MUR或MXN或MDL或MNT或MAD或MZM或MMK或NAD或NPR或ANG或NZD或NIO或NGN或KPW或NOK或OMR或XPF或PKR或XPD或PAB或PGK或PYG或PEN或PHP或XPT或PLN或QAR或ROL或RUB或WST或STD或SAR或SCR或SLL或XAG或SGD或SKK或SIT或SBD或SOS或ZAR或LKR 或 SHP 或 SDD 或 SRG 或 SZL 或 SEK 或 CHF 或 SYP 或 TWD 或 TZS 或 THB 或 TOP 或 TTD 或 TND 或 TRL 或 USD 或 AED 或 UGX 或 UAH 或 UYU或 VUV 或 VEB 或 VND 或 YER 或 YUM 或 ZMK 或 ZWD 或 TRY """
肥皂动作时'http://tempuri.org/CurrencyConverter' 那么状态 200 并匹配 /Envelope/Body/ConversionRateResponse/ConversionRateResult == -1 并打印'response: ',响应
当我执行此脚本时,收到以下错误消息。
Exception in thread "main" cucumber.runtime.CucumberException: Error parsing feature file D:/Workspace/WebservicesTest/src/test/java/feature/soap.feature
at cucumber.runtime.FeatureBuilder.parse(FeatureBuilder.java:133)
at cucumber.runtime.model.CucumberFeature.loadFromFeaturePath(CucumberFeature.java:104)
at cucumber.runtime.model.CucumberFeature.load(CucumberFeature.java:54)
at cucumber.runtime.model.CucumberFeature.load(CucumberFeature.java:34)
at cucumber.runtime.RuntimeOptions.cucumberFeatures(RuntimeOptions.java:239)
at cucumber.runtime.Runtime.run(Runtime.java:111)
at cucumber.api.cli.Main.run(Main.java:36)
at cucumber.api.cli.Main.main(Main.java:18)
Caused by: gherkin.lexer.LexingError: Lexing error on line 26: '@Scenario 1
Scenario: soap 1.1
Given request
"""
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<ConversionRate xmlns="http://www.webserviceX.NET/">
<FromCurrency>AFA or ALL or DZD or ARS or AWG or AUD or BSD or BHD or BDT or BBD or BZD or BMD or BTN or BOB or BWP or BRL or GBP or BND or BIF or XOF or XAF or KHR or CAD or CVE or KYD or CLP or CNY or COP or KMF or CRC or HRK or CUP or CYP or CZK or DKK or DJF or DOP or XCD or EGP or SVC or EEK or ETB or EUR or FKP or GMD or GHC or GIP or XAU or GTQ or GNF or GYD or HTG or HNL or HKD or HUF or ISK or INR or IDR or IQD or ILS or JMD or JPY or JOD or KZT or KES or KRW or KWD or LAK or LVL or LBP or LSL or LRD or LYD or LTL or MOP or MKD or MGF or MWK or MYR or MVR or MTL or MRO or MUR or MXN or MDL or MNT or MAD or MZM or MMK or NAD or NPR or ANG or NZD or NIO or NGN or KPW or NOK or OMR or XPF or PKR or XPD or PAB or PGK or PYG or PEN or PHP or XPT or PLN or QAR or ROL or RUB or WST or STD or SAR or SCR or SLL or XAG or SGD or SKK or SIT or SBD or SOS or ZAR or LKR or SHP or SDD or SRG or SZL or SEK or CHF or SYP or TWD or TZS or THB or TOP or TTD or TND or TRL or USD or AED or UGX or UAH or UYU or VUV or VEB or VND or YER or YUM or ZMK or ZWD or TRY</FromCurrency>
<ToCurrency>AFA or ALL or DZD or ARS or AWG or AUD or BSD or BHD or BDT or BBD or BZD or BMD or BTN or BOB or BWP or BRL or GBP or BND or BIF or XOF or XAF or KHR or CAD or CVE or KYD or CLP or CNY or COP or KMF or CRC or HRK or CUP or CYP or CZK or DKK or DJF or DOP or XCD or EGP or SVC or EEK or ETB or EUR or FKP or GMD or GHC or GIP or XAU or GTQ or GNF or GYD or HTG or HNL or HKD or HUF or ISK or INR or IDR or IQD or ILS or JMD or JPY or JOD or KZT or KES or KRW or KWD or LAK or LVL or LBP or LSL or LRD or LYD or LTL or MOP or MKD or MGF or MWK or MYR or MVR or MTL or MRO or MUR or MXN or MDL or MNT or MAD or MZM or MMK or NAD or NPR or ANG or NZD or NIO or NGN or KPW or NOK or OMR or XPF or PKR or XPD or PAB or PGK or PYG or PEN or PHP or XPT or PLN or QAR or ROL or RUB or WST or STD or SAR or SCR or SLL or XAG or SGD or SKK or SIT or SBD or SOS or ZAR or LKR or SHP or SDD or SRG or SZL or SEK or CHF or SYP or TWD or TZS or THB or TOP or TTD or TND or TRL or USD or AED or UGX or UAH or UYU or VUV or VEB or VND or YER or YUM or ZMK or ZWD or TRY</ToCurrency>
</ConversionRate>
</soap:Body>
</soap:Envelope>
"""
When soap action 'http://tempuri.org/CurrencyConverter'
THEN status 200
And match /Envelope/Body/ConversionRateResponse/ConversionRateResult == -1
And print 'response: ', response
%_FEATURE_END_%'. See http://wiki.github.com/cucumber/gherkin/lexingerror for more information.
at gherkin.lexer.En.scan(En.java:872)
at gherkin.lexer.I18nLexer.scan(I18nLexer.java:36)
at gherkin.parser.Parser.parse(Parser.java:62)
at cucumber.runtime.FeatureBuilder.parse(FeatureBuilder.java:131)
... 7 more
请帮助成功执行
谢谢
错误信息很清楚:Lexing error on line 26: '@Scenario
所以删除 @
或整个单词,然后重试。
如果你参考这个例子,你应该能够进行一个简单的测试,然后它应该很容易:soap.feature
karate-demo中还有许多其他示例。