á¡á¬ážáá¯á¶ážáááºá¹ááá¬áá«! ááá±á· áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·ááá¯ááºáá¯ááºááŒá
áºáá±á¬ APIs áá»á¬ážááŸáá·áº áá¯ááºáá±á¬ááºáááºá¡ááœáẠIDE áá
áºáá¯á¡á¬áž á¡áá¯ááºáá®á¡áá»á¬ážááŒááºáá°ááá¯á· áááºááŒááá¯áá«áááºá
á¡ááœá±á¬áá»ážááá»áž
ááááºáá±á¬á· áá»áœááºáá±á¬áºááá¯á· áá®ááááᯠáááºááá¯áá±á¬ááºáá¬ááŒá®áž API áá²á· á¡ááá·áºááŒáá·áºá¡áá¯ááºá¡ááœáẠááá¯ááºááá¯áẠtool ááá¯áááºáá®ážááá¯á· áá¯á¶ážááŒááºáá²á·áá¬áá²á áá¯ááºáá¯ááºáá áºáá¯ááœááºááŸáááá·áºáá±á¬áá¯ááºáá±á¬ááºááá¯ááºá áœááºážá á¬áááºážáá áºáá¯ááŒáá·áºá ááŒáá«á áá¯á·á áááºážáááºáá»áœááºá¯ááºááá¯á·áá¡ááŒááºá¡áá áááºážááẠ"APIs áá»á¬ážááŸáá·áºá¡áá¯ááºáá¯ááºáááºá¡ááœáẠIDE" áá¯ááŒá±á¬ááá¯ááºáááº-
- queries ááŸáá·áº scripts áá»á¬áž áááºáá®ážááŒááºážááŸáá·áº áá¯ááºáá±á¬ááºááŒááºáž (áá±ážááœááºážáá»á¬ážá á¡á á®á¡á á¥áºáá»á¬áž)
- á á¬áá±ážááœá² á¡áá»áá¯ážáá»áá¯ážááᯠáá±ážáááºá
- á ááºážáááºáá»áá¯ážáááº
- Swaggerá OpenAPIá WADL á áááºááá¯á·áá²á·ááá¯á·áá±á¬ áá±á¬áºáááºáá»á¬ážá០áááºááœááºážááŒááºážá¡áá«á¡ááẠAPI áá±á¬áºááŒáá»ááºáá»á¬ážááŸáá·áº á¡áá¯ááºáá¯ááºááŒááºážá
- ááŸá±á¬ááºááŒá±á¬ááºáá±á¬ááºážááá¯ááŸá¯áá»á¬áž
- áá°ááŒáá¯ááºáá»á¬ážáá±á¬ á á¬ááŒáá·áºááá¯ááºáá»á¬ážááŸáá·áº áá±á«ááºážá ááºážááŒááºážá¡áá«á¡ááẠscripts áá»á¬ážáá±ážáá¬ážááŒááºážá¡ááœáẠáá¬áá¬á áá¬ážáá áºáᯠááá¯á·ááá¯áẠáá áºáá¯áááºááá¯áá±á¬á¡ááœáẠáá±á¬ááºážááœááºáá±á¬áá¶á·ááá¯ážááŸá¯
- á áááºááá¯á·ááá¯
á á¬áááºážááᯠááá·áºá¡ááá¬á¡ááœáẠááá¯ážáá»á²á·ááá¯ááºáááºá ááá¯á·á¡ááŒááºá IDE ááá¯ááºááá¯ááºáá¬áá cloud synchronizationá command line toolsá online monitoring service á áááºááá¯á·áá²á·ááá¯á· á¡áá»áá¯á·áá±á¬ á¡ááŒá±áá¶á¡áá±á¬ááºá¡áŠáá»á¬ážááá¯áááºáž áááºáá®ážááẠá¡áá±ážááŒá®ážáá«áááºá á¡áá¯á¶ážááœááºá áááŒá¬áá±ážáá®ááŸá áºáá»á¬ážááá±ááºáá±á á®ážááŒá±á¬ááºážáá»á¬ážááẠapplication áá¡á áœááºážáááºáá±á¬áá¯ááºáá±á¬ááºááá¯ááºá áœááºážááá¯áá¬áááááºážáááŸá áºáááºááœááºáá±á¬ááºážáá±á¬á¡ááºáá¬áá±á·á áºááá¯áááºážáá»áœááºá¯ááºááá¯á·á¡á¬ážááœáŸááºááŒáááºá
á€áá²á·ááá¯á·áá±á¬áááááá¬ááá¯áááºáá°ááá¯á¡ááºááááºážá áááºááŸá¬ážáááºááŸá¬á API áá»á¬áž ááœá¶á·ááŒáá¯ážááá¯ážáááºááŸá¯ááŸáá·áº á ááºážáááºááŒááºážáá»á¬ážááŸáá·áº á¡áááºážáá¯á¶áž áá áºáááºážáááºážááŒáá·áº áá»áááºáááºáá±áá°áá»á¬ážááẠdeveloper ááŸáá·áº testers áá»á¬ážááŒá áºááẠ=)á ááá¯á·á¡ááŒááºá ááááºá¡ááœáẠáááŒá¬áá áá áºáá¯áááºážáá±á¬ queries ááŸáá·áº ááá¯ážááŸááºážáá±á¬ script áá»á¬ážááᯠáá¯ááºáá±á¬ááºááẠáá¯á¶áá±á¬ááºáá«áá testers áá»á¬ážá¡ááœáẠáááºážááẠáááºááááááá¬áá»á¬ážáá²á០áá áºáá¯ááŒá áºááŒá®ážá á¡ááŒá¬ážá¡áá¬áá»á¬ážáá²ááœáẠáááºážááá¯á·ááᯠrun ááá¯ááºá áœááºážááŸááá±á¬ á á¬áá±ážááœá²áá»á¬ážáá±ážáá¬ážááŒááºážá¡ááœáẠá¡á áœááºážáááºááá·áº ááá¹ááá¬ážáá áºáá¯áááºáž áá«áááºááá·áºáááºá CI á
ááá¯á·ááŒá±á¬áá·áº á€áááºážááœáŸááºáá»ááºáá»á¬ážááᯠááá¯ááºáá¬ááŒááºážááŒáá·áº áá»áœááºá¯ááºááá¯á·ááá¯ááºáá¯ááºááᯠá áááºáááºáá®ážáá²á·áá«áááºá áá®á¡ááá·áºááŸá¬ áá¬ááœá±á¡á±á¬ááºááŒááºáá²á·áá² ááŒáá·áºáá¡á±á¬ááºá
á¡ááŒááºá áááºáá«á
á¡ááá®áá±ážááŸááºážááᯠááááá¯á¶áž á¡ááááááºááœá±áá
áºáá±á¬ááºáá²á· á
ááá¯ááºáá¡á±á¬ááºá áá±á«ááºážáá¯ááºáá¯ááºááá¯ááºáá«áááºá
áááºáááááá¯á¶ážáá±á¬ááºážááá¯áá»ááºááá¯áááºáá®ážááẠá¡ááŒá±á¬ááºážá¡áá¬á§áááá¬áááááºááŸá á¡áá±á«ááºážááá¹ááá¬ááᯠááŸáááºáá«á Query áááºááºááẠá€áá²á·ááá¯á· ááŒá áºáááº-
ááá¯ááŒá®ážá¡áá±ážá
áááºááŒáá·áºáá¡á±á¬ááºá áá±á¬ááºážááá¯áá»áẠá¡ááºáá¬áá±á·á
áºááẠáá°ááŒáá¯ááºáá»á¬ážáá±á¬ á¡áá¬ážáá°áá¯á¶ážá
áœá²áá°áá»á¬ážá á¡ááºáá¬áá±á·á
áºááŸáá·áº á¡ááœááºáááºáá°áá±á¬ááŒá±á¬áá·áº á¡áá¬ážáá°áááááá¬áá»á¬ážá០ááŒá±á¬ááºážááœáŸá±á·ááŒááºážááᯠááá¯ááá¯ááœááºáá°á
á±áááºá url ááᯠááááá¯á¶áž áá±á¬ááºážááá¯ááá¯ááºááŒáá¡á±á¬ááº
áá±áá°áá»á¡á¬ážááŒáá·áºá ááááá áºáá»ááºááœááºá áá¯á¶á·ááŒááºááŸá¯á¡ááá·áºááẠá¡á¶á·á¡á¬ážááá·áºááœááºáá¬áá»á¬ážááᯠáááŒá¯áá¯ááºáá«á ááá¯á·áá±á¬áº á¡áá»áá¯á·áá±á¬á¡áá»ááºáá»á¬ážááᯠáá»áœááºá¯ááºá¡á¬áá¯á¶á áá¯ááºá á±ááá¯áá«áááºá
- áá¯á¶á·ááŒááºááŸá¯áááá¯ááºáááºááᯠáá áºáááºáá¯á¶á á¶ááŒáá·áº ááá¯ááºá á¬ážááŒá¯áá¬ážááŒá®ážá ááááŠážá áœá¬ á¡áá»ááºá¡áááºá¡ááŒá±á¬ááºážá¡áá¬ááᯠááá·áºááœááºážáá±ážááŒá®áž áá¯áááá¡áá±ááŒáá·áº á¡á±á¬ááºáá«á áááºáááºá á¬ážááœááºá¡ááºá¹áá«áááºá¡áá»áá¯á·ááᯠááá·áºááœááºážááá¯ááºá á±áááºááŒá áºáááºá
- áá±ážáá¬ážáá±á¬ áá±á¬ááºážááá¯áá»ááºáá áºáá¯á¡ááœáẠá ááºážáááºááŸá¯á á¬áááºážááᯠááŒáááá·áº á¡ááá¯ááºá¡áᬠtab áá áºáá¯ááŸááááºá
áááºááœá±á·ááŒááºáááá·áºá¡ááá¯ááºážá áá»áœááºá¯ááºááá¯á·á tool ááᯠá¡áááºááŒá±ááŒá±á¡áá¬ážáá°ááá¯ááºáá±á¬ client á¡ááŒá áºá¡áá¯á¶ážááŒá¯ááá¯ááºáá«áááºá ááá¯á·áá¬ááœááºá áááºážáá áœááºážáááºáá»á¬ážááᯠáá±á¬ááºážááá¯áá»ááºáá»á¬ážáá±ážááá¯á·áá¯á¶áá»áŸáᬠááá·áºáááºáá¬ážáá«á áá»áœááºá¯ááºááá¯á·ááẠá€áá±áá¬ááœáẠááŸááá±áááºááá¯ááºáá«á ááá¯á·áá±á¬áẠTestMace á á¡ááŒá±áá¶ááá±á¬ááá¬ážáá»á¬ážááŸáá·áº áá¯ááºáá±á¬ááºááá¯ááºá áœááºážáá»á¬ážááᯠá¡ááŒááºážáá»ááºážáá±á¬áºááŒáá«áááºá
á¡ááŒá±áá¶ááá±á¬ááá¬ážáá»á¬ážááŸáá·áºá¡ááºá¹áá«áááºáá»á¬áž
node ááá¯
TestMace áá¯ááºáá±á¬ááºááá¯ááºá áœááºážááᯠááá°áá®áá±á¬ nodes á¡áá»áá¯ážá¡á á¬ážáá»á¬áž ááœá²ááŒá¬ážáá¬ážáááºá á¡áááºáá±á¬áºááŒáá« á¥ááá¬ááœááºá áá»áœááºá¯ááºááá¯á·ááẠRequestStep node á áá¯ááºáá±á¬ááºááŸá¯ááᯠááá¯ááºááŒáá²á·áááºá ááá¯á·áá±á¬áºá á¡á±á¬ááºáá« node á¡áá»áá¯ážá¡á á¬ážáá»á¬ážááᯠááá¯á¡áá« á¡ááá®áá±ážááŸááºážááœáẠáááá¯ááºáááº-
- áá±á¬ááºážááá¯ááŸá¯á¡ááá·áºá á€áááºááŸá¬ áááºáá±á¬ááºážááá¯ááŸá¯áá áºáá¯ááᯠáááºáá®ážááá¯ááºááá·áº áá¯ááºáá áºáá¯ááŒá áºáááºá áááºážááœáẠááá±ážááŒááºá ááºá¡ááŒá Ạá¡ááá¯ááºá¡áᬠá¡ááŸááºá¡áá¬ážáá áºáá¯áᬠááŸáááá¯ááºáááºá
- ááŒá±á¬ááá¯áá»ááºá Node ááᯠá á¬áá±ážááœá²áá»á¬ážáá±ážááẠá¡áá¯á¶ážááŒá¯áááºá RequestStep node á ááá±áž node áá áºáá¯áᬠááŒá áºááá¯ááºáá«áááºá
- ááá¯ááºá ááá·áºá¡á¬áž Folder ááŸáá·áº RequestStep node áá»á¬ážá¡ááœááºážááœáẠá¡á¯ááºá á¯ááœá²á·ááœáá·áºááŒá¯áááºá
- ááá±á¬áá»ááºá áááºážááẠááá±á¬áá»ááºááᯠáááºáá®ážááá·áºá¡áá« á¡ááá¯á¡áá»á±á¬áẠáááºáá®ážáá¬ážááá·áº á¡ááŒá áºáá¯á¶á¡ááŸááºááŒá áºáááºá ááá¯ááºáá«áá áááºážááẠFolder node ááá¯ááºáá±á¬ááºááá¯ááºá áœááºážááᯠááŒááºáá¯ááºáááºá
- ááá·áºá Folder ááá¯á·ááá¯áẠRequestStep node ááá¯á· áá»áááºáááºáá«á áá±ážááŒááºážáá»ááºáá»á¬ážááŸáá·áº scripts áá»á¬ážááᯠááŒááºáááºá¡áá¯á¶ážááŒá¯ááœáá·áºááŒá¯áááºá
- á áááºááá¯á·ááá¯
áá¯á¶ááŸááºáá»á¬ážááẠááŒá áºáá¬áá»á¬ážáá²ááœáẠáááºááŸáááẠ(áááºáááºá¡á±á¬ááºááŒá±ááŸá á¡ááá·áºá¡á¬áž âáá áºááŒáááºáááºážááŒáá·áºâ áá±ážááŒááºážááŸá¯áá»á¬ážááᯠáá»ááºááŒááºá áœá¬áááºáá®ážáááºá¡ááœáẠá¡áá¯á¶ážááŒá¯áááº) ááŸáá·áº ááá±á¬áá»ááºáá»á¬áž (áááºáááºááááºááŸá á¡ááá·áº) ááœáẠáá»áœááºá¯ááºááá¯á·ááẠááá¯ááá¯á¡áá±ážá áááºáá±á¬áºááŒáá«áááºá
á á®áá¶ááááºážá
á¡ááá®áá±ážááŸááºážááᯠá ááœáá·áºáá±á¬á¡áá« áááºáááºá¡áá±á«áºáá±á¬áá·áºááœáẠáá áºáá¯áááºážáá±á¬ ááá±á¬áá»ááºááá¯ááºážáá áºáá¯ááᯠáááááŒá¯áááá±áááºá á€áááºááŸá¬ ááá±á¬áá»ááºáá áºáááºá á¡ááŒá áºááŒá áºáááºá ááá±á¬áá»ááºáá áºáá¯ááᯠá áááºáá±á¬á¡áá«á áá¬áá®ááá±á¬áá»ááºáá áºáá¯ááᯠáááºáá®ážáááºá áááºááááºáááºááŸá¯á áá áºá¡áá±á«áº áá°áááºááá·áº áááºážááŒá±á¬ááºážááᯠáááºáá®ážáááºá ááá±á¬áá»ááºááᯠááá·áºá¡ááœáẠá¡áááºááŒá±ááá·áºáá±áá¬ááá¯á· á¡áá»áááºáááœá±ážááœáŸá±á·ááá¯ááºáááºá
ááá±á¬áá»ááºá á¡ááááááºááœááºáá»ááºááŸá¬ ááá¯ááºá áá áºá¡ááœááºáž ááŒá áºáá±á«áºááá¯ážáááºááŸá¯áá»á¬ážááᯠááááºážáááºážáááºááŸáá·áº áááºážááá¯á·á¡á¬áž áá¬ážááŸááºážááááºážáá»á¯ááºááŸá¯á áá áºáá»á¬ážááŸáá áºááá·áº áááºáá°ááŒá¯ááŒááºážá CI ááœáẠscript áá»á¬ážááœáá·áºááŒááºážá ááŒááºáááºáá¯á¶ážáááºááŒááºáž á¡ááŒá±á¬ááºážá¡áá²áá»á¬áž á áááºááá¯á·ááᯠáá¯ááºáá±á¬ááºááá¯ááºááŒááºážááŒá áºáááºá
ááááºážááŸááºáá»á¬áž
Variable áá»á¬ážááẠapplication áá
áºáá¯á á¡ááá ááá¹ááá¬ážáá»á¬ážáá²á០áá
áºáá¯ááŒá
áºáááºá TestMace áá²á·ááá¯á·áá±á¬ áááááá¬áá»á¬ážááŸáá·áº á¡áá¯ááºáá¯ááºáá±á¬ áá°áá»á¬ážááẠáá»áœááºá¯ááºááá¯á·ááŒá±á¬áá±ááá·áºá¡áá¬ááᯠá
áááºáá°ážááŸáááŒá®ážáá¬ážááŒá
áºáá±áááºá ááá¯á·ááŒá±á¬áá·áº variable áá»á¬ážááẠáá¯á¶áá±áá¬ááᯠááááºážáááºážáááºááŸáá·áº node áá»á¬ážááŒá¬áž áááºááœááºááẠáááºážáááºážáá
áºáá¯ááŒá
áºáááºá á¥ááá¬á¡á¬ážááŒáá·áº analogue áá»á¬ážááẠPostman ááá¯á·ááá¯áẠInsomnia ááœáẠáááºáááºážáá»ááºááŒá±á¬ááºážáá²ááŸá¯áá»á¬ážááŒá
áºáááºá ááá¯á·áá±á¬áºá áá»áœááºá¯ááºááá¯á·ááẠááá¯ááá¯á áá±á«ááºážá
ááºááᯠáá»á²á·ááœááºáá²á·áá«áááºá TestMace ááœááºá variable áá»á¬ážááᯠnode á¡ááá·áºááœáẠáááºááŸááºááá¯ááºáááºá áá
áºáá¯áá¯á ááá¯ážáá±ážáá»á¬ážá០ááááºážááŸááºáá»á¬ážááᯠá¡ááœá±áááºáá¶ááẠááá¹ááá¬ážáá
áºáá¯áááºáž ááŸáááŒá®áž áá¬ážá
ááºááŒá±ážáááºááœáẠáááºáá±áá±á¬ ááááºážááŸááºáá»á¬ážááŸááááºá Built-in variable á¡áá»á¬ážá¡ááŒá¬ážááŸáááá·áºá¡ááŒáẠbuilt-in variable áá»á¬ážáá¡áááºáá»á¬ážáááºáááºáž á
áááºáááºá $
. á€ááœáẠáááºážááá¯á·áá²á០á¡áá»áá¯á·áááº-
$prevStep
- áááẠnode á variable áá»á¬ážááá¯á· ááá·áºááºáá»áááºáá«á$nextStep
â áá±á¬áẠnode á variable áá»á¬ážááá¯á· ááá·áºááº$parent
- ááá¯ážáá±ážááœá±á¡ááœáẠá¡áá°áá°áá«áá²á$response
- áá¬áá¬ááŸáá¯á¶á·ááŒááºááŸá¯$env
- áááºááŸááááºáááºážáá»ááºááŒá±á¬ááºážáá²ááŸá¯áá»á¬áž$dynamicVar
- script ááá¯á·ááá¯áẠquery execute áá¯ááºáá±á ááºá¡ááœááºáž áááºáá®ážáá¬ážáá±á¬ dynamic variable áá»á¬áž
$env
- á€á¡áá¬áá»á¬ážááẠáááŸááááŒá
áºááá¯á¡ááºáá±á¬ áá¬ááẠProject node á¡ááá·áº variable áá»á¬ážááŒá
áºáá±á¬áºáááºážá ááœá±ážáá»ááºáá¬ážáá±á¬ áááºáááºážáá»ááºáá±á«áºáá°áááºá Environment variables áá»á¬áž ááŒá±á¬ááºážáá²áá«áááºá
variable ááŸáááá·áºáááºáá±á¬ááºáááºá ${variable_name}
ááááºážááŸááºáá
áºáá¯ááááºááá¯ážááẠá¡ááŒá¬ážááááºážááŸááºáá
áºáᯠááá¯á·ááá¯áẠá
áá¬ážáááºáá
áºáá¯áá¯á¶ážááẠááŒá
áºááá¯ááºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá url variable ááẠexpression áá²á·ááá¯á·ááŒá
áºááá¯ááºáááºá
http://${host}:${port}/${endpoint}
.
áá®ážááŒá¬ážá¡á¬ážááŒáá·áºá script ááá¯áá¯ááºáá±á¬ááºáá±á
ááºá¡ááœááºáž variable áá»á¬ážáááºááŸááºááŒááºážáááŒá
áºááá¯ááºááŒá±ááá¯áááááŒá¯ááá·áºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá á¡á±á¬ááºááŒááºá
áœá¬áááºáá±á¬ááºááŒá®ážáá±á¬áẠáá¬áá¬ááŸáá¬áá±á¬ ááœáá·áºááŒá¯áá»ááºáá±áᬠ(ááá¯áááºáá
áºáᯠááá¯á·ááá¯áẠáá±á«ááºážá
á®ážáá
áºáá¯áá¯á¶áž) ááᯠááááºážáááºážááẠááá¯á¡ááºáá«áááºá TestMace ááẠááá·áºá¡á¬áž ááá¯ážáá±ážáá®áááºáá»á¬ážáá²á០áá
áºáá¯á dynamic variable áá»á¬ážá¡ááŒá
ẠááááºážáááºážááẠááœáá·áºááŒá¯áááºá ááŸáááŒá®ážáá¬áž "static" variable áá»á¬ážááŸáá·áº ááá¯ááºááááŒááºážááᯠááŸá±á¬ááºááŸá¬ážáááºá¡ááœááºá dynamic variable áá»á¬ážááᯠáá®ážááŒá¬áž object áá
áºáá¯ááœáẠáá¬ážááŸáááẠ$dynamicVar
.
áá¬ááºáááºážáá»á¬áž
á¡áááºáá±á¬áºááŒáá« á¡ááºá¹áá«áááºáá»á¬ážá¡á¬ážáá¯á¶ážááᯠá¡áá¯á¶ážááŒá¯á áááºááẠá á¯á¶á ááºážááŸá¯ script áá áºáá¯áá¯á¶ážááᯠáá¯ááºáá±á¬ááºááá¯ááºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá entity áá áºáá¯áááºáá®ážááŒááºáž -> entity áá áºáá¯á¡á¬áž querying -> entity áá áºáá¯ááᯠáá»ááºááŒááºážá á¥ááá¬á¡á¬ážááŒáá·áºá á€ááá á¹á ááœááºá áááºááẠRequestStep node á¡áá»á¬ážá¡ááŒá¬ážááᯠá¡á¯ááºá á¯ááœá²á·ááẠFolder node ááá¯áá¯á¶ážááá¯ááºáááºá
á¡ááá¯á¡áá»á±á¬ááºááŒáá·áºá áœááºááŒááºážááŸáá·áº á áá¬ážáááºááᯠá¡áá¬ážáá±ážáá±á¬áºááŒááŒááºážá
ááááºážááŸááºáá»á¬áž (áá¬áá) ááŒáá·áº á¡áááºááŒá±áá±á¬ á¡áá¯ááºá¡ááœáẠá¡ááá¯á¡áá»á±á¬áẠááŒáá·áºááœááºážááẠááá¯á¡ááºáá«áááºá ááá¯á·á¡ááŒááºá áá®ážááŒá¬ážááááºážááŸááºáá áºáá¯ááŸáá·áº áá®áá»áŸáááºááá¯á·ááᯠááŸááºážáááºážááẠááá¯ááá¯ááœááºáá°á á¡áááºááŒá±á á±áááºá¡ááœáẠá áá¬ážáááºáá áºáá¯ááááºááá¯ážááᯠáá®ážáá±á¬ááºážááá¯ážááŒááŒááºážááŒá áºáááºá á¡ááŒáááºáá áºáá¬ááŒá¬ážááá¬ááẠáá áºááŒáááºááŒááºááá¬á ááá¯áá±á¬ááºážáá«áááºá
á¡ááá¯á¡áá»á±á¬ááºááŒáá·áºá áœááºááŒááºážá¡á¬áž ááááºážááŸááºáá»á¬ážá¡ááœááºáá¬ááá á¥ááá¬á áá±á«ááºážá á®ážáá»á¬ážá¡ááœááºá á¡áá»áá¯á·áá±á¬áá±á«ááºážá á®ážáá»á¬ážááááºááá¯ážáá»á¬áž (á¥ááá¬á á¡ááŒá±á¬ááºážá¡áá¬-á¡áá»áá¯ážá¡á á¬ážáá±á«ááºážá á®ážá¡ááœáẠá¡ááá¯á¡áá»á±á¬ááºááŒáá·áºá áœááºááŒááºáž)á áááá¯ááá¯áá±á¬áá»á¬ážááŸáá·áº á¡ááŒá¬ážá¡áá¬áá»á¬ážá áœá¬ááᯠáá¯ááºáá±á¬ááºáááºááá¯áááºáž áááááŒá¯ááá·áºáááºá áá»áŸá±á¬ááºááœáŸá¬ááŒá®ážááœá¬ážáá¬áááºááŸáá·áºá¡áá»áŸ á á¬áááºážááᯠá¡áááºáááŒáẠá¡ááºááááºáá¯ááºáá¬ážáááºá
ááŒááºáá¯ááº/ááŒááºáá¯ááºáá«á
á¡ááŒá±á¬ááºážá¡áá²áá»á¬ážááᯠáá±á¬ááºáá¯ááºááŒááºáž/ááŒááºáááºáá¯ááºáá±á¬ááºááŒááºážááẠá¡ááœááºá¡áááºááŒá±ááá·áºá¡áá¬ááŒá áºáá±á¬áºáááºáž á¡áá»áá¯á·áá±á¬á¡ááŒá±á¬ááºážááŒáá»ááºááŒá±á¬áá·áº áááºážááᯠáá±áá¬ááá¯ááºážááœáẠá¡áá±á¬ááºá¡áááºááá±á¬áºáá« (ááŸáá·áº APIs áá»á¬ážááŸáá·áº áá¯ááºáá±á¬ááºááá·áºáááááá¬áá»á¬ážááẠáá»áœááºážáá»ááºááá¯ááºáá«)á ááá¯á·áá±á¬áº áá»áœááºá¯ááºááá¯á·ááẠááá¯á¡áá¬áá»á¬ážáá²á០áá áºáŠážááá¯ááºáá«!) áá»áœááºá¯ááºááá¯á·ááẠááá±á¬áá»ááºáá áºáá¯áá¯á¶ážááᯠááŒááºáá»ááºááŒááºáž/ááŒááºáá¯ááºááŒááºážáá»á¬ážááᯠáá¯ááºáá±á¬ááºáá²á·ááŒá®ážá áááºážááẠáááá»áá±á¬ node áá áºáá¯ááᯠáááºážááŒááºáá¯á¶áá¬áá áááºážá áááºáá®ážááŸá¯á áá»ááºááŸá¯á ááŸá¯ááºááŸá¬ážááŸá¯ á áááºááŒáá·áº ááŒááºáá»ááºááá¯ááºá á±áááºááŒá áºáááºá á¡áá±ážááŒá®ážáá±á¬ áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááẠá¡áááºááŒá¯áá»áẠááá¯á¡ááºáááºá
á ááºážáááºááŸá¯áá»á¬ážáááºáá®ážááŒááºážá
Assertion node ááẠá ááºážáááºááŸá¯áá»á¬ážááᯠáááºáá®ážááẠáá¬áááºááŸááááºá á¡áááá¡ááºá¹áá«áááºáá»á¬ážáá²ááŸáá áºáá¯ááŸá¬ built-in áááºážááŒááºáá°áá»á¬áž á¡áá¯á¶ážááŒá¯á áááá¯ááááºááááºáá² á ááºážáááºááŸá¯áá»á¬ážááᯠáááºáá®ážááá¯ááºááŒááºážááŒá áºáááºá
Assertion node ááœáẠá¡áááºááŒá¯áá»ááºá¡á á¯áá áºáᯠáá«áááºáááºá á¡ááá¯ááºá¡áá¬ááŒá±á¬ááá¯ááŸá¯áá áºáá¯á á®ááœáẠáááºážáááá¯ááºááá¯ááºá¡áá»áá¯ážá¡á á¬áž ááŸáááŒá®áž ááá¯á¡áá»áááºááœáẠá¡ááá¯ááºá¡áá¬ááŒá±á¬ááá¯ááŸá¯á¡áá»áá¯ážá¡á á¬ážáá»á¬ážá áœá¬ááŸááááºá
-
Compare values ââ- ááá¯ážááá¯ážáááºááá¯áž á áᯠááŸáá¯ááºážááŸááºáá«á ááŸáá¯ááºážááŸááºá¡á±á¬áºááá±áá¬áá»á¬ážá áœá¬ááŸááááº- áá®á ááá®á ááá¯ááŒá®ážá ááŒá®ážáááºááŒá®áž ááá¯á·ááá¯áẠáá®á áááºáááºá áááºááẠááá¯á·ááá¯áẠáá®áá»áŸáááºá
-
áááºááá¯ážáá«áááºááẠ- string áá áºáá¯ááŸá á á¬ááŒá±á¬ááºážááœá²áá áºáá¯á ááŒá áºáá»ááºááŸá¯ááᯠá á áºáá±ážáááºá
-
XPath - XML ââááŸá ááœá±ážáá»ááºááŸá¯ááœáẠá¡áá»áá¯á·áá±á¬áááºááá¯ážáá»á¬áž áá«áááºááŒá±á¬ááºáž á á áºáá±ážáááºá
-
JavaScript assertion ááẠá¡á±á¬ááºááŒááºááŸá¯á¡áá±á«áº ááŸááºáááºááŒá®áž áá»ááŸá¯á¶ážááŸá¯ááœáẠá¡ááŸá¬ážááᯠááŒááºáá±ážááá·áº áááá¬ážáá±á¬ javascript script áá áºáá¯ááŒá áºáááºá
áá±á¬ááºáá¯á¶ážáá áºáá¯ááẠá¡áá¯á¶ážááŒá¯áá°áá¶á០áááá¯ááááºáá±ážááœá²ááŒááºážááá¯ááºáᬠáá»áœááºážáá»ááºááŸá¯áá»á¬ážáᬠááá¯á¡ááºááŒá±á¬ááºáž áááááŒá¯áááááºá á¡ááŒá¬ážá¡áááºááŒá¯áá»áẠ3 áá¯ááẠgraphical interface ááᯠá¡áá¯á¶ážááŒá¯á áááºáá®ážáá¬ážáááºá á¥ááá¬á¡á¬ážááŒáá·áºá á€ááœááºá ááŸáá¯ááºážááŸááºáááºááá¯ážáá»á¬ážááŒá±á¬ááá¯áá»ááºááᯠáááºáá®ážáááºá¡ááœáẠááá¯ááºáá¬áá±á¬á·ááºááẠáááºááá·áºá¡áá¬ááŒá áºáááº-
ááááºáá¯áá·áºáá±á«áºááŸá áá±áá²áá¯áá·áºááẠáá¯á¶á·ááŒááºááŸá¯áá»á¬ážá០á¡ááá¯ááºá¡áá¬áááºáá®ážááŸá¯ááŒá áºááŒá®áž áá áºáá»ááºááŒáá·áºááá¯ááºáá«á
ááá¯á·áá±á¬áºá ááá¯ááá¯á·áá±á¬ á¡ááá¯ááºá¡áᬠááá·áºáááºáá»ááºáá»á¬áž ááŸááááºá áááºážááᯠáá»á±á¬áºááœáŸá¬ážááẠjavascript assertion ááᯠáááºá¡áá¯á¶ážááŒá¯ááá¯áá±áááºá á€áá±áá¬ááœáẠTestMace ááẠá¡ááá¯á¡áá»á±á¬ááºááŒáá·áºááœááºážááŒááºážá á¡áá¬ážá¡ááá¯á¡áá¬ážáá±ážáá±á¬áºááŒááŒááºážááŸáá·áº static ááœá²ááŒááºážá áááºááŒá¬ááŒááºážááá¯á·ááá¯ááẠáááºáá±á¬áá·áºáááºáá¬ááŸááá±á¬ áááºáááºážáá»ááºááᯠáá±ážáá«áááºá
API áá±á¬áºááŒáá»ááº
TestMace ááẠááá·áºá¡á¬áž API ááᯠá¡áá¯á¶ážááŒá¯áááºáá¬áá áááºážááᯠááŸááºáááºážáááºáááºáááºáž ááœáá·áºááŒá¯áá«áááºá ááá¯á·á¡ááŒááºá áá±á¬áºááŒáá»ááºááá¯ááºááá¯ááºááœááºáááºáž á¡áááºá¡á±á¬ááºááœá²á·á ááºážáá¯á¶áá«ááŸáááŒá®áž áá»ááºááá±á¬áá»ááºáá»á¬ážááŸáá·áº ááá¯ááºáá®ááŸá¯ááŸááááºá ááá¯á·á¡ááŒááºá Swagger 2.0 / OpenAPI 3.0 áá±á¬áºáááºáá»á¬ážá០API áá±á¬áºááŒáá»ááºáá»á¬ážááᯠáá±á¬áá±á¬ááẠáááºááœááºážááá¯ááºáááºá áá±á¬áºááŒáá»ááºááá¯ááºááá¯ááºá á¡áá±ážáá»áááºáá±áá¯á¶áá»áŸáááá² áá»ááºááŸááá±á¬ ááá±á¬áá»ááºáá»á¬ážááŸáá·áº áá®ážáááºá áœá¬ áá±á«ááºážá ááºáá¬ážáá«áááºá á¡áá°ážáááŒáá·áºá URLs áá»á¬ážá á¡ááá¯á¡áá»á±á¬áẠááŒáá·áºá áœááºááŒááºážá HTTP áá±á«ááºážá á®ážáá»á¬ážá áá±ážááŒááºážááŸá¯ ááá·áºáááºáá±á¬ááºáá»á¬áž á áááºááá¯á·ááᯠáááŸáááá¯ááºááŒá®ážá áá±á¬ááºááœáẠáá»áœááºá¯ááºááá¯á·ááẠá ááºážáááºááŸá¯áá»á¬ážááᯠááá·áºááœááºážááẠá á®á ááºáá¬ážáá«áááºá API áá±á¬áºááŒáá»ááºááŸáá·áº áá¯á¶á·ááŒááºááŸá¯á¡á¬áž ááá¯ááºáá¬áááºá
áá»áŸáá±ááŒááºáž á¡ááŸááºá¡áá¬áž
ááŒá áºáááº- áááºááẠááŒá¿áá¬ááŸááá±á¬ áá±á¬ááºážááá¯áá»ááºáá áºáᯠááá¯á·ááá¯áẠáá¯ááºáá±á¬áºááá¯ááºáááºáá áºáŠážááŸáá·áº áá¬ááºááœáŸááºážáá áºáá¯áá¯á¶ážááá¯ááẠáá»áŸáá±ááá¯ááẠááá¯á·ááá¯áẠáááºážááᯠáá»áœááºááœááºážáá»ááºáá áºáá¯ááá¯á· ááá¯ážááá¯ážááŸááºážááŸááºáž áá°ážááœá²áááºááŒááá¯áá«áááºá TestMace ááẠá€ááá á¹á áááºááá¯áááºáž á¡áá»á¯á¶ážáááºáááº- á¡ááá®áá±ážááŸááºážááẠááá·áºá¡á¬áž áááºááá·áº node ááŸáá·áºáááᯠURL áá áºáá¯ááŸá á¡áááºááœá²áá áºáá¯ááá¯ááẠá á®á á¥áºááá¯ááºá á±áá«áááºá Copy-paste áá¯ááºááŒá®áž áá±á¬ááºážááá¯áá»ááºááᯠá¡ááŒá¬ážá áẠááá¯á·ááá¯áẠááá±á¬áá»ááºááá¯á· á¡ááœááºááá° ááœáŸá²ááŒá±á¬ááºážááá¯ááºáá«áááºá
áá°áá¬ážáááºááá¯ááºáá±á¬ ááá±á¬áá»ááºááá¯ááŸá±á¬ááºááŸá¯áá¯á¶á á¶
áá±á¬áá±á¬áááºááœááºá node áá
áºáá¯á
á®ááᯠyml extension (Assertion node áá²á·ááá¯á·áááºááŒá
áºáááº)á ááá¯á·ááá¯áẠnode áá¡áááºááŸáá·áº áááºážááŸá index.yml ááá¯ááºááŒáá·áº áá®ážááŒá¬ážááá¯ááºáá
áºáá¯ááœáẠááááºážáááºážáá¬ážáááºá
á¥ááá¬á¡á¬ážááŒáá·áºá á€áááºááŸá¬ á¡áááºáá±á¬áºááŒáá« ááŒááºáááºáá¯á¶ážáááºááŸá¯ááœáẠáá»áœááºá¯ááºááá¯á·ááŒá¯áá¯ááºáá²á·áá±á¬ áá±á¬ááºážááá¯áá»ááºááá¯ááºááŸáá·áº áá¯á¶á
á¶áá°áááº-
index.yml
children: []
variables: {}
type: RequestStep
assignVariables: []
requestData:
request:
method: GET
url: 'https://next.json-generator.com/api/json/get/NJv-NT-U8'
headers: []
disabledInheritedHeaders: []
params: []
body:
type: Json
jsonBody: ''
xmlBody: ''
textBody: ''
formData: []
file: ''
formURLEncoded: []
strictSSL: Inherit
authData:
type: inherit
name: Scratch 1
áááºážááŒááºáá²á·á¡ááá¯ááºáž á¡áá¬á¡á¬ážáá¯á¶ážá á¡áááºážááŸááºážáááºá ááá¹áááŸááá«á á€áá±á¬áºáááºááᯠá¡ááœááºááá° ááá¯ááºááá¯ááºáááºážááŒááºááá¯ááºáá«áááºá
ááá¯ááºá áá áºááŸá ááá¯ááºááœá²áá»á¬ážá á¡áááºáááºážá¡ááá·áºááẠááá±á¬áá»ááºááŸá node áá»á¬ážá á¡áááºáááºážá¡ááá·áºááᯠáá¯á¶ážáááŒááºáá¯ááºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá áá²á·ááá¯á·áá±á¬ áá¬ááºááœáŸááºážáá áºáá¯á
ááá¯ááºá áá áºá¡á¬áž á¡á±á¬ááºáá«ááœá²á·á ááºážáá¯á¶ááá¯á· ááŒá±áá¯á¶ááœáŸááºážáá« (ááá¯ááºááœá²ááᯠá¡áááºáááºážá¡ááá·áºááá¯áᬠááŒááá¬ážáá±á¬áºáááºáž á¡ááŸá áºáá¬áááŸá¬ ááŸááºážáááºážáá«áááº)
áááºážááẠááá±á¬áá»ááºááŒááºáááºáá¯á¶ážáááºááŒááºážáá¯ááºáááºážá ááºááᯠááá¯ááá¯ááœááºáá°á á±áááºá
Postman ááŸáááºááœááºážáááºá
á¡áááºáá±á¬áºááŒáá«á¡á¬ážáá¯á¶ážááá¯áááºááŒá®ážáá±á¬ááºá á¡áá»áá¯á·áá±á¬á¡áá¯á¶ážááŒá¯áá°áá»á¬ážááẠáá¯ááºáá¯ááºá¡áá áºáá áºáᯠ(ááá¯á·) (áá«ááŸááá¯ááºáá¬áá±á¬á·ááá¯ááºáá«áá°áž) á ááºážáá¯á¶ážááŒáá·áºáá»ááºáá«áááá·áºáááºá ááá¯á·áá±á¬áºáááºáž áá°áá®áá±á¬ Postman ááœáẠááá¯ážáááºááŸá¯á¡áá»á¬ážá¡ááŒá¬ážááŒáá·áº ááœáŸá±á·ááŒá±á¬ááºážááŒááºážááᯠáááºááá·áºááá¯ááºáááºá ááá¯ááá¯á·áá±á¬ááá á¹á áá»á¬ážááœááºá TestMace ááẠPostman ááŸá á¯áá±á¬ááºážááŸá¯áá»á¬ážááá¯áááºááœááºážááŒááºážááá¯áá¶á·ááá¯ážáááºá áá±á¬áá±á¬áááºááœáẠá ááºážáááºááŸá¯áááŸááá² áááºááœááºážááŸá¯áá»á¬ážááᯠáá¶á·ááá¯ážáá±ážáá¬ážááŒá®ážááŒá áºáá±á¬áºáááºáž áá±á¬ááºááœáẠáááºážááá¯á·ááᯠáá¶á·ááá¯ážáá±ážááẠáá»áœááºá¯ááºááá¯á· áááŒááºážááá¯áá«á
á¡á á®á¡á ááºáá»á¬áž
áá®á¡áá»ááºá¡áá áááºáá°ážáá°áá±á¬áºáá±á¬áºáá»á¬ážáá»á¬ážá áá»áœááºáá±á¬áºááá¯á·áá²á· áá¯ááºáá¯ááºááᯠááá±á¬áá»ááŒáááºááá¯á· áá»áŸá±á¬áºááá·áºáá«áááºá ááá¯á·áá±á¬áºá áá«á¡á¬ážáá¯á¶ážááá¯ááºáá«! áá¯ááºáá¯ááºááœáẠá¡áá¯ááºááẠá¡ááŒáá·áºá¡á áá¯ááºáá±á¬ááºáá±ááŒá®áž á€áááºááŸá¬ áááŒá¬áá® ááá·áºááœááºážááẠá á®á ááºáá¬ážááá·áº á¡ááºá¹áá«áááºá¡áá»áá¯á·ááŒá áºáááºá
Cloud áááºáá°ááŒá¯ááŒááºážá
áá±á¬ááºážááá¯ááŸá¯á¡áá»á¬ážáá¯á¶ážá¡ááºá¹áá«áááºáá»á¬ážáá²ááŸáá áºáá¯á áá±á¬áá±á¬áááºááœááºá áá»áœááºá¯ááºááá¯á·ááẠá€ááá¯ááŸá±á¬ááºááŸá¯á¡áá»áá¯ážá¡á á¬ážá¡ááœáẠáá±á¬áºáááºááᯠááá¯ááá¯á¡áááºááŒá±á á±áááºá¡ááœáẠáááºáá°ááŒá¯ááŒááºážá¡ááœáẠáá¬ážááŸááºážááááºážáá»á¯ááºááŸá¯á áá áºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááẠá¡ááá¯ááŒá¯áá«áááºá ááá¯á·áá±á¬áºá á€áá¯ááºáááºážá¡ááœá¬ážá¡áá¬ááẠáá°ááá¯ááºážá¡ááœáẠáááá·áºáá»á±á¬áºáá«á ááá¯á·ááŒá±á¬áá·áº áá»áœááºá¯ááºááá¯á·ááá¬áá¬áá»á¬ážááŸáá áºááá·áº áá°á¡áá»á¬ážááŸáá·áºáááºážááŸá®ážáá±á¬ áááºáá°ááŒá¯ááŒááºáž ááá¹ááá¬ážáá áºáá¯ááᯠááá·áºááœááºážááẠáá»áœááºá¯ááºááá¯á· á á®á ááºáá¬ážáá«áááºá
CLI
á¡áááºááœááºáá±á¬áºááŒáá²á·ááá·áºá¡ááá¯ááºáž IDE á¡ááá·áºáá¯ááºáá¯ááºáá»á¬ážááẠááŸáááŒá®ážáá¬ážá¡ááºááºáá®áá±ážááŸááºážáá»á¬áž ááá¯á·ááá¯áẠá¡áá¯ááºá¡ááœá¬ážá¡áá¬áá»á¬ážááŸáá·áº áá±á«ááºážá ááºááŸá¯á¡áá»áá¯ážá¡á á¬ážá¡á¬ážáá¯á¶ážááá«áá² áá¯ááºáá±á¬ááºááááá«á CLI ááẠTestMace ááœááºáá±ážáá¬ážáá±á¬ á ááºážáááºááŸá¯áá»á¬ážááᯠá ááºáááºáááŒáẠáá±á«ááºážá ááºááŸá¯áá¯ááºáááºážá ááºááœáẠáá±á«ááºážá ááºááẠááá¯á¡ááºááá·áºá¡áá¬ááŒá áºáááºá CLI ááœáẠá¡áá¯ááºááẠá¡ááŒáá·áºá¡áááŒá áºáááºá á¡á á±á¬ááá¯ááºážáá¬ážááŸááºážáá»á¬ážááẠááá¯ážááŸááºážáá±á¬ ááœááºááá¯ážááºá¡á á®áááºáá¶á á¬ááŒáá·áº ááá±á¬áá»ááºááᯠá áááºáá«áááºá á¡áá¬áááºááœáẠáá»áœááºá¯ááºááá¯á·ááẠJUnit áá±á¬áºáááºááŒáá·áº á¡á á®áááºáá¶á á¬á¡ááœááºááᯠááá·áºááœááºážááẠá á®á ááºáá¬ážáááºá
ááááºá¡ááºá áá áº
áá»áœááºá¯ááºááá¯á·á tool áá áœááºážá¡á¬ážá¡á¬ážáá¯á¶ážááŸááá±á¬áºáááºážá ááŒá±ááŸááºážáá»ááºááá¯á¡ááºááá·áºááá á¹á áá»á¬ážááœáẠá¡ááá·áºá¡áááºáááŸááá±á á¡áá°ážáááŒáá·áº ááá±á¬áá»ááºáá áºáá¯á¡ááœáẠáá®ážááá·áºáá¯ááºáá±á¬ááºáááá·áº á¡áá¯ááºáá»á¬ážááŸááááºá ááá¯á·ááŒá±á¬áá·áº á¡áá¬áááºááœáẠááááºá¡ááºáá»á¬áž áá±á¬áºáá±á¬ááºáááºá¡ááœáẠSDK áá áºáá¯ááᯠááá·áºááœááºážááẠáá»áœááºá¯ááºááá¯á· á á®á ááºáá¬ážááŒá®áž developer áá áºáŠážá á®ááẠáááºážááá¯á·á á áááºááŒáá¯ááºáá¯ááºáá±á¬ááºááá¯ááºá áœááºážááᯠááá·áºááœááºážááá¯ááºáááºááŒá áºáááºá
node á¡áá»áá¯ážá¡á á¬ážáá»á¬ážá á¡ááœá¬á¡áá±ážááᯠáá»á²á·ááœááºááŒááºážá
ဠnodes á¡á á¯á¡áá±ážááẠá¡áá¯á¶ážááŒá¯áá°ááá¯á¡ááºáá±á¬ ááá á¹á á¡á¬ážáá¯á¶ážááᯠá¡áá»á¯á¶ážááááºáá«á áá±á«ááºážááá·áºááẠá á®á ááºáá¬ážáá±á¬ áá¶áá«ááºáá»á¬áž
- Script node - js ááŸáá·áº áááºááá¯ááºáᬠAPI ááᯠá¡áá¯á¶ážááŒá¯á áá±áá¬áá»á¬ážááᯠááŒá±á¬ááºážáá²ááŒá®áž áá±áá¬áá»áá±ážáááºá ဠnode á¡áá»áá¯ážá¡á á¬ážááᯠá¡áá¯á¶ážááŒá¯á Postman ááœáẠááŒáá¯áááºáá±á¬ááºážááá¯ááŸá¯ ááŸáá·áº áá±á¬ááºááá¯ááºážáá±á¬ááºážááá¯ááŸá¯ script áá»á¬ážáá²á·ááá¯á· á¡áá¬áá»á¬ážááᯠáááºáá¯ááºáá±á¬ááºááá¯ááºáááºá
- GraphQL node - graphql áá¶á·ááá¯ážááŸá¯
- á
áááºááŒáá¯ááºá¡áááºááŒá¯áá»ááºá¡ááŸááº- ááá±á¬áá»ááºááŸá ááŸáááŒá®ážáá¬ážá¡áááºááŒá¯áá»ááºá¡á
á¯á¶ááᯠáá»á²á·ááœááºááœáá·áºááŒá¯áá«áááºá
áá¯á¶ážá á¶á¡ááá¯ááºážá á€áááºááŸá¬ áá±á¬ááºáá¯á¶ážá á¬áááºážááá¯ááºáá«á á¡ááŒá¬ážá¡áá¬áá»á¬ážáá²ááœááºá áááºá á¡ááŒá¶ááŒá¯áá»ááºááŒá±á¬áá·áº áááºážááᯠá¡áááºáááŒáẠá¡ááºááááºáá¯ááºáá«áááºá
á¡ááŒá²áá±ážáá±á·ááŸááá±á¬áá±ážááœááºážáá»á¬áž
ááẠPostman áá²á· áááºááá¯ááœá¬ááŒá¬ážáá²á
- ááá±á¬áá»ááºá áá¯ááºáá±á¬ááºááá¯ááºá áœááºážááᯠá¡áá¯á¶ážááááºááá¯ááºá á±ááẠááœáá·áºááŒá¯áá±ážáá±á¬ node áá»á¬ážá ááá±á¬ááá¬áž
- áá¬ážááŸááºážááááºážáá»á¯ááºááŸá¯á áá áºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á áá¯ááºáá±á¬ááºááŸá¯ááᯠááá¯ážááŸááºážááœááºáá°á á±ááá·áº ááá¯ááºá áá áºááœáẠááááºážáááºážááŒááºážááŒáá·áº áá°áá¬ážáááºááá¯ááºáá±á¬ ááá±á¬áá»ááºáá±á¬áºáááº
- áááá¯ááááºáá±ážááœá²ááŒááºážáááŸááá² á ááºážáááºááŸá¯áá»á¬áž áááºáá®ážááá¯ááºááŒááºážááŸáá·áº á ááºážáááºáááºážááŒááºááŸá¯ááœáẠááá¯ááá¯á¡ááá·áºááŒáá·áºáá±á¬ js áá¶á·ááá¯ážááŸá¯ (á¡ááá¯á¡áá»á±á¬áẠááŒáá·áºááœááºážááŒááºážá áááºááŒáááºááŸá¯ááœá²ááŒááºážá áááºááŒá¬ááŸá¯)
- á¡ááá·áºááŒáá·áº á¡ááá¯á¡áá»á±á¬ááºááŒáá·áºá áœááºááŒááºážááŸáá·áº ááááºážááŸááºáá»á¬ážá áááºááŸááááºááá¯ážááᯠáá®ážáá±á¬ááºážááá¯ážááŒááŒááºážá
áá«á open-source áá¯ááºáá¯ááºáá áºáá¯áá¬ážá
ááá¯ááºáá«á áá±á¬áá±á¬áááºááœáẠááááºážáááºážááŒá áºáá»á¬ážááᯠááááºáá¬ážáá±á¬áºáááºáž á¡áá¬áááºááœáẠá¡áááºážá¡ááŒá áºáá»á¬ážááᯠááœáá·áºááŸá áºááá¯ááºááŒá±ááᯠáá»áœááºá¯ááºááá¯á· á ááºážá á¬ážáá±áá«áááºá
áááºážáá¬ááœá±áá¯ááºáá±áá¬áá²á)
á¡ááá²á·áá¬ážááŸááºážááŸáá·áºá¡áá°á áá»áœááºá¯ááºááá¯á·ááẠáá¯ááºáá¯ááºá á¡ááá±ážáá¬ážááŸááºážááᯠáá¯ááºáá±ááẠá á®á ááºáá¬ážáááºá áááºážááœáẠá¡áááá¡á¬ážááŒáá·áº áá¬áá¬áááºááœáẠááá¯á¡ááºááá·áºá¡áá¬áá»á¬áž á¥ááá¬- áááºáá°ááŒá¯ááŒááºáž ááŒá áºáááºá
áá±á¬ááºáá»ááº
áá»áœááºá¯ááºááá¯á·áááá±á¬áá»ááºááẠáááºááŒáááºáá±á¬áá¯ááºááœáŸááºááŸá¯áá®ááá¯á· áá¯ááºáá»á¶áá»á±á¬áºááœáŸá¬ážáᬠááœá±á·áá»á¬ážáá±áááºá ááá¯á·áá±á¬áºá áá¯ááºáá¯ááºááá¯á¡áá¯á¶ážááŒá¯ááá¯ááºááŒá®ážááŒá áºá áá»áœááºá¯ááºááá¯á·áá¡á á±á¬ááá¯ááºážá¡áá¯á¶ážááŒá¯áá°áá»á¬ážáá¶á០á¡ááŒá¯ááá±á¬áá±á¬ááºáá±á¬áá¯á¶á·ááŒááºáá»ááºááẠá€á¡áá»ááºááᯠáááºáá±ááŒáá«áááºá á¡ááá¯ááºá¡áááºážááŸáá·áº á¡áá®ážáááºáá°ážáá±á«ááºážáá±á¬ááºááœááºááŸá¯áááŸááá² áááááá¬áá±á¬ááºážáá áºáá¯ááᯠáááºáá±á¬ááºááẠáááŒá áºááá¯ááºáá±á¬ááŒá±á¬áá·áº áá»áœááºá¯ááºááá¯á·ááẠáá¯á¶á·ááŒááºáá»ááºáá»á¬ážááᯠáááºááŒáœá áœá¬á á¯áá±á¬ááºážáá«áááºá áááºááẠáá»áœááºá¯ááºááá¯á·ááᯠá€áá±áá¬ááœáẠááŸá¬ááœá±á·ááá¯ááºáááº-
ááá·áºááá¹ááá»á¬ážááŸáá·áº á¡ááŒá¶ááŒá¯áá»ááºáá»á¬ážááᯠáá»áœááºá¯ááºááá¯á· á á±á¬áá·áºáá»áŸá±á¬áºáá±áá«áááºá
source: www.habr.com