±à¼ÍƼö: |
±¾ÎÄÖ÷Òª½éÉÜÈçºÎʹÓÃpostman×÷Ϊrest api×Ô¶¯»¯²âÊÔ¹¤¾ß£¬À´ÅŲéÎÊÌ⣬ϣÍû¶ÔÄúµÄѧϰÓÐËù°ïÖú¡£
±¾ÎÄÀ´×ÔÓÚSegmentFault£¬ÓÉAlice±à¼¡¢ÍƼö¡£ |
|
Ðò
дµÄapi¶àÁËÒÔºó»òÕß½ÓÊÖ±ðÈ˵ÄÏîĿ֮ºó£¬¶ÔapiµÄÔËάҲ»á±È½Ï¶à£¬ÌرðÊÇÔÚ²âÊÔ»·¾³£¬ÖÖÖÖÒòËØ»áµ¼Ö½ӿڳöÏÖ²»·ûºÏÔ¤ÆÚ£¬Õâ¸öʱºòµ±²úÆ·°¡¡¢²âÊÔ°¡£¬¶¼ÅܹýÀ´É§ÈÅÄãµÄʱºò£¬ÄãµÄµÚÒ»¸ö·´Ó¦ÊÇ×Ô¼ºÖ´ÐÐһϣ¬¿´ÊDz»ÊÇÕæµÄ½Ó¿ÚÓÐÎÊÌ⣬ȻºóÔÙ¾ßÌå·ÖÎö¡£
ͨ³£ÊÇÆ´½ÓºÃ½Ó¿ÚµØÖ·£¬¹¹ÔìºÃ²ÎÊý£¬È»ºóÇëÇóapi£¬¿´¿´·µ»Ø½á¹û¡£ÕâÀද×÷×ö¶àÁËÖ®ºóͨ³£±È½Ï·³ÈË£¬ÌرðÊÇ×îºó·¢ÏÖÊǽӿÚokµÄ¡£
¹¤¾ßÑ¡ÐÍ
Ñ¡Ðͱê×¼
Äܹ»ÅúÁ¿µ¼Èëswagger
Äܹ»×Ô¼º¹¹Ôì²âÊÔ½Ó¿Ú
ÄÜÅúÁ¿run
ÄÜÊä³öreport
×îºÃÄܹ»alert
ºòÑ¡¹¤¾ß
jmeter¡ª¡ªÍøÉÏÕÒÁËһȦ£¬Ê×ÏÈÈëÑÛµÄÊÇjmeter£¬µ«ÊÇÓÉÓÚ½çÃæ½çÃæÓеã´Ö²Ú£¬Ñ§Ï°³É±¾Óеã¸ß£¬¹ÊÔÝʱûÓп¼ÂÇ¡£
soupui¡ª¡ª¿´ÆðÀ´ÊÇÀÏÅÆµÄ¹¤¾ß£¬²»¹ýÓÉÓÚÃâ·Ñ°æ²»Ö§³Öµ¼³öreport£¬Ò²¾Í·ÅÆúÁË
dredd¡ª¡ªÕâ¸ö¿´ÆðÀ´²»´í£¬¿ÉÒÔÖ§³ÖswaggerµÄ£¬²»¹ý×Ô¼º´ÖÂÔÊÔһϣ¬Ã»Ö´Ðгɹ¦£¬Ò²¾ÍÏÈ·ÅÆúÁË
postman¡ª¡ªÕâ¸öÒÔǰ¾ÍÓÐ×°¹ý£¬Ö»ÊÇû·¢ÏÖÉîÍÚËüµÄ¹¦ÄÜ£¬ÏÖÔÚÒ»¿´£¬Í¦¼òµ¥µÄ£¬ÈÝÒ×ÉÏÊÖ£¬Ò²Ö§³Öswagger£¬È»ºó¾ÍÊÇËüÁË
postmanÏà¹ØÖªÊ¶
µ¼Èëswagger
Õâ¸ö¹¦ÄÜÊÇÎÒ×î¿´ÖØµÄ£¬×óÉϽÇÓиöimportµÄ°´Å¥£¬¿ÉÒÔÑ¡Ôñ"Import From Link"£¬ÊäÈë½Ó¿ÚµÄswagger
api docsµÄµØÖ·£¬±ÈÈ磺http://192.168.99.100£º8080/scm/v2/api-docs£¬È»ºóµ¼Èë¾Í¿ÉÒÔÁË¡£
ÉèÖÃcollection
±£´æÒ»¸öÇëÇóµÄʱºò£¬¿ÉÒÔÑ¡ÔñÒÑÓеÄcollection£¬»òÕßн¨Ò»¸ö¡£collection¿ÉÒÔ¶ÔµÈΪtest
suite¡£
ÉèÖÃtests
¶ÔÓÚÒªÅÜ×Ô¶¯»¯²âÊԵ쬱ØÐëÒªÉèÖÃtestsÕâÀïµÄ½Å±¾£¬²»È»¼´Ê¹run£¬Ò²Ã»ÓÐɶÒâÒå¡£×î¼òµ¥×î³£ÓõÄÁ½Ðнű¾ÈçÏ£º
tests["Status
code is 200"] = responseCode.code === 200;
tests['Response time is less than 500ms'] = responseTime
< 500; |
Ò»¸öÊǶÏÑÔhttpµÄ״̬Â룬һ¸öÊǶÏÑÔÏìӦʱ¼ä¡£
ÉèÖû·¾³±äÁ¿
Ëæ±ãÑ¡ÔñcollectionµÄÒ»¸öhttpÇëÇó£¬È»ºóµã»÷ÓÒ²àµÄÉèÖð´Å¥£¬Manage Environments£¬È»ºó¿ÉÒÔ¶¨Òå»·¾³±äÁ¿£¬¿ÉÒÔ¶¨Òådev¡¢prodÁ½Ì×£¬·Ö±ðÉèÖöÔÓ¦µÄ»·¾³µÄapiµÄhost£¬ÕâÑù¾Í²»ÓÃÖØ¸´ÉèÖÃapiÇëÇóÁË¡£ÔÚurlÖÐÓÃ{{varname}}À´ÒýÓñäÁ¿£¬¼ÙÉèvarname¾ÍÊÇÄãÉèÖõÄÒ»¸ö±äÁ¿Ãû¡£
Ö´ÐÐrunner
×óÉϽÇÓиörunnerͼ±ê£¬µãһϵ¯³öCOLLECTION RUNNER½çÃæ¡£ÔÚÕâÀï¾ÍÒª½øÐÐÅúÁ¿×Ô¶¯²âÊԵĵط½£¬Ñ¡Ôñenvironment£¬È»ºóÅÜһϡ£
newmanÃüÁîÐÐÖ´ÐÐ
µ¼³öÅäÖÃ
ÔÚcollectionÄÇÀexport£¬Ñ¡ÔñCollection V2£¬µ¼³öΪjson¡£Èç¹ûʹÓÃÁËenvironment£¬ÔòÐèÒªµ¼³ö¸ÃenvironmentµÄjsonÅäÖá£
°²×°newman
sudo npm install
-g newman |
²é¿´newman°æ±¾
ÃüÁîÐÐÖ´ÐÐ
newman run demo.postman_collection.json
--reporters cli,html --environment dev.postman_environment.json
--reporter-html-export result.html |
ÃüÁîÐнá¹ûÈçÏ£º
©°©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
©¦ ©¦ executed ©¦ failed ©¦
©À©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
©¦ iterations ©¦ 1 ©¦ 0 ©¦
©À©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
©¦ requests ©¦ 22 ©¦ 0 ©¦
©À©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
©¦ test-scripts ©¦ 22 ©¦ 0 ©¦
©À©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
©¦ prerequest-scripts ©¦ 0 ©¦ 0 ©¦
©À©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
©¦ assertions ©¦ 44 ©¦ 6 ©¦
©À©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
©¦ total run duration: 28s ©¦
©À©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
©¦ total data received: 312.29KB (approx) ©¦
©À©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
©¦ average response time: 1245ms ©¦
©¸©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤©¤
# failure detail 1. AssertionFai¡ Response time is less than
1000ms
at assertion:2 in test-script
inside "XXXX" of "app1" 2. AssertionFai¡ Response time is less than
1000ms
at assertion:2 in test-script
inside "XXXX" of "app2" 3. AssertionFai¡ Response time is less than
1000ms
at assertion:2 in test-script
inside "XXXX" of "app1"
4. AssertionFai¡ Response time is less than
1000ms
at assertion:2 in test-script
inside "XXXX" of "app3"
5. AssertionFai¡ Response time is less than
1000ms
at assertion:2 in test-script
inside "XXXX" of
"app2"
6. AssertionFai¡ Status code is 200
at assertion:1 in test-script
inside "XXXX" of "app1" |
ͬʱ»áÉú³Éresult.html±¨¸æ¡£
jenkins¼¯³É
¹¹½¨Ñ¡ÔñExecute Windows batch command¡ª¡ªÊäÈëÉÏÃæµÄÃüÁî¾Í¿ÉÒÔÁË
Publish JUnit test result report¡ª¡ªjenkinsÓиöPublish
JUnit test result report¿ÉÒÔÓÃÀ´½âÎöjunitµÄxml²âÊÔ±¨¸æ¡£ÒªÓÃÕâ¸öµÄ»°£¬ÃüÁîÐеÃÊä³öjunitµÄreport
newman run demo.postman_collection.json
--reporters cli,html,junit --environment dev.postman_environment.json
--reporter-html-export result.html --reporter-junit-export
junit-result.xml |
|