μλ νμΈμ,
μ΅μ 릴리μ€μμλ λΆννλ message
ν¬λ§·ν°κ° μλνμ§ μμ΅λλ€. master
μμ μλν©λλ€. μ΄λ μ’μ μμμ
λλ€. λ°λ§€μκΈ°κ° μ’κ² μ£ ? :)
κ°μ¬ν©λλ€ π
μλ νμΈμ @sroze - μμ±λ λ©μμ§λ₯Ό μλΉμμ ν¨κ» ν μ€νΈν΄
μμ±λ μΆλ ₯μ΄ λ€μκ³Ό ν¨κ» μλνλμ§ νμΈνκ³ μΆμ΅λλ€.
@vincent-psarga - monorepo λΉλμ μΌλΆλ‘ μ΄κ²μ κ²μ¦νκΈ° μν΄ cckλ₯Ό μ λ°μ΄νΈν μ μμ΅λκΉ?
릴리μ€λ₯Ό μλ₯΄κΈ° μ μ λ€μμ μ κ·Έλ μ΄λν΄μΌ ν©λλ€.
"cucumber-expressions": "^8.3.0"
-> "@cucumber/cucumber-expressions": "^10.2.0"
"cucumber-messages": "^8.0.0"
-> "@cucumber/messages": "^12.1.1"
"cucumber-tag-expressions": "^2.0.3"
-> "@cucumber/tag-expressions": "^3.0.0"
"gherkin": "^9.0.0"
-> "@cucumber/gherkin": "^13.0.0"
μ΄λ¬ν μ
κ·Έλ μ΄λ μμ΄ λ¦΄λ¦¬μ€κ° λ§λ€μ΄μ§λ©΄ message
ν¬λ§·ν°μ μν΄ μμ±λ λ©μμ§λ cucumber-html
, json-formatter
μ μ΅μ λ¦΄λ¦¬μ€ λ° @cucumber/messages
μ μ΅μ λ²μ . κ·Έλ¦¬κ³ κ·Έκ²μ λ΄κ° μκ°νλ λꡬμκ²λ μ μ©νμ§ μμ κ²μ
λλ€.
@aslakhellesoy μ€μ λ‘ μλ μμ± λ¬Έμ(mkdocsμ© νλ¬κ·ΈμΈ)μ ν΅ν©νκΈ° μν΄ μ체 νμμ ν¨κ» μ¬μ©νκ³ μμΌλ―λ‘ --format message:output.ndjson
νκ³ ν΄λΉ output.ndjson
νμΌμ μ½κ³ μμ΅λλ€. μ§κΈκΉμ§λ λ무 μ’μμ΅λλ€. μ΄μ JSON μΆλ ₯λ³΄λ€ ν¨μ¬ λ«μ΅λλ€. π
@vincent-psarga - monorepo λΉλμ μΌλΆλ‘ μ΄κ²μ κ²μ¦νκΈ° μν΄ cckλ₯Ό μ λ°μ΄νΈν μ μμ΅λκΉ?
λ΄κ° μ΄κ²μ μ¬λ°λ₯΄κ² μ΄ν΄νκ³ μλμ§ νμΈνκΈ° μν΄ messages
릴리μ€μ λν΄ μ΅μ λ¦΄λ¦¬μ€ xxx-formatter
λ₯Ό μ€ννμ¬ ν¬λ§·ν° 릴리μ€λ₯Ό 건λλ°μ§ μλλ‘ νμκ² μ΅λκΉ?
κ·Έκ²μ νμ€ν μλ―Έκ° μμ΅λλ€. κ·Έκ²μ΄ CCKμ μΌλΆμΈμ§ μλλ©΄ κ° ν¬λ§·ν°μ λν λ λ²μ§Έ CI μμ
μ μΌλΆμΈμ§λ λͺ¨λ₯΄κ² μ΅λλ€.
@sroze μμ£Ό λ©μ Έμ! @cucumber/messages
λΌμ΄λΈλ¬λ¦¬μμ 8.0.0
μμ 12.1.1
μ΄μ λ²μ κ³Ό νΈνλμ§ μλ λ³κ²½ μ¬νμ΄ μμμ λͺ
μ¬νμμμ€. μ΄λ¦λ λ³κ²½λμμ΅λλ€. κ·Έκ²μ μμ‘΄νλ λͺ¨λ λΌμ΄λΈλ¬λ¦¬λ μ
λ°μ΄νΈν΄μΌ ν©λλ€.
λ€λ₯Έ Cucumber ꡬν(JVM/Java λ° Ruby)μ μ΅μ λ²μ μ λ©μμ§ λΌμ΄λΈλ¬λ¦¬λ₯Ό μ¬μ©νλ―λ‘ λꡬμμ μ΄λ₯Ό μ¬μ©ν μ μμ΅λλ€.
@sroze νλ‘μ νΈμ λν λ§ν¬κ° μμ΅λκΉ?
@vincent-psarga λλ μ€μ΄.jsκ° μ°λ¦¬μ cckμ νΈνλλμ§ νμΈν μ μλ€κ³ μ μνμ΅λλ€. μ°λ¦¬λ λ¨κ³ μ μλ₯Ό ꡬννκ³ λ©μμ§ ν¬λ§·ν°μ ν¨κ» cucumber.jsλ₯Ό μ€νν λ€μ json-formatterμ html-formatterκ° ν΄λΉ λ©μμ§λ₯Ό μ¬μ©ν μ μλμ§ νμΈν΄μΌ ν©λλ€.
μ°λ¦¬λ μ΄λ―Έ μ€μ΄-루λΉμ μ€μ΄-jvmμ λν΄ μ΄κ²μ νκ³ μμ§ μμ΅λκΉ?
μ κ·Έλ, μ°λ¦¬κ° cucumber-js
μ μ₯μμ μλ κ²μ λ³΄μ§ λͺ»νλ€(μ νλ‘ μλ¦Όμ νμΈν λμ λ¬Έμ ...).
λλ κ·Έκ²μ΄ κ°λ₯νλ€κ³ μκ°νμ§λ§ λͺ¨λ Έλ ν¬ μ체μμ, μ΄ λ¦¬ν¬μ§ν 리μμ λ λ§μ΄ ν΄μΌ νλμ§ νμ μ΄ μμ§ μμ΅λλ€. 루λΉμ κ²½μ° CCKμ λν΄ λ κ°μ§ μ ν¨μ± κ²μ¬κ° μ€νλμμ΅λλ€.
cucumber-ruby
μμ μνλμ΄ μ΅μ λ©μμ§ λ¦΄λ¦¬μ€μ λν΄ μ€μ΄-λ£¨λΉ λ§μ€ν°μ μ ν¨μ±μ κ²μ¬ν©λλ€(κ·Έλ¬λ json-formatter
λ° html-formatter
λ§μ€ν° μ¬μ©).cucumber-ruby
μ΅μ 릴리μ€λ₯Ό μ¬μ©νλ λͺ¨λ
Έλ ν¬μμ μνλ©λλ€. μ€μ΄-루λΉμ μ§μλλ λ©μμ§ λ²μ κ°μ λΆμΌμΉκ° μμκΈ° λλ¬Έμ λΉνμ±νν΄μΌ νμ΅λλ€(λ€μ νμ±νν μ μμ§λ§ λ€μ λ©μμ§ λ¦΄λ¦¬μ€ νμ λ€μ λΉνμ±νν΄μΌ ν¨).κ·Έλ¦¬κ³ λ΄κ° κΈ°μ΅νλ ν, JS λ¨κ³λ μ΄λ―Έ fake-cucumber
μ¬μ©νμ¬ ν©κΈ NDJsonμ μμ±νκΈ° μν΄ κ΅¬νλμμΌλ―λ‘ μ΄ λΆλΆμ κ±°μ μλ£λμμ΅λλ€(κ°μ Έμ€κΈ°λ§ μ
λ°μ΄νΈν΄μΌ ν μλ μμ)
@aslakhellesoy μ λ μ§κΈ #1318μμ CCKμ λν μ ν¨μ± κ²μ¬λ₯Ό μΆκ°νκ³ μ΅μ μμ μ€μ΄, λ©μμ§ λ±μ λν μ λ°μ΄νΈλ₯Ό μμ μ€μ λλ€. μΌλ§ λ¨μ§ μμ λλ¨Έμ§ κ°κ²©μ ν΅ν΄ μμ νκ³ μμ΅λλ€. λ€μ λ©°μΉ μμ μλ£νλ κ²μ λͺ©νλ‘ νκ³ μμ΅λλ€. λλ μ°λ¦¬κ° κ·Έ μ΄νμ 7.0.0μ μΆμνκΈ°μ μ’μ μνκ° λ κ²μ΄λΌκ³ μκ°ν©λλ€.
μ€μ λ‘ javascript CCK ν¨ν€μ§λ‘ μλλ₯Ό νμΈνκ³ μΆμμ΅λλ€. μΌλ§μ @cucumber/compatibility-kit
μλ npmμ κ²μλμμ§λ§ νλμ μ
λ°μ΄νΈλμ§ μμ κ²μΌλ‘ λνλ¬μ΅λλ€. μ§κΈμ μμ
ν λͺ¨λ
Έλ¦¬ν¬μ§ν 리μμ νμΌμ 볡μ¬νκ³ μμ§λ§ CCK κΈ°λ₯κ³Ό λ©μμ§ κ³ μ μ₯μΉλ₯Ό μ’
μμ±μΌλ‘ μ¬μ©νλ κ²μ΄ μ’μ λ°©λ²μΈ κ² κ°μ΅λλ€.
@davidjgossμκ² κ°μ¬λ립λλ€. μ λ²μ μ μ¬μ©ν μ μκΈ°λ₯Ό κΈ°λν©λλ€. μ΄ μμ
μ΄ μνλλ λμ cucumber-js
μ master
λ²μ μ μ¬μ©νκΈ° μν΄ μνν΄μΌ νλ μμ
μ
λλ€. μ£Όμ λ¬Έμ λ npm i
λ€μ μ€νν λλ§λ€ npm
κ° node_modules/cucumber
κ° Git μ μ₯μλΌκ³ λΆννλ€λ κ²μ
λλ€. λ μ’μ λ°©λ²μ μκ³ μμ΅λκΉ? π€
diff --git a/package.json b/package.json
index e78cd20..8702cb7 100644
--- a/package.json
+++ b/package.json
@@ -30,7 +30,8 @@
"typeorm": "ts-node -r tsconfig-paths/register ./node_modules/typeorm/cli.js -f src/orm-migratio
ns-config.ts",
"typeorm:migrate": "ts-node -r tsconfig-paths/register ./node_modules/typeorm/cli.js -f src/orm-
migrations-config.ts migration:run",
"typeorm:revert": "ts-node -r tsconfig-paths/register ./node_modules/typeorm/cli.js -f src/orm-m
igrations-config.ts migration:revert",
- "pod:migrate": "node ./node_modules/typeorm/cli.js -f dist/orm-migrations-config.js migration:run"
+ "pod:migrate": "node ./node_modules/typeorm/cli.js -f dist/orm-migrations-config.js migration:run",
+ "postinstall": "cd node_modules && mv cucumber cucumber-old && git clone https://github.com/cucumber/cucumber-js && mv cucumber-js cucumber && cd cucumber && npm i && npm run build-local && cd ../.."
},
"dependencies": {
@@ -86,7 +87,7 @@
"@typescript-eslint/eslint-plugin": "^3.4.0",
"@typescript-eslint/parser": "^3.4.0",
"common-tags": "^1.8.0",
- "cucumber": "^6.0.5",
+ "cucumber": "cucumber/cucumber-js#master",
"cucumber-pretty": "^6.0.0",
"cucumber-tsflow": "^3.2.0",
"eslint": "^7.3.1",
릴리μ€λ₯Ό μλ₯΄κΈ° μν΄ μ§μ¦μ λ΄κ³ λ€μμ λ°λΌκ°λ λ κΉμ?
testResult
-> testStepResult
λ¬Έμ λ₯Ό μ¬λ°λ₯΄κ² μλ³ν¨)μ°λ¦¬λ μ€μ λ‘ @sroze 릴리μ€λ₯Ό μ€λ¨νμ΅λλ€. @cucumber/cucumber
μ¬μ©ν΄ 보μμμ€. μ΄κ²μ μννμ
λλ€. μ
λ°μ΄νΈ λ°©λ²μ λ§μ΄κ·Έλ μ΄μ
κ°μ΄λ λ₯Ό μ°Έμ‘°νμΈμ.
μ€ κ·Έλ κ΅°μ νλ² ν΄λ³Όκ»μ κ°μ¬ν©λλ€! νΈμλ νκ·Έκ° μμ΄μ λͺ°λμ΄μ π
κ°μ¬ν©λλ€ @sroze - νκ·Έλ₯Ό νΈμνλ κ²μ μμμ΅λλ€. μ΄μ λλ¬μ΅λλ€.
λ λ§μ μ¬λλ€μ΄ μ λ²μ μ λ°κ²¬νλ λ° λμμ΄ λλ μ΄μ κ°μ ν¨ν€μ§μ λν μκ°μ΄ μμ΅λκΉ?
7.0.0μ΄ μΆμλμμ΅λλ€. λ§μ΄κ·Έλ μ΄μ μ§μΉ¨ μ λ³κ²½ λ‘κ·Έ λ₯Ό μ°Έμ‘°νμΈμ. κ°μ¬ ν΄μ!
κ°μ₯ μ μ©ν λκΈ
@aslakhellesoy μ λ μ§κΈ #1318μμ CCKμ λν μ ν¨μ± κ²μ¬λ₯Ό μΆκ°νκ³ μ΅μ μμ μ€μ΄, λ©μμ§ λ±μ λν μ λ°μ΄νΈλ₯Ό μμ μ€μ λλ€. μΌλ§ λ¨μ§ μμ λλ¨Έμ§ κ°κ²©μ ν΅ν΄ μμ νκ³ μμ΅λλ€. λ€μ λ©°μΉ μμ μλ£νλ κ²μ λͺ©νλ‘ νκ³ μμ΅λλ€. λλ μ°λ¦¬κ° κ·Έ μ΄νμ 7.0.0μ μΆμνκΈ°μ μ’μ μνκ° λ κ²μ΄λΌκ³ μκ°ν©λλ€.
μ€μ λ‘ javascript CCK ν¨ν€μ§λ‘ μλλ₯Ό νμΈνκ³ μΆμμ΅λλ€. μΌλ§μ
@cucumber/compatibility-kit
μλ npmμ κ²μλμμ§λ§ νλμ μ λ°μ΄νΈλμ§ μμ κ²μΌλ‘ λνλ¬μ΅λλ€. μ§κΈμ μμ ν λͺ¨λ Έλ¦¬ν¬μ§ν 리μμ νμΌμ 볡μ¬νκ³ μμ§λ§ CCK κΈ°λ₯κ³Ό λ©μμ§ κ³ μ μ₯μΉλ₯Ό μ’ μμ±μΌλ‘ μ¬μ©νλ κ²μ΄ μ’μ λ°©λ²μΈ κ² κ°μ΅λλ€.