SlideShare une entreprise Scribd logo
1  sur  52
Télécharger pour lire hors ligne
Agile Testing
somkiat.cc
Thailand PHP User Group Meetup #1
สวัสดี
สมเกียรติ ปุ๋ยสูงเนิน
@somkiat
๡ื่อปุ๋ย
นามแฝง
Up1
รูปแบบการพัฒนาแบบเดิม
Analyse Design Code Test/Fix Release
๡ีวิตจริง !!
Analyse, Design, Code
Test
Fix
Release
มันเจ็บปวด รวดร้าว
แนวคิดใหม่
Agile
ประกาศเมื่อปี 2001
มีหลายรูปแบบ เ๡่น Extreme Programming, Scrum
มีพื้นฐานจาก Iterative development
เน้นเรื่องการทํางานร่วมกัน
เน้นเรื่องการทํางานเป็นทีม
เน้นเรื่องการ๤่งมอบบ่อยๆ
สามารถตอบรับกับความเปลี่ยนแปลงทางธุรกิจ
Incremental
Iterative
Iterative Incremental
Agile Manifesto
Individuals and interactions Over process and tools
Working software Over comprehensive documents
Customer collaboration Over contract negotiation
Responding to change Over polling the plan
มีแนวปฏิบัติอีก 12 ข้อ
อยากรู้จักการทํางานแบบ Agile ไหม ?
สามเหลี่ยม
สามเหลี่ยม
Scope
Tim
eCost/Resource
สามเหลี่ยม
Scope
Tim
eCost/Resource
QUALITY
?
9
แนวคิด Agile Testing
1. ทดสอบตั้งแต่เนิ่นๆ
2. การทดสอบไม่ใ๡่ Phase
3. ทุกๆ คน ต้องทดสอบ
ไม่ใ๡่เพียง Tester เท่านั้น
4. ต้องการ Feedback ที่เร็ว
5. การทดสอบ คือ นําเสนอความคาดหวัง
6. สร้าง Clean code
7. ทําเอกสารเท่าที่จําเป็น
8. การทดสอบ คือ ๤่วนหนึ่งในคําว่าเสร็จ
9. Test Last vs. Test First
6
แนวปฏิบัติ Agile Testing
1. Automated Unit/Integration Tests
2. Test Driven Development
3. Automated System Regression Tests
4. Acceptance Test Driven Development
(ATDD)
5. Exploratory Testing
6. เก็บ Code และ Test ไว้ใน
Version Control System
สามารถสรุปได้ว่า
Agile Testing
Testing ไม่ใ๡่ Phase
Testing คือ Activities
คุณภาพไม่สามารถต่อรองได้
สุดท้าย ผมมี ความลับ
S = Skill
E = Experience
C = Customer / Context
R = Risk
E = Exploration
T = Testing
ท้ายสุด เรื่องความเข้าใจผิด
การทดสอบแบบเก่า
การทดสอบแบบใหม่
แนวทางการทดสอบที่ดี
เครื่องมือที่ผมใ๡้
Selenium, Robot Framework
Behat, Codeception, PHPSpec
เครื่องมือที่ผมใ๡้
xUnit เ๡่น PHPUnit,
Mockery
ถามมา ตอบไป
ใครอยากเขียน TDD ?
ใครอยากเขียน ATDD ?
สวัสดี

Contenu connexe

En vedette

KMITL IT - Intro to Agile by Proteus Agility
KMITL IT - Intro to Agile by Proteus AgilityKMITL IT - Intro to Agile by Proteus Agility
KMITL IT - Intro to Agile by Proteus AgilityKulawat Wongsaroj
 
เติมอไจล์ให้เต็มด้วย Lean Startup
เติมอไจล์ให้เต็มด้วย Lean Startupเติมอไจล์ให้เต็มด้วย Lean Startup
เติมอไจล์ให้เต็มด้วย Lean StartupKulawat Wongsaroj
 
906702 it for mgt - september 6r2
906702 it for mgt  - september 6r2906702 it for mgt  - september 6r2
906702 it for mgt - september 6r2siroros
 
Database & Technology 1 _ Tom Kyte _ Efficient PL SQL - Why and How to Use.pdf
Database & Technology 1 _ Tom Kyte _ Efficient PL SQL - Why and How to Use.pdfDatabase & Technology 1 _ Tom Kyte _ Efficient PL SQL - Why and How to Use.pdf
Database & Technology 1 _ Tom Kyte _ Efficient PL SQL - Why and How to Use.pdfInSync2011
 
Jump start a new agile project with Eidos
Jump start a new agile project with EidosJump start a new agile project with Eidos
Jump start a new agile project with EidosKulawat Wongsaroj
 
บทที่ 4
บทที่  4บทที่  4
บทที่ 4nunzaza
 
Automated Testing vs. Manual Testing
Automated Testing vs. Manual TestingAutomated Testing vs. Manual Testing
Automated Testing vs. Manual TestingPakorn Weecharungsan
 
บทที่ 10
บทที่ 10บทที่ 10
บทที่ 10nunzaza
 
Chapter 6 system development
Chapter 6 system developmentChapter 6 system development
Chapter 6 system developmentPa'rig Prig
 
CTF คืออะไร เรียนแฮก? ลองแฮก? แข่งแฮก?
CTF คืออะไร เรียนแฮก? ลองแฮก? แข่งแฮก?CTF คืออะไร เรียนแฮก? ลองแฮก? แข่งแฮก?
CTF คืออะไร เรียนแฮก? ลองแฮก? แข่งแฮก?Pichaya Morimoto
 
Don't Lead Your Team to the Dark Side (second edition)
Don't Lead Your Team to the Dark Side (second edition)Don't Lead Your Team to the Dark Side (second edition)
Don't Lead Your Team to the Dark Side (second edition)Olarn Ungumnuayporn
 
Oracle Database 11g: Learn and Master PL/SQL | Course Outline
Oracle Database 11g: Learn and Master PL/SQL | Course OutlineOracle Database 11g: Learn and Master PL/SQL | Course Outline
Oracle Database 11g: Learn and Master PL/SQL | Course OutlineDwight Cummings
 

En vedette (20)

Unit 2
Unit 2Unit 2
Unit 2
 
11 Step Create Game in LvUp! Studio
11 Step Create Game in LvUp! Studio11 Step Create Game in LvUp! Studio
11 Step Create Game in LvUp! Studio
 
KMITL IT - Intro to Agile by Proteus Agility
KMITL IT - Intro to Agile by Proteus AgilityKMITL IT - Intro to Agile by Proteus Agility
KMITL IT - Intro to Agile by Proteus Agility
 
เติมอไจล์ให้เต็มด้วย Lean Startup
เติมอไจล์ให้เต็มด้วย Lean Startupเติมอไจล์ให้เต็มด้วย Lean Startup
เติมอไจล์ให้เต็มด้วย Lean Startup
 
906702 it for mgt - september 6r2
906702 it for mgt  - september 6r2906702 it for mgt  - september 6r2
906702 it for mgt - september 6r2
 
Lesson 1 intro2_db
Lesson 1 intro2_dbLesson 1 intro2_db
Lesson 1 intro2_db
 
Database & Technology 1 _ Tom Kyte _ Efficient PL SQL - Why and How to Use.pdf
Database & Technology 1 _ Tom Kyte _ Efficient PL SQL - Why and How to Use.pdfDatabase & Technology 1 _ Tom Kyte _ Efficient PL SQL - Why and How to Use.pdf
Database & Technology 1 _ Tom Kyte _ Efficient PL SQL - Why and How to Use.pdf
 
สถาปัตยกรรม
สถาปัตยกรรมสถาปัตยกรรม
สถาปัตยกรรม
 
Jump start a new agile project with Eidos
Jump start a new agile project with EidosJump start a new agile project with Eidos
Jump start a new agile project with Eidos
 
Sdlc
SdlcSdlc
Sdlc
 
e-Commerce
e-Commercee-Commerce
e-Commerce
 
บทที่ 4
บทที่  4บทที่  4
บทที่ 4
 
Agile
AgileAgile
Agile
 
Automated Testing vs. Manual Testing
Automated Testing vs. Manual TestingAutomated Testing vs. Manual Testing
Automated Testing vs. Manual Testing
 
บทที่ 10
บทที่ 10บทที่ 10
บทที่ 10
 
Chapter 6 system development
Chapter 6 system developmentChapter 6 system development
Chapter 6 system development
 
CTF คืออะไร เรียนแฮก? ลองแฮก? แข่งแฮก?
CTF คืออะไร เรียนแฮก? ลองแฮก? แข่งแฮก?CTF คืออะไร เรียนแฮก? ลองแฮก? แข่งแฮก?
CTF คืออะไร เรียนแฮก? ลองแฮก? แข่งแฮก?
 
Don't Lead Your Team to the Dark Side (second edition)
Don't Lead Your Team to the Dark Side (second edition)Don't Lead Your Team to the Dark Side (second edition)
Don't Lead Your Team to the Dark Side (second edition)
 
Oracle Database 11g: Learn and Master PL/SQL | Course Outline
Oracle Database 11g: Learn and Master PL/SQL | Course OutlineOracle Database 11g: Learn and Master PL/SQL | Course Outline
Oracle Database 11g: Learn and Master PL/SQL | Course Outline
 
01
0101
01
 

Similaire à THPHP => Agile testing

Similaire à THPHP => Agile testing (20)

Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Agile Process
Agile ProcessAgile Process
Agile Process
 
Agile
AgileAgile
Agile
 
Software
SoftwareSoftware
Software
 
Software
SoftwareSoftware
Software
 
System Development Life Cycle
System Development  Life  CycleSystem Development  Life  Cycle
System Development Life Cycle
 
Confession of an Agile Addict
Confession of an Agile AddictConfession of an Agile Addict
Confession of an Agile Addict
 
Activity 4
Activity 4Activity 4
Activity 4
 
การพัฒนาซอฟแวร์
การพัฒนาซอฟแวร์การพัฒนาซอฟแวร์
การพัฒนาซอฟแวร์
 
Activity4_naka
Activity4_nakaActivity4_naka
Activity4_naka
 
Activity4
Activity4Activity4
Activity4
 
Act
ActAct
Act
 
Activity4
Activity4Activity4
Activity4
 
กิจกรรมที่ 4 วงจรการพัฒนาโปรแกรม
กิจกรรมที่ 4 วงจรการพัฒนาโปรแกรมกิจกรรมที่ 4 วงจรการพัฒนาโปรแกรม
กิจกรรมที่ 4 วงจรการพัฒนาโปรแกรม
 
14321
1432114321
14321
 
IT Solution Architect & Architecture for Thailand 4.0
IT Solution Architect & Architecture for Thailand 4.0IT Solution Architect & Architecture for Thailand 4.0
IT Solution Architect & Architecture for Thailand 4.0
 
2016 23 12-thanavisit_ lean transformations_for book_1
2016 23 12-thanavisit_ lean transformations_for  book_12016 23 12-thanavisit_ lean transformations_for  book_1
2016 23 12-thanavisit_ lean transformations_for book_1
 
วงจรการพัฒนาโปรแกรม
วงจรการพัฒนาโปรแกรมวงจรการพัฒนาโปรแกรม
วงจรการพัฒนาโปรแกรม
 
P ort80 bkk-codeigniter
P ort80 bkk-codeigniterP ort80 bkk-codeigniter
P ort80 bkk-codeigniter
 
Case Study Create New Innoation : USB Cell by Graphene
Case Study Create New Innoation : USB Cell by GrapheneCase Study Create New Innoation : USB Cell by Graphene
Case Study Create New Innoation : USB Cell by Graphene
 

Plus de Somkiat Puisungnoen (20)

Next of Java 2022
Next of Java 2022Next of Java 2022
Next of Java 2022
 
Sck spring-reactive
Sck spring-reactiveSck spring-reactive
Sck spring-reactive
 
Part 2 :: Spring Boot testing
Part 2 :: Spring Boot testingPart 2 :: Spring Boot testing
Part 2 :: Spring Boot testing
 
vTalk#1 Microservices with Spring Boot
vTalk#1 Microservices with Spring BootvTalk#1 Microservices with Spring Boot
vTalk#1 Microservices with Spring Boot
 
Lesson learned from React native and Flutter
Lesson learned from React native and FlutterLesson learned from React native and Flutter
Lesson learned from React native and Flutter
 
devops
devops devops
devops
 
Angular :: basic tuning performance
Angular :: basic tuning performanceAngular :: basic tuning performance
Angular :: basic tuning performance
 
Shared code between projects
Shared code between projectsShared code between projects
Shared code between projects
 
Distributed Tracing
Distributed Tracing Distributed Tracing
Distributed Tracing
 
Manage data of service
Manage data of serviceManage data of service
Manage data of service
 
RobotFramework Meetup at Thailand #2
RobotFramework Meetup at Thailand #2RobotFramework Meetup at Thailand #2
RobotFramework Meetup at Thailand #2
 
Visual testing
Visual testingVisual testing
Visual testing
 
Cloud Native App
Cloud Native AppCloud Native App
Cloud Native App
 
Wordpress for Newbie
Wordpress for NewbieWordpress for Newbie
Wordpress for Newbie
 
Sck Agile in Real World
Sck Agile in Real WorldSck Agile in Real World
Sck Agile in Real World
 
Clean you code
Clean you codeClean you code
Clean you code
 
SCK Firestore at CNX
SCK Firestore at CNXSCK Firestore at CNX
SCK Firestore at CNX
 
Unhappiness Developer
Unhappiness DeveloperUnhappiness Developer
Unhappiness Developer
 
The Beauty of BAD code
The Beauty of  BAD codeThe Beauty of  BAD code
The Beauty of BAD code
 
React in the right way
React in the right wayReact in the right way
React in the right way
 

THPHP => Agile testing