Your SlideShare is downloading. ×
0
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
jMeter101
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

jMeter101

1,404

Published on

How to using jMeter for Load Testing web application ?

How to using jMeter for Load Testing web application ?

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,404
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
67
Comments
0
Likes
3
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. jMeter 101 @somkiat-- สยามชํานาญกิจ --
  • 2. jMeter● เครืองมือช่วยทํา Load test และ วัดประสิทธิภาพการทํางานของ service ต่างๆ● เน ้นการทดสอบ Web application● Multi-Threading● พัฒนาด ้วยภาษา Java● ฟรี● Open source● http://jmeter.apache.org/
  • 3. ความสามารถอืนๆ ของ jMeter● สามารถทํา Unit testing ของส่วนต่างๆ ได ้ ○ JDBC ○ FTP ○ LDAP ○ Web service ○ JMS ○ Mail => SMTP, POP3, IMAP ○ HTTP, HTTPS ○ TPC
  • 4. สามารถทําอะไรก ับ jMeter ได้บาง ้● ใช ้สําหรับการทดสอบระบบ ○ Load testing ○ Performance testing ○ Availability testing ○ Functional testing● Monitor ระบบ ○ Database ○ Web server ○ FTP ○ ...
  • 5. การทํางานของ jMeter● จําลองกลุมของผู ้ใช ้งานระบบ ่● ส่ง request ไปยัง server● บันทึกผลการ return จาก server เพือแสดงประสิทธิภาพการทํางาน● แสดงผลด ้วยภาพ เช่น Graph เป็ นต ้น
  • 6. การทํางานของ jMeter สร้าง requestเริมต้น เพือส่งไปย ัง จบการทํางาน server jMeter Server แสดงผลการ ทําการรวบรวมข้อมูล ส่งข้อมูลกล ับมา ทํางาน เพือสรุปผลทางสถิต ิ jMeter บ ันทึกข้อมูล
  • 7. เริมต้นการใช้งาน● Download จาก http://jmeter.apache.org● Extract file● Go to folder /bin● Run jmeter.bat/.sh
  • 8. ผลการทํางาน
  • 9. องค์ประกอบของ jMeter● Test plan● Thread Group● Controller● Sampler● Listerner● Timmer● Assertion● Configuration● Pre-processor element● Post-processor element
  • 10. Test Plan● กําหนดลําดับการทํางานของ process ต่างๆ● ประกอบไปด ้วย ○ Thread Group ○ Controller ○ Listener ○ Timer ○ Assertion ○ Configuration
  • 11. Thread Group● จุดเริมต ้นการทํางานของแต่ละ Test Plan● ประกอบไปด ้วย ○ Controller ○ Sampler● ข ้อมูลทีต ้องกําหนด ○ Number of thread ○ Ramp-up period ○ Loop count
  • 12. Thread Group
  • 13. รายละเอียดของ Thread Group
  • 14. Configuration● ทําการกําหนดค่าเริมต ้นต่างๆ เช่น ○ HTTP Request Default ■ กําหนดค่าเริมต ้นของ HTTP Request เช่น url ของ server ■ ไม่ได ้ทําหน ้าทีสร ้าง Request ○ CSV Data Set Config ○ HTTP Cache Manager ○ HTTP Cookie Manager ○ HTTP Header Manager ○
  • 15. HTTP Request Default● เลือก Thread Group● click ขวา● เลือกเมนู ○ Add -> Config Element -> HTTP Request Default
  • 16. HTTP Request Default
  • 17. HTTP Request Default
  • 18. Sampler● ส่วนการทํางานจริงของ jMeter● สร ้าง Request ต่างๆ เพือให ้ได ้ผลทีต ้องการ● ตัวอย่างเช่น ○ HTTP Request ○ FTP Request ○ JDBC Request
  • 19. HTTP Request● กําหนดค่าต่างๆ ของ Request นันๆ ○ Path ○ Protocol ○ Encoding ○ HTTP Method ■ GET ■ POST ■ HEAD ■ PUT ○ Parameters
  • 20. HTTP Request● เลือก Thread Group● click ขวา● เลือกเมนู ○ Add -> Sampler -> HTTP Request
  • 21. HTTP Request
  • 22. HTTP Request
  • 23. Listener● ทําหน ้าทีบันทึกข ้อมูลของผลการทํางาน เช่น ข ้อมูลจาก HTTP Request ลง file● แสดงผลการทํางานในรูปแบบ vistualization● ตัวอย่าง ○ Graph Result ○ View Result in Table ○ Summary Report ○ Aggregate Graph ○ Aggregate Report
  • 24. Graph Result● แสดงผลการทํางานในรูปแบบ Graph● จะสร ้าง graph ในรูปแบบง่ายๆ● สามารถบันทึกลง file ทีต ้องการได ้● แสดงค่าต่างๆ ทาง สถิต ิ เช่น Average, Medianข้อควรระว ังไม่ควรใช ้งานในการทํา Load testing เพราะว่าใช ้งานCPU มากๆๆๆๆ
  • 25. Graph Result● เลือก Thread Group● click ขวา● เลือกเมนู ○ Add -> Listener -> Graph Result
  • 26. Graph Result
  • 27. Graph Result
  • 28. สงให้ทางาน ั ํ
  • 29. ผลการทํางานในรูปแบบ Graph Result
  • 30. ผลการทํางานในรูปแบบ Result in Table
  • 31. ผลการทํางานในรูปแบบ Aggregate graph
  • 32. TODO :: Google Test Plan● Step ○ Create Test Plan ○ Create Thread Group ○ Create HTTP Request Default ○ Create HTTP Request ○ Create Listener ( Report ) ○ Run ...
  • 33. TODO :: Search Google Test Plan● Step ○ Create Test Plan ○ Create Thread Group ○ Config Element ■ HTTP Cookie Manager ■ HTTP Header Manager ○ Create HTTP Request Default ○ Create HTTP Request ○ Create Listener ( Report ) ○ Run ...
  • 34. เฉลย● https://github.com/up1/jMeter101/ ○ Google.jmx
  • 35. การ import ข้อมูลจาก CSV file● เลือก Thread Group● click ขวา● เลือกเมนู ○ Add -> Config Element -> CSV Data Set Config
  • 36. การ import ข้อมูลจาก CSV file
  • 37. การ import ข้อมูลจาก CSV file
  • 38. การกําหนด parameter ต่างๆ● File name● File Encoding● Variable Names● Delimiter● Allow quote data● Share mode
  • 39. การ import ข้อมูลจาก CSV file
  • 40. ต ัวอย่าง CSV filebugday2013bugdefectincident
  • 41. ต ัวอย่าง CSV fileuser1,password1user2,password2user3,password3user4,password4user5,password5
  • 42. การอ้างถึง Variable จาก Data Set● ${variable_name}
  • 43. การอ้างถึง Variable จาก Data Set
  • 44. TODO :: Search Google + CSV● Step ○ Create Test Plan ○ Create Thread Group ○ Create Data set CSV ■ keyword.csv ○ Create config element => CSV ○ Create HTTP Request Default ○ Create HTTP Request ○ Create Listener ( Report ) ○ Run ...
  • 45. TODO :: Login Test Plan● Step ○ Create Test Plan ○ Create Thread Group ○ Create Data set CSV ■ userprofile.csv ○ Create config element => CSV ○ Create HTTP Request Default ○ Create HTTP Request ○ Create Listener ( Report ) ○ Run ...
  • 46. เฉลย● https://github.com/up1/jMeter101/ ○ LoadDataFromCSV.jmx ○ userprofile.csv
  • 47. Batch process with jMeter ( Non-GUI ) jmeter -n -t <Google.jmx> -n = Run with Non-GUI mode -t = กําหนด file jmx ( Test plan )
  • 48. jMeter Distributed Testing 127.0.0.1 192.168.1.10 192.168.1.11 jMeter Summary 192.168.1.10 192.168.1.10 192.168.1.10
  • 49. Step to config (1)● เพิมการ Start RMI Registry ของ server ต่างๆ ใน file jmeter-server.batเพิม RMI Registry ต่อจาก :setCPSTART "%JAVA_HOME%jrebinrmiregistry"
  • 50. Step to config (2)● Start RMI Registry ของ server ต่างๆ ใน file jmeter-server.bat jmeter-server
  • 51. Step to config (3)● เพิม Remote server ใน file jmeter.propertiesremote_hosts=127.0.0.1, 192.168.1.10,192.168.1.11, 192.168.1.12, 192.168.1.13,192.168.1.14
  • 52. Step to config (4)● เปิ ดโปรแกรม jMeter ขึนมา เพือดู Remote host
  • 53. Step to config (5)● Run !!
  • 54. ผลการทํางาน
  • 55. ข้อเสีย● มีความซับซ ้อน● GUI ค่อนข ้างสับสน● ยากต่อผู ้เริมต ้นใช ้งาน● Report ห่วย
  • 56. ข้อดี● สําหรับคนทีเขียน Code เป็ น ○ สามารถเขียน plugin เพือขยายความสามารถได ้
  • 57. ข้อดี● สําหรับคนทีเขียน Code ไม่เป็ น ○ http://code.google.com/p/jmeter-plugins/
  • 58. Resources● http://jmeter.apache. org/usermanual/component_reference.html● http://jmeter.apache.org/usermanual/build- web-test-plan.html● http://jmeter.apache.org/usermanual/build- adv-web-test-plan.html
  • 59. TODO :: Register Test Plan● Step ○ Create Test Plan ○ Create Thread Group ○ Create Data set CSV ■ user_register.csv ○ Create config element => CSV ○ Create HTTP Request Default ○ Create HTTP Request ○ Create Listener ( Report ) ○ Run ...
  • 60. TODO :: Information● Server IP = http://119.59.97.9/● Parameters ( Visible ) ○ Firstname ○ Lastname ○ Company ○ Position ○ Phone● HTTP Post method
  • 61. เฉลย● https://github.com/up1/jMeter101/ ○ Agile Singapore 2013.jmx ○ user_register.csv

×