Jasmine Framework Tutorial: Unit Testing with Example

ฮคฮน ฮตฮฏฮฝฮฑฮน ฯ„ฮฟ JasmineJS;

ฮคฮฟ Jasmine ฮตฮฏฮฝฮฑฮน ฮฑฮฝฮฟฮนฯ‡ฯ„ฮฟฯ ฮบฯŽฮดฮนฮบฮฑ ฮบฮฑฮน ฯ€ฮนฮฟ ฮดฮทฮผฮฟฯ†ฮนฮปฮญฯ‚ Javaฮ ฮปฮฑฮฏฯƒฮนฮฟ ฮดฮฟฮบฮนฮผฯŽฮฝ ฮฒฮนฮฒฮปฮนฮฟฮธฮฎฮบฮทฯ‚ ฯƒฮตฮฝฮฑฯฮฏฯ‰ฮฝ ฮณฮนฮฑ ฮดฮฟฮบฮนฮผฮฎ ฮบฮฌฮธฮต ฮตฮฏฮดฮฟฯ…ฯ‚ Javaฮ•ฯ†ฮฑฯฮผฮฟฮณฮฎ ฯƒฮตฮฝฮฑฯฮฏฮฟฯ…. ฮคฮฟ Jasmine ฮฑฮบฮฟฮปฮฟฯ…ฮธฮตฮฏ ฯ„ฮท ฮดฮนฮฑฮดฮนฮบฮฑฯƒฮฏฮฑ ฮฑฮฝฮฌฯ€ฯ„ฯ…ฮพฮทฯ‚ ฮผฮต ฮณฮฝฯŽฮผฮฟฮฝฮฑ ฯ„ฮท ฯƒฯ…ฮผฯ€ฮตฯฮนฯ†ฮฟฯฮฌ (BDD) ฮณฮนฮฑ ฮฝฮฑ ฮดฮนฮฑฯƒฯ†ฮฑฮปฮฏฯƒฮตฮน ฯŒฯ„ฮน ฮบฮฌฮธฮต ฮณฯฮฑฮผฮผฮฎ ฯ„ฮฟฯ… Javaฮ— ฮดฮฎฮปฯ‰ฯƒฮท ฮดฮญฯƒฮผฮทฯ‚ ฮตฮฝฮตฯฮณฮตฮนฯŽฮฝ ฮญฯ‡ฮตฮน ฮดฮฟฮบฮนฮผฮฑฯƒฯ„ฮตฮฏ ฯƒฯ‰ฯƒฯ„ฮฌ.

ฮฃฮต ฯ„ฮน ฯ‡ฯฮทฯƒฮนฮผฮตฯฮตฮน ฯ„ฮฟ Jasmine Framework;

ฮ— ฮดฮฟฮบฮนฮผฮฎ ฮตฮฏฮฝฮฑฮน ฮฒฮฑฯƒฮนฮบฯŒ ฯƒฯ„ฮฟฮนฯ‡ฮตฮฏฮฟ ฮณฮนฮฑ ฮบฮฌฮธฮต ฮตฯ†ฮฑฯฮผฮฟฮณฮฎ. ฮ“ฮนฮฑ ฯ„ฮท ฮดฮฟฮบฮนฮผฮฎ ฮผฮฟฮฝฮฌฮดฯ‰ฮฝ NodeJS, ฯ„ฮฟ ฯ€ฮปฮฑฮฏฯƒฮนฮฟ ฯ€ฮฟฯ… ฮตฮฏฮฝฮฑฮน ฮดฮนฮฑฮธฮญฯƒฮนฮผฮฟ ฮณฮนฮฑ ฯ„ฮท ฮดฮฟฮบฮนฮผฮฎ ฮฟฮฝฮฟฮผฮฌฮถฮตฯ„ฮฑฮน Jasmine. ฮฃฯ„ฮนฯ‚ ฮฑฯฯ‡ฮญฯ‚ ฯ„ฮฟฯ… 2000, ฯ…ฯ€ฮฎฯฯ‡ฮต ฮญฮฝฮฑ ฯ€ฮปฮฑฮฏฯƒฮนฮฟ ฮณฮนฮฑ ฮดฮฟฮบฮนฮผฮญฯ‚ Javaฮ“ฯฮฑฯ†ฮฎ ฮตฯ†ฮฑฯฮผฮฟฮณฮญฯ‚ ฯ€ฮฟฯ… ฮฟฮฝฮฟฮผฮฌฮถฮฟฮฝฯ„ฮฑฮน JsUnit. Later ฮฑฯ…ฯ„ฯŒ ฯ„ฮฟ ฯ€ฮปฮฑฮฏฯƒฮนฮฟ ฮฑฮฝฮฑฮฒฮฑฮธฮผฮฏฯƒฯ„ฮทฮบฮต ฮบฮฑฮน ฮตฮฏฮฝฮฑฮน ฯ€ฮปฮญฮฟฮฝ ฮณฮฝฯ‰ฯƒฯ„ฯŒ ฯ‰ฯ‚ Jasmine.

ฮคฮฟ Jasmine ฮฒฮฟฮทฮธฮฌ ฯƒฯ„ฮทฮฝ ฮฑฯ…ฯ„ฮฟฮผฮฑฯ„ฮฟฯ€ฮฟฮนฮทฮผฮญฮฝฮท ฮ”ฮฟฮบฮนฮผฮฎ ฮผฮฟฮฝฮฌฮดฮฑฯ‚, ฮบฮฌฯ„ฮน ฯ€ฮฟฯ… ฮญฯ‡ฮตฮน ฮณฮฏฮฝฮตฮน ฮผฮนฮฑ ฮฑฯฮบฮตฯ„ฮฌ ฮฒฮฑฯƒฮนฮบฮฎ ฯ€ฯฮฑฮบฯ„ฮนฮบฮฎ ฮบฮฑฯ„ฮฌ ฯ„ฮทฮฝ ฮฑฮฝฮฌฯ€ฯ„ฯ…ฮพฮทping ฮบฮฑฮน ฯ„ฮทฮฝ ฮฑฮฝฮฌฯ€ฯ„ฯ…ฮพฮท ฯƒฯฮณฯ‡ฯฮฟฮฝฯ‰ฮฝ ฮดฮนฮฑฮดฮนฮบฯ„ฯ…ฮฑฮบฯŽฮฝ ฮตฯ†ฮฑฯฮผฮฟฮณฯŽฮฝ.

ฮฃฮต ฮฑฯ…ฯ„ฯŒ ฯ„ฮฟ ฯƒฮตฮผฮนฮฝฮฌฯฮนฮฟ Jasmine, ฮธฮฑ ฮผฮฌฮธฮตฯ„ฮต ฯ€ฯŽฯ‚ ฮฝฮฑ ฯฯ…ฮธฮผฮฏฮถฮตฯ„ฮต ฯ„ฮฟ ฯ€ฮตฯฮนฮฒฮฌฮปฮปฮฟฮฝ ฯƒฮฑฯ‚ ฮผฮต ฯ„ฮฟ Jasmine ฮบฮฑฮน ฯ€ฯŽฯ‚ ฮฝฮฑ ฮตฮบฯ„ฮตฮปฮตฮฏฯ„ฮต ฮดฮฟฮบฮนฮผฮญฯ‚ Jasmine ฮณฮนฮฑ ฯ„ฮทฮฝ ฯ€ฯฯŽฯ„ฮท ฯƒฮฑฯ‚ ฮตฯ†ฮฑฯฮผฮฟฮณฮฎ Node.js.

Jasmine ฮณฮนฮฑ ฮดฮฟฮบฮนฮผฮฎ ฮตฯ†ฮฑฯฮผฮฟฮณฯŽฮฝ Node.js

ฮ— ฮ“ฮนฮฑฯƒฮตฮผฮฏ ฮตฮฏฮฝฮฑฮน ฮฑ ฮ‘ฮฝฮฌฯ€ฯ„ฯ…ฮพฮท ฮผฮต ฮณฮฝฯŽฮผฮฟฮฝฮฑ ฯ„ฮท ฯƒฯ…ฮผฯ€ฮตฯฮนฯ†ฮฟฯฮฌ (BDD) ฯ€ฮปฮฑฮฏฯƒฮนฮฟ ฮดฮฟฮบฮนฮผฯŽฮฝ ฮณฮนฮฑ Javaฮ“ฯฮฑฯ†ฮฎ. ฮคฮฟ ฮบฮฌฮฝฮตฮน ฮดฮตฮฝ ฮฒฮฑฯƒฮนฯƒฯ„ฮตฮฏฯ„ฮต ฯƒฮต ฯ€ฯฮฟฮณฯฮฌฮผฮผฮฑฯ„ฮฑ ฯ€ฮตฯฮนฮฎฮณฮทฯƒฮทฯ‚, DOM ฮฎ ฮฟฯ€ฮฟฮนฮฟฮดฮฎฯ€ฮฟฯ„ฮต ฮฌฮปฮปฮฟ Javaฮ ฮปฮฑฮฏฯƒฮนฮฟ ฯƒฮตฮฝฮฑฯฮฏฮฟฯ…. ฮ•ฯ€ฮฟฮผฮญฮฝฯ‰ฯ‚, ฮตฮฏฮฝฮฑฮน ฮบฮฑฯ„ฮฌฮปฮปฮทฮปฮฟ ฮณฮนฮฑ ฮนฯƒฯ„ฯŒฯ„ฮฟฯ€ฮฟฯ…ฯ‚, ฮญฯฮณฮฑ Node.js ฮฎ ฮฟฯ€ฮฟฯ…ฮดฮฎฯ€ฮฟฯ„ฮต ฮฑฮปฮปฮฟฯ Javaฮคฮฟ ฯƒฮตฮฝฮฌฯฮนฮฟ ฮผฯ€ฮฟฯฮตฮฏ ฮฝฮฑ ฮตฮบฯ„ฮตฮปฮตฯƒฯ„ฮตฮฏ. ฮ“ฮนฮฑ ฮฝฮฑ ฮพฮตฮบฮนฮฝฮฎฯƒฮตฯ„ฮต ฮฝฮฑ ฯ‡ฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฮตฮฏฯ„ฮต ฯ„ฮฟ Jasmine, ฯ€ฯฮญฯ€ฮตฮน ฯ€ฯฯŽฯ„ฮฑ ฮฝฮฑ ฮบฮฌฮฝฮตฯ„ฮต ฮปฮฎฯˆฮท ฮบฮฑฮน ฮตฮณฮบฮฑฯ„ฮฌฯƒฯ„ฮฑฯƒฮท ฯ„ฯ‰ฮฝ ฮฑฯ€ฮฑฯฮฑฮฏฯ„ฮทฯ„ฯ‰ฮฝ ฮปฮตฮนฯ„ฮฟฯ…ฯฮณฮนฮบฯŽฮฝ ฮผฮฟฮฝฮฌฮดฯ‰ฮฝ Jasmine.

ฮ ฯŽฯ‚ ฮฝฮฑ ฯฯ…ฮธฮผฮฏฯƒฮตฯ„ฮต ฯ„ฮฟ ฯ€ฮตฯฮนฮฒฮฌฮปฮปฮฟฮฝ ฮดฮฟฮบฮนฮผฮฎฯ‚ Jasmine

ฮฃฯ„ฮท ฯƒฯ…ฮฝฮญฯ‡ฮตฮนฮฑ, ฯƒฮต ฮฑฯ…ฯ„ฯŒ ฯ„ฮฟ ฯƒฮตฮผฮนฮฝฮฌฯฮนฮฟ Jasmine Node JS, ฮธฮฑ ฯ‡ฯฮตฮนฮฑฯƒฯ„ฮตฮฏ ฮฝฮฑ ฮฑฯฯ‡ฮนฮบฮฟฯ€ฮฟฮนฮฎฯƒฮตฯ„ฮต ฯ„ฮฟ ฯ€ฮตฯฮนฮฒฮฌฮปฮปฮฟฮฝ ฯƒฮฑฯ‚ ฮบฮฑฮน ฮฝฮฑ ฮตฯ€ฮนฮธฮตฯ‰ฯฮฎฯƒฮตฯ„ฮต ฯ„ฮฟ ฮฑฯฯ‡ฮตฮฏฮฟ ฮดฮนฮฑฮผฯŒฯฯ†ฯ‰ฯƒฮทฯ‚ jasmine. ฮคฮฑ ฯ€ฮฑฯฮฑฮบฮฌฯ„ฯ‰ ฮฒฮฎฮผฮฑฯ„ฮฑ ฮดฮตฮฏฯ‡ฮฝฮฟฯ…ฮฝ ฯ€ฯŽฯ‚ ฮฝฮฑ ฯฯ…ฮธฮผฮฏฯƒฮตฯ„ฮต ฯ„ฮฟ Jasmine ฯƒฯ„ฮฟ ฯ€ฮตฯฮนฮฒฮฌฮปฮปฮฟฮฝ ฯƒฮฑฯ‚

ฮ’ฮฎฮผฮฑ 1) ฮ•ฮณฮบฮฑฯ„ฮฑฯƒฯ„ฮฎฯƒฯ„ฮต ฮผฮฟฮฝฮฌฮดฮตฯ‚ NPM
ฮ˜ฮฑ ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฮ•ฮณฮบฮฑฯ„ฮฑฯƒฯ„ฮฎฯƒฯ„ฮต ฯ„ฮฟ NPM jasmine module ฮณฮนฮฑ ฮฝฮฑ ฯ‡ฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฮฎฯƒฮตฯ„ฮต ฯ„ฮฟ ฯ€ฮปฮฑฮฏฯƒฮนฮฟ jasmine ฮผฮญฯƒฮฑ ฮฑฯ€ฯŒ ฮผฮนฮฑ ฮตฯ†ฮฑฯฮผฮฟฮณฮฎ Node. ฮ“ฮนฮฑ ฮฝฮฑ ฮตฮณฮบฮฑฯ„ฮฑฯƒฯ„ฮฎฯƒฮตฯ„ฮต ฯ„ฮท ฮปฮตฮนฯ„ฮฟฯ…ฯฮณฮนฮบฮฎ ฮผฮฟฮฝฮฌฮดฮฑ jasmine-node, ฮตฮบฯ„ฮตฮปฮญฯƒฯ„ฮต ฯ„ฮทฮฝ ฯ€ฮฑฯฮฑฮบฮฌฯ„ฯ‰ ฮตฮฝฯ„ฮฟฮปฮฎ.

npm ฮตฮณฮบฮฑฯ„ฮฌฯƒฯ„ฮฑฯƒฮท jasmine-node

ฮ’ฮฎฮผฮฑ 2) ฮ‘ฯฯ‡ฮนฮบฮฟฯ€ฮฟฮนฮฎฯƒฯ„ฮต ฯ„ฮฟ ฯ€ฮตฯฮนฮฒฮฌฮปฮปฮฟฮฝ Jasmine
ฮ•ฮบฮบฮฏฮฝฮทฯƒฮท ฯ„ฮฟฯ… ฮญฯฮณฮฟฯ… โ€“ ฮšฮฌฮฝฮฟฮฝฯ„ฮฑฯ‚ ฮฑฯ…ฯ„ฯŒ, ฯ„ฮฟ jasmine ฮดฮทฮผฮนฮฟฯ…ฯฮณฮตฮฏ ฮญฮฝฮฑฮฝ ฮบฮฑฯ„ฮฌฮปฮฟฮณฮฟ ฯ€ฯฮฟฮดฮนฮฑฮณฯฮฑฯ†ฯŽฮฝ ฮบฮฑฮน ฮผฮนฮฑ ฮดฮนฮฑฮผฯŒฯฯ†ฯ‰ฯƒฮท json ฮณฮนฮฑ ฮตฯƒฮฌฯ‚. ฮŸ ฮบฮฑฯ„ฮฌฮปฮฟฮณฮฟฯ‚ ฯ€ฯฮฟฮดฮนฮฑฮณฯฮฑฯ†ฯŽฮฝ ฯ‡ฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฮตฮฏฯ„ฮฑฮน ฮณฮนฮฑ ฯ„ฮทฮฝ ฮฑฯ€ฮฟฮธฮฎฮบฮตฯ…ฯƒฮท ฯŒฮปฯ‰ฮฝ ฯ„ฯ‰ฮฝ ฮดฮฟฮบฮนฮผฮฑฯƒฯ„ฮนฮบฯŽฮฝ ฮฑฯฯ‡ฮตฮฏฯ‰ฮฝ ฯƒฮฑฯ‚. ฮšฮฌฮฝฮฟฮฝฯ„ฮฑฯ‚ ฮฑฯ…ฯ„ฯŒ, ฯ„ฮฟ jasmine ฮธฮฑ ฮพฮญฯฮตฮน ฯ€ฮฟฯ ฮฒฯฮฏฯƒฮบฮฟฮฝฯ„ฮฑฮน ฯŒฮปฮตฯ‚ ฮฟฮน ฮดฮฟฮบฮนฮผฮญฯ‚ ฯƒฮฑฯ‚ ฮบฮฑฮน ฯƒฯ„ฮท ฯƒฯ…ฮฝฮญฯ‡ฮตฮนฮฑ ฮธฮฑ ฮผฯ€ฮฟฯฮตฮฏ ฮฝฮฑ ฯ„ฮนฯ‚ ฮตฮบฯ„ฮตฮปฮญฯƒฮตฮน ฮฑฮฝฮฌฮปฮฟฮณฮฑ. ฮฟ JSON ฮคฮฟ ฮฑฯฯ‡ฮตฮฏฮฟ ฯ‡ฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฮตฮฏฯ„ฮฑฮน ฮณฮนฮฑ ฯ„ฮทฮฝ ฮฑฯ€ฮฟฮธฮฎฮบฮตฯ…ฯƒฮท ฯƒฯ…ฮณฮบฮตฮบฯฮนฮผฮญฮฝฯ‰ฮฝ ฯ€ฮปฮทฯฮฟฯ†ฮฟฯฮนฯŽฮฝ ฮดฮนฮฑฮผฯŒฯฯ†ฯ‰ฯƒฮทฯ‚ ฯƒฯ‡ฮตฯ„ฮนฮบฮฌ ฮผฮต ฯ„ฮฟ jasmine.

ฮ“ฮนฮฑ ฮฝฮฑ ฮฑฯฯ‡ฮนฮบฮฟฯ€ฮฟฮนฮฎฯƒฮตฯ„ฮต ฯ„ฮฟ ฯ€ฮตฯฮนฮฒฮฌฮปฮปฮฟฮฝ jasmine, ฮตฮบฯ„ฮตฮปฮญฯƒฯ„ฮต ฯ„ฮทฮฝ ฯ€ฮฑฯฮฑฮบฮฌฯ„ฯ‰ ฮตฮฝฯ„ฮฟฮปฮฎ

ฮณฮนฮฑฯƒฮตฮผฮฏ init

ฮ’ฮฎฮผฮฑ 3) ฮ•ฯ€ฮนฮธฮตฯ‰ฯฮฎฯƒฯ„ฮต ฯ„ฮฟ ฮฑฯฯ‡ฮตฮฏฮฟ ฮดฮนฮฑฮผฯŒฯฯ†ฯ‰ฯƒฮฎฯ‚ ฯƒฮฑฯ‚.
ฮคฮฟ ฮฑฯฯ‡ฮตฮฏฮฟ ฮดฮนฮฑฮผฯŒฯฯ†ฯ‰ฯƒฮทฯ‚ ฮธฮฑ ฮฑฯ€ฮฟฮธฮทฮบฮตฯ…ฯ„ฮตฮฏ ฯƒฯ„ฮฟ ฯ†ฮฌฮบฮตฮปฮฟ spec/support ฯ‰ฯ‚ jasmine.json. ฮ‘ฯ…ฯ„ฯŒ ฯ„ฮฟ ฮฑฯฯ‡ฮตฮฏฮฟ ฮฑฯ€ฮฑฯฮนฮธฮผฮตฮฏ ฯ„ฮฑ ฮฑฯฯ‡ฮตฮฏฮฑ ฯ€ฯฮฟฮญฮปฮตฯ…ฯƒฮทฯ‚ ฮบฮฑฮน ฯ„ฮฑ ฮฑฯฯ‡ฮตฮฏฮฑ ฯ€ฯฮฟฮดฮนฮฑฮณฯฮฑฯ†ฯŽฮฝ ฯ€ฮฟฯ… ฮธฮฑ ฮธฮญฮปฮฑฯ„ฮต ฮฝฮฑ ฯƒฯ…ฮผฯ€ฮตฯฮนฮปฮฌฮฒฮตฮน ฮฟ ฮดฯฮฟฮผฮญฮฑฯ‚ Jasmine.

ฮคฮฟ ฯ€ฮฑฯฮฑฮบฮฌฯ„ฯ‰ ฯƒฯ„ฮนฮณฮผฮนฯŒฯ„ฯ…ฯ€ฮฟ ฮฟฮธฯŒฮฝฮทฯ‚ ฮดฮตฮฏฯ‡ฮฝฮตฮน ฮญฮฝฮฑ ฯ„ฯ…ฯ€ฮนฮบฯŒ ฯ€ฮฑฯฮฌฮดฮตฮนฮณฮผฮฑ ฯ„ฮฟฯ… ฮฑฯฯ‡ฮตฮฏฮฟฯ… package.json ฮณฮนฮฑ ฯ„ฮฟ jasmine.

ฮกฯฮธฮผฮนฯƒฮท ฯ€ฮตฯฮนฮฒฮฌฮปฮปฮฟฮฝฯ„ฮฟฯ‚ ฮดฮฟฮบฮนฮผฮฎฯ‚ Jasmine

  1. ฮฃฮทฮผฮตฮนฯŽฯƒฯ„ฮต ฯŒฯ„ฮน ฮฟ ฮบฮฑฯ„ฮฌฮปฮฟฮณฮฟฯ‚ ฯ€ฯฮฟฮดฮนฮฑฮณฯฮฑฯ†ฯŽฮฝ ฮบฮฑฮธฮฟฯฮฏฮถฮตฯ„ฮฑฮน ฮตฮดฯŽ. ฮŒฯ€ฯ‰ฯ‚ ฮฑฮฝฮฑฯ†ฮญฯฮธฮทฮบฮต ฯ€ฯฮฟฮทฮณฮฟฯ…ฮผฮญฮฝฯ‰ฯ‚, ฯŒฯ„ฮฑฮฝ ฮตฮบฯ„ฮตฮปฮตฮฏฯ„ฮฑฮน ฯ„ฮฟ jasmine, ฮฑฮฝฮฑฮถฮทฯ„ฮฌ ฯŒฮปฮตฯ‚ ฯ„ฮนฯ‚ ฮดฮฟฮบฮนฮผฮญฯ‚ ฯƒฮต ฮฑฯ…ฯ„ฯŒฮฝ ฯ„ฮฟฮฝ ฮบฮฑฯ„ฮฌฮปฮฟฮณฮฟ.
  2. ฮคฮฟ ฮตฯ€ฯŒฮผฮตฮฝฮฟ ฯ€ฯฮฌฮณฮผฮฑ ฯ€ฮฟฯ… ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฯƒฮทฮผฮตฮนฯŽฯƒฮตฯ„ฮต ฮตฮฏฮฝฮฑฮน ฮท ฯ€ฮฑฯฮฌฮผฮตฯ„ฯฮฟฯ‚ spec_files โ€“ ฮ‘ฯ…ฯ„ฯŒ ฯ…ฯ€ฮฟฮดฮทฮปฯŽฮฝฮตฮน ฯŒฯ„ฮน ฮฑฮฝฮตฮพฮฌฯฯ„ฮทฯ„ฮฑ ฮฑฯ€ฯŒ ฯ„ฮฑ ฮฑฯฯ‡ฮตฮฏฮฑ ฮดฮฟฮบฮนฮผฮฎฯ‚ ฯ€ฮฟฯ… ฮดฮทฮผฮนฮฟฯ…ฯฮณฮฟฯฮฝฯ„ฮฑฮน ฮธฮฑ ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฮตฯ€ฮนฯƒฯ…ฮฝฮฌฯ€ฯ„ฮฟฮฝฯ„ฮฑฮน ฮผฮต ฯ„ฮท ฮปฮญฮพฮท-ฮบฮปฮตฮนฮดฮฏ ยซspecยป.

ฮฃฯ„ฮท ฯƒฯ…ฮฝฮญฯ‡ฮตฮนฮฑ, ฯƒฮต ฮฑฯ…ฯ„ฯŒ ฯ„ฮฟ ฯƒฮตฮผฮนฮฝฮฌฯฮนฮฟ ฯ€ฮปฮฑฮนฯƒฮฏฮฟฯ… Jasmine, ฮธฮฑ ฮผฮฌฮธฮฟฯ…ฮผฮต ฯ€ฯŽฯ‚ ฮฝฮฑ ฯ‡ฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฮฟฯฮผฮต ฯ„ฮฟ Jasmine ฮณฮนฮฑ ฮฝฮฑ ฮดฮฟฮบฮนฮผฮฌฯƒฮฟฯ…ฮผฮต ฮตฯ†ฮฑฯฮผฮฟฮณฮญฯ‚ Node.js.

ฮ ฯŽฯ‚ ฮฝฮฑ ฯ‡ฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฮฎฯƒฮตฯ„ฮต ฯ„ฮฟ Jasmine ฮณฮนฮฑ ฮฝฮฑ ฮดฮฟฮบฮนฮผฮฌฯƒฮตฯ„ฮต ฮตฯ†ฮฑฯฮผฮฟฮณฮญฯ‚ Node.js

ฮ“ฮนฮฑ ฮฝฮฑ ฯ‡ฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฮฎฯƒฮตฯ„ฮต ฯ„ฮท ฮดฮฟฮบฮนฮผฮฎ ฮผฮฟฮฝฮฌฮดฯ‰ฮฝ Jasmine ฮณฮนฮฑ ฮตฯ†ฮฑฯฮผฮฟฮณฮญฯ‚ Node.js, ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฮฑฮบฮฟฮปฮฟฯ…ฮธฮฎฯƒฮตฯ„ฮต ฮผฮนฮฑ ฯƒฮตฮนฯฮฌ ฮฒฮทฮผฮฌฯ„ฯ‰ฮฝ.

ฮฃฯ„ฮฟ ฯ€ฮฑฯฮฑฮบฮฌฯ„ฯ‰ ฯ€ฮฑฯฮฌฮดฮตฮนฮณฮผฮฌ ฮผฮฑฯ‚, ฮธฮฑ ฮฟฯฮฏฯƒฮฟฯ…ฮผฮต ฮผฮนฮฑ ฮตฮฝฯŒฯ„ฮทฯ„ฮฑ ฯ€ฮฟฯ… ฯ€ฯฮฟฯƒฮธฮญฯ„ฮตฮน 2 ฮฑฯฮนฮธฮผฮฟฯฯ‚ ฯ€ฮฟฯ… ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฮดฮฟฮบฮนฮผฮฑฯƒฯ„ฮฟฯฮฝ. ฮฃฯ„ฮท ฯƒฯ…ฮฝฮญฯ‡ฮตฮนฮฑ, ฮธฮฑ ฮฟฯฮฏฯƒฮฟฯ…ฮผฮต ฮญฮฝฮฑ ฮพฮตฯ‡ฯ‰ฯฮนฯƒฯ„ฯŒ ฮฑฯฯ‡ฮตฮฏฮฟ ฮบฯŽฮดฮนฮบฮฑ ฮผฮต ฯ„ฮฟฮฝ ฮบฯ‰ฮดฮนฮบฯŒ ฮดฮฟฮบฮนฮผฮฎฯ‚ ฮบฮฑฮน ฯƒฯ„ฮท ฯƒฯ…ฮฝฮญฯ‡ฮตฮนฮฑ ฮธฮฑ ฯ‡ฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฮฎฯƒฮฟฯ…ฮผฮต ฯ„ฮฟ jasmine ฮณฮนฮฑ ฮฝฮฑ ฮดฮฟฮบฮนฮผฮฌฯƒฮฟฯ…ฮผฮต ฯ„ฮท ฯƒฯ…ฮฝฮฌฯฯ„ฮทฯƒฮท ฮ ฯฮฟฯƒฮธฮฎฮบฮท ฮฑฮฝฮฌฮปฮฟฮณฮฑ.

ฮ’ฮฎฮผฮฑ 1) ฮšฮฑฮธฮฟฯฮฏฯƒฯ„ฮต ฯ„ฮฟฮฝ ฮบฯ‰ฮดฮนฮบฯŒ ฯ€ฮฟฯ… ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฮตฮปฮตฮณฯ‡ฮธฮตฮฏ. ฮ˜ฮฑ ฮฟฯฮฏฯƒฮฟฯ…ฮผฮต ฮผฮนฮฑ ฯƒฯ…ฮฝฮฌฯฯ„ฮทฯƒฮท ฯ€ฮฟฯ… ฮธฮฑ ฯ€ฯฮฟฯƒฮธฮญฯƒฮตฮน 2 ฮฑฯฮนฮธฮผฮฟฯฯ‚ ฮบฮฑฮน ฮธฮฑ ฮตฯ€ฮนฯƒฯ„ฯฮญฯˆฮตฮน ฯ„ฮฟ ฮฑฯ€ฮฟฯ„ฮญฮปฮตฯƒฮผฮฑ. ฮ‘ฯ…ฯ„ฯŒฯ‚ ฮฟ ฮบฯŽฮดฮนฮบฮฑฯ‚ ฮธฮฑ ฮณฯฮฑฯ†ฯ„ฮตฮฏ ฯƒฮต ฮญฮฝฮฑ ฮฑฯฯ‡ฮตฮฏฮฟ ฯ€ฮฟฯ… ฮฟฮฝฮฟฮผฮฌฮถฮตฯ„ฮฑฮน "Add.js".

ฮงฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฮฎฯƒฯ„ฮต ฯ„ฮฟ Jasmine ฮณฮนฮฑ ฮฝฮฑ ฮดฮฟฮบฮนฮผฮฌฯƒฮตฯ„ฮต ฯ„ฮนฯ‚ ฮตฯ†ฮฑฯฮผฮฟฮณฮญฯ‚ Node.js

var exports=module.exports={};
exports.AddNumber=function(a,b)
{
return a+b;
};

Code ฮตฮพฮฎฮณฮทฯƒฮท

  1. ฮ— ฮปฮญฮพฮท-ฮบฮปฮตฮนฮดฮฏ "ฮตฮพฮฑฮณฯ‰ฮณฮญฯ‚" ฯ‡ฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฮตฮฏฯ„ฮฑฮน ฮณฮนฮฑ ฮฝฮฑ ฮดฮนฮฑฯƒฯ†ฮฑฮปฮนฯƒฯ„ฮตฮฏ ฯŒฯ„ฮน ฮท ฮปฮตฮนฯ„ฮฟฯ…ฯฮณฮนฮบฯŒฯ„ฮทฯ„ฮฑ ฯ€ฮฟฯ… ฮฟฯฮฏฮถฮตฯ„ฮฑฮน ฯƒฮต ฮฑฯ…ฯ„ฯŒ ฯ„ฮฟ ฮฑฯฯ‡ฮตฮฏฮฟ ฮผฯ€ฮฟฯฮตฮฏ ฯ€ฯฮฑฮณฮผฮฑฯ„ฮนฮบฮฌ ฮฝฮฑ ฯ€ฯฮฟฯƒฯ€ฮตฮปฮฑฯƒฯ„ฮตฮฏ ฮฑฯ€ฯŒ ฮฌฮปฮปฮฑ ฮฑฯฯ‡ฮตฮฏฮฑ.
  2. ฮฃฯ„ฮท ฯƒฯ…ฮฝฮญฯ‡ฮตฮนฮฑ, ฮฟฯฮฏฮถฮฟฯ…ฮผฮต ฮผฮนฮฑ ฯƒฯ…ฮฝฮฌฯฯ„ฮทฯƒฮท ฯ€ฮฟฯ… ฮฟฮฝฮฟฮผฮฌฮถฮตฯ„ฮฑฮน "AddNumber". ฮ‘ฯ…ฯ„ฮฎ ฮท ฯƒฯ…ฮฝฮฌฯฯ„ฮทฯƒฮท ฮญฯ‡ฮตฮน ฮฟฯฮนฯƒฯ„ฮตฮฏ ฮฝฮฑ ฮปฮฑฮผฮฒฮฌฮฝฮตฮน 2 ฯ€ฮฑฯฮฑฮผฮญฯ„ฯฮฟฯ…ฯ‚, ฯ„ฮทฮฝ ฮฑ ฮบฮฑฮน ฯ„ฮท ฮฒ. ฮ— ฯƒฯ…ฮฝฮฌฯฯ„ฮทฯƒฮท ฯ€ฯฮฟฯƒฯ„ฮฏฮธฮตฯ„ฮฑฮน ฯƒฯ„ฮท ฮผฮฟฮฝฮฌฮดฮฑ "ฮตฮพฮฑฮณฯ‰ฮณฮญฯ‚" ฮณฮนฮฑ ฮฝฮฑ ฮณฮฏฮฝฮตฮน ฮท ฮปฮตฮนฯ„ฮฟฯ…ฯฮณฮฏฮฑ ฯ‰ฯ‚ ฮดฮทฮผฯŒฯƒฮนฮฑ ฮปฮตฮนฯ„ฮฟฯ…ฯฮณฮฏฮฑ ฯƒฯ„ฮทฮฝ ฮฟฯ€ฮฟฮฏฮฑ ฮผฯ€ฮฟฯฮฟฯฮฝ ฮฝฮฑ ฮญฯ‡ฮฟฯ…ฮฝ ฯ€ฯฯŒฯƒฮฒฮฑฯƒฮท ฮฌฮปฮปฮตฯ‚ ฮปฮตฮนฯ„ฮฟฯ…ฯฮณฮนฮบฮญฯ‚ ฮผฮฟฮฝฮฌฮดฮตฯ‚ ฮตฯ†ฮฑฯฮผฮฟฮณฮฎฯ‚.
  3. ฮ•ฯ€ฮนฯ„ฮญฮปฮฟฯ…ฯ‚ ฮบฮฌฮฝฮฟฯ…ฮผฮต ฯ„ฮท ฯƒฯ…ฮฝฮฌฯฯ„ฮทฯƒฮฎ ฮผฮฑฯ‚ ฮฝฮฑ ฮตฯ€ฮนฯƒฯ„ฯฮญฯ†ฮตฮน ฯ„ฮทฮฝ ฯ€ฯฮฟฯƒฯ„ฮนฮธฮญฮผฮตฮฝฮท ฮฑฮพฮฏฮฑ ฯ„ฯ‰ฮฝ ฯ€ฮฑฯฮฑฮผฮญฯ„ฯฯ‰ฮฝ.

ฮ’ฮฎฮผฮฑ 2) ฮฃฯ„ฮท ฯƒฯ…ฮฝฮญฯ‡ฮตฮนฮฑ, ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฮฟฯฮฏฯƒฮฟฯ…ฮผฮต ฯ„ฮฟฮฝ ฮบฯ‰ฮดฮนฮบฯŒ ฮดฮฟฮบฮนฮผฮฎฯ‚ ฮณฮนฮฑฯƒฮตฮผฮฏ ฮผฮฑฯ‚, ฮฟ ฮฟฯ€ฮฟฮฏฮฟฯ‚ ฮธฮฑ ฯ‡ฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฮทฮธฮตฮฏ ฮณฮนฮฑ ฯ„ฮท ฮดฮฟฮบฮนฮผฮฎ ฯ„ฮทฯ‚ ฯƒฯ…ฮฝฮฌฯฯ„ฮทฯƒฮทฯ‚ "ฮ ฯฮฟฯƒฮธฮฎฮบฮท" ฯƒฯ„ฮฟ ฮฑฯฯ‡ฮตฮฏฮฟ Add.js. ฮŸ ฯ€ฮฑฯฮฑฮบฮฌฯ„ฯ‰ ฮบฯŽฮดฮนฮบฮฑฯ‚ ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฯ„ฮตฮธฮตฮฏ ฯƒฮต ฮญฮฝฮฑ ฮฑฯฯ‡ฮตฮฏฮฟ ฯ€ฮฟฯ… ฮฟฮฝฮฟฮผฮฌฮถฮตฯ„ฮฑฮน add-spec.js.

ฮฃฮทฮผฮตฮฏฯ‰ฯƒฮท: โ€“ ฮ— ฮปฮญฮพฮท 'spec' ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฯ€ฯฮฟฯƒฯ„ฮตฮธฮตฮฏ ฯƒฯ„ฮฟ ฮฑฯฯ‡ฮตฮฏฮฟ ฮดฮฟฮบฮนฮผฮฎฯ‚ ฯŽฯƒฯ„ฮต ฮฝฮฑ ฮผฯ€ฮฟฯฮตฮฏ ฮฝฮฑ ฮตฮฝฯ„ฮฟฯ€ฮนฯƒฯ„ฮตฮฏ ฮฑฯ€ฯŒ ฯ„ฮฟ ฮณฮนฮฑฯƒฮตฮผฮฏ.

ฮงฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฮฎฯƒฯ„ฮต ฯ„ฮฟ Jasmine ฮณฮนฮฑ ฮฝฮฑ ฮดฮฟฮบฮนฮผฮฌฯƒฮตฯ„ฮต ฯ„ฮนฯ‚ ฮตฯ†ฮฑฯฮผฮฟฮณฮญฯ‚ Node.js

Code ฮตฮพฮฎฮณฮทฯƒฮท

var app=require("../Add.js");
describe("Addition",function(){
it("The function should add 2 numbers",function() {
var value=app.AddNumber(5,6);
expect(value).toBe(11);
});
});
  1. ฮ ฯฮญฯ€ฮตฮน ฯ€ฯฯŽฯ„ฮฑ ฮฝฮฑ ฯƒฯ…ฮผฯ€ฮตฯฮนฮปฮฌฮฒฮฟฯ…ฮผฮต ฯ„ฮฟ ฮฑฯฯ‡ฮตฮฏฮฟ ฮผฮฑฯ‚ Add.js ฯŽฯƒฯ„ฮต ฮฝฮฑ ฮผฯ€ฮฟฯฮฟฯฮผฮต ฮฝฮฑ ฮดฮฟฮบฮนฮผฮฌฯƒฮฟฯ…ฮผฮต ฯ„ฮท ฯƒฯ…ฮฝฮฌฯฯ„ฮทฯƒฮท "AddNumber" ฯƒฮต ฮฑฯ…ฯ„ฯŒ ฯ„ฮฟ ฮฑฯฯ‡ฮตฮฏฮฟ.
  2. ฮคฯŽฯฮฑ ฮดฮทฮผฮนฮฟฯ…ฯฮณฮฟฯฮผฮต ฯ„ฮท ฮดฮฟฮบฮนฮผฮฑฯƒฯ„ฮนฮบฮฎ ฮผฮฑฯ‚ ฮตฮฝฯŒฯ„ฮทฯ„ฮฑ. ฮคฮฟ ฯ€ฯฯŽฯ„ฮฟ ฮผฮญฯฮฟฯ‚ ฯ„ฮทฯ‚ ฮตฮฝฯŒฯ„ฮทฯ„ฮฑฯ‚ ฮดฮฟฮบฮนฮผฮฎฯ‚ ฮตฮฏฮฝฮฑฮน ฮฝฮฑ ฯ€ฮตฯฮนฮณฯฮฌฯˆฮตฮน ฮผฮนฮฑ ฮผฮญฮธฮฟฮดฮฟ ฯ€ฮฟฯ… ฮฒฮฑฯƒฮนฮบฮฌ ฮดฮฏฮฝฮตฮน ฮญฮฝฮฑ ฯŒฮฝฮฟฮผฮฑ ฮณฮนฮฑ ฯ„ฮท ฮดฮฟฮบฮนฮผฮฎ ฮผฮฑฯ‚. ฮฃฮต ฮฑฯ…ฯ„ฮฎฮฝ ฯ„ฮทฮฝ ฯ€ฮตฯฮฏฯ€ฯ„ฯ‰ฯƒฮท, ฯ„ฮฟ ฯŒฮฝฮฟฮผฮฑ ฯ„ฮทฯ‚ ฮดฮฟฮบฮนฮผฮฎฯ‚ ฮผฮฑฯ‚ ฮตฮฏฮฝฮฑฮน "ฮ ฯฮฟฯƒฮธฮฎฮบฮท".
  3. ฮคฮฟ ฮตฯ€ฯŒฮผฮตฮฝฮฟ ฮบฮฟฮผฮผฮฌฯ„ฮน ฮตฮฏฮฝฮฑฮน ฮฝฮฑ ฮดฯŽฯƒฮฟฯ…ฮผฮต ฮผฮนฮฑ ฯ€ฮตฯฮนฮณฯฮฑฯ†ฮฎ ฮณฮนฮฑ ฯ„ฮท ฮดฮฟฮบฮนฮผฮฎ ฮผฮฑฯ‚ ฯ‡ฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฯŽฮฝฯ„ฮฑฯ‚ ฯ„ฮท ฮผฮญฮธฮฟฮดฮฟ 'it'.
  4. ฮคฯŽฯฮฑ ฮตฯ€ฮนฮบฮฑฮปฮฟฯฮผฮฑฯƒฯ„ฮต ฯ„ฮท ฮผฮญฮธฮฟฮดฮฟ Addnumber ฮบฮฑฮน ฯƒฯ„ฮญฮปฮฝฮฟฯ…ฮผฮต 2 ฯ€ฮฑฯฮฑฮผฮญฯ„ฯฮฟฯ…ฯ‚ 5 ฮบฮฑฮน 6. ฮ‘ฯ…ฯ„ฯŒ ฮธฮฑ ฮผฮตฯ„ฮฑฮฒฮนฮฒฮฑฯƒฯ„ฮตฮฏ ฯƒฯ„ฮท ฮผฮญฮธฮฟฮดฮฟ Addnumber ฯƒฯ„ฮฟ ฮฑฯฯ‡ฮตฮฏฮฟ App.js. ฮ— ฮตฯ€ฮนฯƒฯ„ฯฮตฯ†ฯŒฮผฮตฮฝฮท ฯ„ฮนฮผฮฎ ฯƒฯ„ฮท ฯƒฯ…ฮฝฮญฯ‡ฮตฮนฮฑ ฮฑฯ€ฮฟฮธฮทฮบฮตฯฮตฯ„ฮฑฮน ฯƒฮต ฮผฮนฮฑ ฮผฮตฯ„ฮฑฮฒฮปฮทฯ„ฮฎ ฯ€ฮฟฯ… ฮฟฮฝฮฟฮผฮฌฮถฮตฯ„ฮฑฮน ฯ„ฮนฮผฮฎ.
  5. ฮคฮฟ ฯ„ฮตฮปฮตฯ…ฯ„ฮฑฮฏฮฟ ฮฒฮฎฮผฮฑ ฮตฮฏฮฝฮฑฮน ฮฝฮฑ ฮบฮฌฮฝฮฟฯ…ฮผฮต ฯ„ฮท ฯƒฯฮณฮบฯฮนฯƒฮท ฮฎ ฯ„ฮทฮฝ ฯ€ฯฮฑฮณฮผฮฑฯ„ฮนฮบฮฎ ฮผฮฑฯ‚ ฮดฮฟฮบฮนฮผฮฎ. ฮ•ฯ†ฯŒฯƒฮฟฮฝ ฮฑฮฝฮฑฮผฮญฮฝฮฟฯ…ฮผฮต ฯŒฯ„ฮน ฮท ฯ„ฮนฮผฮฎ ฯ€ฮฟฯ… ฮตฯ€ฮนฯƒฯ„ฯฮญฯ†ฮตฯ„ฮฑฮน ฮฑฯ€ฯŒ ฯ„ฮท ฯƒฯ…ฮฝฮฌฯฯ„ฮทฯƒฮท Addnumber ฮธฮฑ ฮตฮฏฮฝฮฑฮน 11, ฯ„ฮทฮฝ ฮฟฯฮฏฮถฮฟฯ…ฮผฮต ฯ‡ฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฯŽฮฝฯ„ฮฑฯ‚ ฯ„ฮท ฮผฮญฮธฮฟฮดฮฟ expect(value).toBe(ฮท ฮฑฮฝฮฑฮผฮตฮฝฯŒฮผฮตฮฝฮท ฯ„ฮนฮผฮฎ).

ฮ ฮฑฯฮฑฮณฯ‰ฮณฮฎ

  1. ฮ“ฮนฮฑ ฮฝฮฑ ฮตฮบฯ„ฮตฮปฮญฯƒฮตฯ„ฮต ฯ„ฮท ฮดฮฟฮบฮนฮผฮฎ, ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฮตฮบฯ„ฮตฮปฮญฯƒฮตฯ„ฮต ฯ„ฮทฮฝ ฮตฮฝฯ„ฮฟฮปฮฎ jasmine.
  2. ฮคฮฟ ฯ€ฮฑฯฮฑฮบฮฌฯ„ฯ‰ ฯƒฯ„ฮนฮณฮผฮนฯŒฯ„ฯ…ฯ€ฮฟ ฮฟฮธฯŒฮฝฮทฯ‚ ฮดฮตฮฏฯ‡ฮฝฮตฮน ฯŒฯ„ฮน ฮผฮตฯ„ฮฌ ฯ„ฮทฮฝ ฮตฮบฯ„ฮญฮปฮตฯƒฮท ฯ„ฮทฯ‚ ฮตฮฝฯ„ฮฟฮปฮฎฯ‚ jasmine , ฮธฮฑ ฮตฮฝฯ„ฮฟฯ€ฮฏฯƒฮตฮน ฯŒฯ„ฮน ฯ…ฯ€ฮฌฯฯ‡ฮตฮน ฮผฮนฮฑ ฮดฮฟฮบฮนฮผฮฎ ฯ€ฮฟฯ… ฮฟฮฝฮฟฮผฮฌฮถฮตฯ„ฮฑฮน add-spec.js ฮบฮฑฮน ฮธฮฑ ฮตฮบฯ„ฮตฮปฮญฯƒฮตฮน ฮฑฯ…ฯ„ฮฎฮฝ ฯ„ฮท ฮดฮฟฮบฮนฮผฮฎ ฮฑฮฝฮฌฮปฮฟฮณฮฑ. ฮ•ฮฌฮฝ ฯ…ฯ€ฮฌฯฯ‡ฮฟฯ…ฮฝ ฯƒฯ†ฮฌฮปฮผฮฑฯ„ฮฑ ฯƒฯ„ฮท ฮดฮฟฮบฮนฮผฮฎ, ฮธฮฑ ฮตฮผฯ†ฮฑฮฝฮนฯƒฯ„ฮตฮฏ ฮฑฮฝฮฑฮปฯŒฮณฯ‰ฯ‚.

ฮงฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฮฎฯƒฯ„ฮต ฯ„ฮฟ Jasmine ฮณฮนฮฑ ฮฝฮฑ ฮดฮฟฮบฮนฮผฮฌฯƒฮตฯ„ฮต ฯ„ฮนฯ‚ ฮตฯ†ฮฑฯฮผฮฟฮณฮญฯ‚ Node.js

ฮ ฮตฯฮฏฮปฮทฯˆฮท

  • ฮ“ฮนฮฑ ฮฝฮฑ ฮดฮฟฮบฮนฮผฮฌฯƒฮตฯ„ฮต ฮฑ Node.js ฮตฯ†ฮฑฯฮผฮฟฮณฮฎ, ฯ„ฮฟ ฯ€ฮปฮฑฮฏฯƒฮนฮฟ ฮณฮนฮฑฯƒฮตฮผฮฏ ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฮตฮณฮบฮฑฯ„ฮฑฯƒฯ„ฮฑฮธฮตฮฏ ฯ€ฯฯŽฯ„ฮฑ. ฮ‘ฯ…ฯ„ฯŒ ฮณฮฏฮฝฮตฯ„ฮฑฮน ฯ‡ฯฮทฯƒฮนฮผฮฟฯ€ฮฟฮนฯŽฮฝฯ„ฮฑฯ‚ ฯ„ฮฟฮฝ ฮดฮนฮฑฯ‡ฮตฮนฯฮนฯƒฯ„ฮฎ ฯ€ฮฑฮบฮญฯ„ฯ‰ฮฝ Node.
  • ฮŸ ฮบฯ‰ฮดฮนฮบฯŒฯ‚ ฮดฮฟฮบฮนฮผฮฎฯ‚ ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฮณฯฮฑฯ†ฯ„ฮตฮฏ ฯƒฮต ฮพฮตฯ‡ฯ‰ฯฮนฯƒฯ„ฯŒ ฮฑฯฯ‡ฮตฮฏฮฟ ฮบฮฑฮน ฮท ฮปฮญฮพฮท 'spec' ฮธฮฑ ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฯ€ฯฮฟฯƒฮฑฯฯ„ฮทฮธฮตฮฏ ฯƒฯ„ฮฟ ฯŒฮฝฮฟฮผฮฑ ฯ„ฮฟฯ… ฮฑฯฯ‡ฮตฮฏฮฟฯ…. ฮœฯŒฮฝฮฟ ฮฑฮฝ ฮณฮฏฮฝฮตฮน ฮฑฯ…ฯ„ฯŒ, ฯ„ฮฟ jasmine ฮธฮฑ ฮผฯ€ฮฟฯฮญฯƒฮตฮน ฮฝฮฑ ฮตฮฝฯ„ฮฟฯ€ฮฏฯƒฮตฮน ฯŒฯ„ฮน ฮญฮฝฮฑ ฮฑฯฯ‡ฮตฮฏฮฟ ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฮตฮบฯ„ฮตฮปฮตฯƒฯ„ฮตฮฏ.
  • ฮ“ฮนฮฑ ฮฝฮฑ ฮตฮบฯ„ฮตฮปฮญฯƒฮตฯ„ฮต ฯ„ฮท ฮดฮฟฮบฮนฮผฮฎ, ฯ€ฯฮญฯ€ฮตฮน ฮฝฮฑ ฮตฮบฯ„ฮตฮปฮญฯƒฮตฯ„ฮต ฯ„ฮทฮฝ ฮตฮฝฯ„ฮฟฮปฮฎ jasmine. ฮ‘ฯ…ฯ„ฯŒ ฮธฮฑ ฮฒฯฮตฮน ฯŒฮปฮฑ ฯ„ฮฑ ฮฑฯฯ‡ฮตฮฏฮฑ ฯ€ฮฟฯ… ฮญฯ‡ฮฟฯ…ฮฝ ฯ„ฮท ฮปฮญฮพฮท ยซspecยป ฮบฮฑฮน ฮธฮฑ ฮตฮบฯ„ฮตฮปฮญฯƒฮตฮน ฯ„ฮฟ ฮฑฯฯ‡ฮตฮฏฮฟ ฮฑฮฝฮฌฮปฮฟฮณฮฑ.

ฮฃฯ…ฮฝฮฟฯˆฮฏฯƒฯ„ฮต ฮฑฯ…ฯ„ฮฎฮฝ ฯ„ฮทฮฝ ฮฑฮฝฮฌฯฯ„ฮทฯƒฮท ฮผฮต: