Я пытаюсь запустить пример огурец на Mac.Я следовал инструкциям руководства к этой странице (насколько я понял инструкции) и создал файлы, как объяснено на этой странице (то есть файлы annotation.java
, runTest.java
и outline.feature
), как описано в пакетеAnnotation
под src/test/java
.
Используемые версии:
- MacOS 10.13.6
- затмение: 2019-03 (?) (Невозможно найти версию затмения, действительно раздражает!)
- junit 4.10
- gherkin 2.9.3
Файлы сохранены и не показывают явных ошибок в редакторе eclipse
.Но когда я делаю runTest.java
-> runAs
-> JUnit test
, я получаю следующую ошибку:
Feature: annotation
#This is how background can be used to eliminate duplicate steps
Background: [90m# Annotation/outline.feature:4[0m
User navigates to Facebook Given
I am on Facebook login page
#Scenario with AND
Scenario: [90m# Annotation/outline.feature:9[0m
[90mWhen [0m[90mI enter username as "[0m[90m[1mTOM[0m[90m"[0m [90m# annotation.enterUsername(String)[0m
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by cucumber.runtime.xstream.converters.collections.TreeMapConverter (file:/Users/adietz/.m2/repository/info/cukes/cucumber-core/1.0.2/cucumber-core-1.0.2.jar) to field java.util.TreeMap.comparator
WARNING: Please consider reporting this to the maintainers of cucumber.runtime.xstream.converters.collections.TreeMapConverter
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
[1A [31mWhen [0m[31mI enter username as "[0m[31m[1mTOM[0m[31m"[0m [90m# annotation.enterUsername(String)[0m
[31mjava.lang.NullPointerException
at Annotation.annotation.enterUsername(annotation.java:22)
at ✽.When I enter username as "TOM"(Annotation/outline.feature:10)
[0m
[90mAnd [0m[90mI enter password as "[0m[90m[1mJERRY[0m[90m"[0m [90m# annotation.enterPassword(String)[0m
[1A [36mAnd [0m[36mI enter password as "[0m[36m[1mJERRY[0m[36m"[0m [90m# annotation.enterPassword(String)[0m
[90mThen [0m[90mLogin should fail[0m [90m# annotation.checkFail()[0m
[1A [36mThen [0m[36mLogin should fail[0m [90m# annotation.checkFail()[0m
#This is how background can be used to eliminate duplicate steps
Background: [90m# Annotation/outline.feature:4[0m
User navigates to Facebook Given
I am on Facebook login page
#Scenario with BUT
Scenario: [90m# Annotation/outline.feature:15[0m
[90mWhen [0m[90mI enter username as "[0m[90m[1mTOM[0m[90m"[0m [90m# annotation.enterUsername(String)[0m
[1A [31mWhen [0m[31mI enter username as "[0m[31m[1mTOM[0m[31m"[0m [90m# annotation.enterUsername(String)[0m
[31mjava.lang.NullPointerException
at Annotation.annotation.enterUsername(annotation.java:22)
at ✽.When I enter username as "TOM"(Annotation/outline.feature:16)
[0m
[90mAnd [0m[90mI enter password as "[0m[90m[1mJERRY[0m[90m"[0m [90m# annotation.enterPassword(String)[0m
[1A [36mAnd [0m[36mI enter password as "[0m[36m[1mJERRY[0m[36m"[0m [90m# annotation.enterPassword(String)[0m
[90mThen [0m[90mLogin should fail[0m [90m# annotation.checkFail()[0m
[1A [36mThen [0m[36mLogin should fail[0m [90m# annotation.checkFail()[0m
[90mBut [0m[90mRelogin option should be available[0m [90m# annotation.checkRelogin()[0m
[1A [36mBut [0m[36mRelogin option should be available[0m [90m# annotation.checkRelogin()[0m
java.lang.NullPointerException
at Annotation.annotation.enterUsername(annotation.java:22)
at ✽.When I enter username as "TOM"(Annotation/outline.feature:10)
java.lang.NullPointerException
at Annotation.annotation.enterUsername(annotation.java:22)
at ✽.When I enter username as "TOM"(Annotation/outline.feature:16)
Я не эксперт по java
и, конечно, не эксперт по eclipse
,Так как мне исправить ошибку?И как я могу связаться с создателями этого учебника, чтобы они могли обновить учебник (сделать его более понятным)?