μμμ£Ό
μ΄ λ¬Έμλ 04-snapshot-testing.mdμ νκ΅μ΄ λ²μμ λλ€. μ΄κ³³μμ AVAμ master λΈλμΉμ μ΄ λ¬Έμμ μ°¨μ΄λ₯Ό νμΈν μ μμ΅λλ€. (λ§μ½ μ°¨μ΄κ° μλ€λ©΄ λ¬Έμκ° μ΅μ λ²μ μμ μλ―Έν©λλ€)
AVAλ Jestμμ λμ λ μ€λ μ· ν μ€ν μ μ§μν©λλ€.
ν΄λΉ κΈ°λ₯μ λ¨μΈλ¬Έ μΈν°νμ΄μ€λ₯Ό ν΅ν΄ μ¬μ©ν μ μμ΅λλ€. μ΄λ€ κ°μ΄λ μ€λ μ·μ μ°μ΄ λμ μ μμ΅λλ€.
μ€λ μ·μ ν μ€νΈ νμΌκ³Ό ν¨κ» μ μ₯λ©λλ€.
ν
μ€νΈ νμΌλ€μ΄ test
λ, tests
ν΄λμ μλ€λ©΄, μ€λ
μ·λ€μ snapshots
ν΄λμ μ μ₯λ©λλ€.
ν
μ€νΈ νμΌλ€μ΄ __tests__
ν΄λμ μλ€λ©΄, μ€λ
μ·λ€μ __snapshots__
ν΄λμ μ μ₯λ©λλ€.
μ€λ
μ· λ¨μΈλ¬Έμ ν¬ν¨νλ ~/project/test/main.js
ν
μ€νΈ νμΌμ΄ μλ€κ³ κ°μ ν΄λ΄
μλ€.
AVAλ λ κ°μ νμΌμ λ§λ€ κ² μ λλ€:
~/project/test/snapshots/main.js.snap
~/project/test/snapshots/main.js.md
첫 λ²μ§Έ νμΌμ μ€μ§μ μΈ μ€λ μ· νμΌλ‘, λ―Έλμ λΉκ΅λ₯Ό μν΄ μ¬μ©λ©λλ€.
λ λ²μ§Έ νμΌμ μ€λ μ· λ¦¬ν¬νΈλ₯Ό ν¬ν¨ν©λλ€.
μ΄ νμΌμ μ€λ μ·μ΄ μ λ°μ΄νΈ λ λ μ¬μμ±λ©λλ€.
λ§μ½ μμ€ μ»¨νΈλ‘€μ 컀λ°νλ€λ©΄, ν΄λΉ νμΌλ‘ μ€λ μ·μ λν λ³κ²½ μ¬νμ λΉκ΅ν΄ λ³Ό μ μμ΅λλ€.
AVAλ μ€λ μ· λ¨μΈλ¬Έμ΄ μ€ν¨ν μ΄μ λ₯Ό 보μ¬μ€λλ€. :
κ·ΈλΌ μ½λλ₯Ό νμΈν΄λ³΄λ©΄ λ©λλ€.
λ§μ½ μ€λ
μ· νμΌλ€μ λ³νκ° μλλ κ²μ΄λΌλ©΄, --update-snapshots
(λλ -u
) νλκ·Έλ₯Ό μ¬μ©ν΄ μ€λ
μ·λ€μ μ
λ°μ΄νΈ ν μ μμ΅λλ€.
$ ava --update-snapshots
λ§μ½ νΉμ ν
μ€νΈλ€μ μν΄ μ€λ
μ·μ μ
λ°μ΄νΈ ν νμκ° μλ€λ©΄, --update-snapshots
νλκ·Έμ ν¨κ» --match
νλκ·Έλ₯Ό μ¬μ©νκ±°λ .only()
λ₯Ό μ¬μ©ν΄ ν
μ€νΈλ₯Ό μ ννμΈμ.
package.json
μ€μ μ μ€λ
μ· νμΌλ€μ μ μ₯ν μμΉλ₯Ό μ§μ ν μ μμ΅λλ€.
package.json
:
{
"ava": {
"snapshotDir": "custom-directory"
}
}
μ€λ μ· νμΌμ ν μ€νΈ νμΌλ€μ κ²½λ‘λ₯Ό λ°μν λλ ν°λ¦¬ ꡬ쑰μ μ μ₯λ κ²μ λλ€.
precompileλ ν μ€νΈ νμΌμ λν΄ AVAλ₯Ό μ€ννλ κ²½μ°, AVAλ μλ³Έ νμΌλ€μ μμΉλ₯Ό νμΈνκΈ° μν΄ μμ€ λ§΅(source map)μ μ¬μ©νλ € ν κ²μ λλ€.
μ€λ μ· νμΌλ€μ ν΄λΉ μμ€ λ§΅ νμΌλ€κ³Ό ν¨κ» μ μ₯λ κ²μ λλ€. μ΄ λμλ AVAκ° μ§μ μλ³Έ νμΌλ€μ μ€ννμ λμ κ°μ λ£°μ λ°λ¦ λλ€.
μ΄κ²μ νμ μ€ν¬λ¦½νΈλ‘ ν μ€νΈλ₯Ό μμ±ν λ μμ£Ό μ μ©ν©λλ€. (μ°Έμ‘°: νμ μ€ν¬λ¦½νΈ λ μνΌ)