SlideShare a Scribd company logo
1 of 28
Download to read offline
The Guardian of LINE TODAY
Automation Test
Kent Han
• LINE TODAY
• Challenges
• CI and Automation Test
CI Pipeline
Unit Test
Functional Test
Service Monitoring
• Wrap Up
AGENDA
LINE TODAY
FastTrack RegularTrack
2016.03 - Fast Track as Proof Of Concept
2016.06 - Regular Track as long-term product
GLN - Global LINE News
GLN - Global LINE News
TW
18m
TH
36m
IR
3m
ID
32m
JP
58m
TW TH ID IR
(RTL)
GLN	-	Global	LINE	NewsGLN - Global LINE News
Fast Track - 02/26 (TW, TH, ID, US, MM)
Regular Track - 06/16 (TW, TH, ID) 10/04 (IR)
3/2 3/5 3/8 3/113/14 3/17 3/20 3/23 3/263/29 4/1 4/4 4/7 4/10 4/134/16 4/19 4/22 4/25 4/28 5/1 5/4 5/7 5/10 5/13 5/16 5/19 5/225/25 5/28 5/31 6/3 6/6 6/9 6/12 6/15 6/18 6/21 6/24 6/276/30 7/3 7/6 7/9 7/12 7/157/18 7/21 7/24 7/27 7/30 8/2 8/5 8/8 8/11 8/14 8/17 8/208/23 8/26 8/29 9/1 9/4 9/7 9/10
DUB
DPV
Fast
Track
Regular
Track
Challenges
Swiftly adjust to survive, or die
Feature requests are diverse
Agile is the Only Solution
How Fast is Your Agile
CI + Automation Test
Jenkins 2.0
CI Pipeline by Jenkinsews
• Jenkins IFTTT LINE Notify
• https://ifttt.com/line
CI Notification
Testing Pyramid
https://watirmelon.blog/tag/
testing-pyramid/
Unit test vs. Integration test
• Speed
• Stable
• Easy to troubleshoot
Testing Pyramid
Pull	Request	must	be	checked	by	unit	test
Unit Test
Static Code Analysis
• Checkstyle
• FindBugs
• PMD
• Duplicate Code
Testing Tools
• Python
• Robot Framework
• Selenium
• Appium
• Jenkins
• Gatling
Functional Test
Why Did We Adopt
Robot Framework?
• Human-readable test cases for
Maintainability
• Python and Java support for Versatility
• --rerunfailed for flaky tests
*** Test Cases ***
Add A Comment To An Article
[Tags] comment RAT
New An Article In Category
Add Comment To The Article 1 Times
Comment Count Of The Article Is 1
Reply A Comment To A Comment
[Tags] reply RAT
New An Article In Category
Add Comment To The Article 1 Times
Comment Count Of The Article Is 1
Reply To The Comment With Text Comment
Comment Should Be Included In Article
Vote Up To A Comment
[Tags] vote RAT
New An Article In Category
Add Comment To The Article 1 Times
Comment Count Of The Article Is 1
Vote The Comment With UP
Robot Framework Report
Content Working Flow
Feeding Test
• Average 5,500 articles
imported a day
• Should ensure the input
stream
• Fake articles for testing
Thumbnail
Image
Video
Youtube
<?xml version='1.0' encoding='UTF-8'?>
<articles>
<UUID>c11ae751-b180-11e6-96c0-985aeb8c0520</UUID>
<time>1461117682767</time>
<article>
<ID>c11b1973-b180-11e6-8d03-985aeb8c0520</ID>
<nativeCountry>TW</nativeCountry>
<language>zh</language>
<startYmdtUnix>1479907723508</startYmdtUnix>
<endYmdtUnix>1571117682767</endYmdtUnix>
<title>20161123212843_all_medias</title>
<category> </category>
<publishTimeUnix>1479907723508</publishTimeUnix>
<contents>
<image>
<description>Mountain is beautiful!</description>
<url>yama_1.png</url>
</image>
<video>
<description>Kobe Top 1</description>
<thumbnail>thumbnail_1.jpg</thumbnail>
<url>kobe_1.mp4</url>
</video>
<video>
<description>Youtube</description>
<url>https://www.youtube.com/embed/c7rCyll5AeY</url>
</video>
<text>
<content> Google Google
Alphabet
Larry Page Alphabet Google Sundar Pichi
Google Larry Page
Google ......
Alphabet
</content>
</text>
</contents>
</article>
</articles>
CMS Test
• OA Digest
• Timeline Digest
• Category publication
• When new features are added,
basic functions should not fail
Front-end Test
• Selenium covers the most
• Appium for the mobile-only feature
• API test as a tool to generate testing
data
• Internal tools
iMON - application error
NSight - system error
• Health check script
Web response time
RabbitMQ management api
ElasticSearch cluster/node/stats/
status api
Service Monitoring
0
100
200
300
400
v2.1 v2.2 v2.3 v3.0 v3.1 v3.2 v3.3
major bugs total bugs
Bug Stats
Wrap Up
Quality is everyone’s KPI
Find a pain point in retrospective then improve in next sprint
THANK YOU

More Related Content

Similar to S6 the guardian of line today automation test

Scrum and Lean : Multiply the Powers by Om Band
Scrum and Lean : Multiply the Powers by Om BandScrum and Lean : Multiply the Powers by Om Band
Scrum and Lean : Multiply the Powers by Om Band
agilencr
 
Test Metrics in Agile - powerful tool to support changes - Zavertailo Iuliia
Test Metrics in Agile - powerful tool to support changes - Zavertailo IuliiaTest Metrics in Agile - powerful tool to support changes - Zavertailo Iuliia
Test Metrics in Agile - powerful tool to support changes - Zavertailo Iuliia
Yulia Zavertailo
 
Dev opstalks 2018 releasing the monolith on a daily basis
Dev opstalks 2018   releasing the monolith on a daily basisDev opstalks 2018   releasing the monolith on a daily basis
Dev opstalks 2018 releasing the monolith on a daily basis
Vincent Kok
 

Similar to S6 the guardian of line today automation test (20)

6-Sigma Training-Awareness for automobile industries
6-Sigma Training-Awareness for automobile industries6-Sigma Training-Awareness for automobile industries
6-Sigma Training-Awareness for automobile industries
 
Supply chain design and operation
Supply chain design and operationSupply chain design and operation
Supply chain design and operation
 
An Agile Testing Dashboard: Metrics that Matter
An Agile Testing Dashboard: Metrics that MatterAn Agile Testing Dashboard: Metrics that Matter
An Agile Testing Dashboard: Metrics that Matter
 
Qa management in big agile teams
Qa management in big agile teamsQa management in big agile teams
Qa management in big agile teams
 
ThoughtWorks Continuous Delivery
ThoughtWorks Continuous DeliveryThoughtWorks Continuous Delivery
ThoughtWorks Continuous Delivery
 
Value add: Single User Performance Testing (http://managingperformancetesting...
Value add: Single User Performance Testing (http://managingperformancetesting...Value add: Single User Performance Testing (http://managingperformancetesting...
Value add: Single User Performance Testing (http://managingperformancetesting...
 
Advanced problems solving using A3 Report - January 2017
Advanced problems solving using A3 Report - January 2017Advanced problems solving using A3 Report - January 2017
Advanced problems solving using A3 Report - January 2017
 
Scrum and Lean : Multiply the Powers by Om Band
Scrum and Lean : Multiply the Powers by Om BandScrum and Lean : Multiply the Powers by Om Band
Scrum and Lean : Multiply the Powers by Om Band
 
Test Metrics in Agile - powerful tool to support changes - Zavertailo Iuliia
Test Metrics in Agile - powerful tool to support changes - Zavertailo IuliiaTest Metrics in Agile - powerful tool to support changes - Zavertailo Iuliia
Test Metrics in Agile - powerful tool to support changes - Zavertailo Iuliia
 
Company profile 2018
Company profile 2018Company profile 2018
Company profile 2018
 
Continuous Performance Testing: The New Standard
Continuous Performance Testing: The New StandardContinuous Performance Testing: The New Standard
Continuous Performance Testing: The New Standard
 
Test Metrics
Test MetricsTest Metrics
Test Metrics
 
UTC Aerospace System - Value Stream Mapping
UTC Aerospace System - Value Stream MappingUTC Aerospace System - Value Stream Mapping
UTC Aerospace System - Value Stream Mapping
 
Vladimir Primakov - Qa management in big agile teams
Vladimir Primakov - Qa management in big agile teamsVladimir Primakov - Qa management in big agile teams
Vladimir Primakov - Qa management in big agile teams
 
Dev opstalks 2018 releasing the monolith on a daily basis
Dev opstalks 2018   releasing the monolith on a daily basisDev opstalks 2018   releasing the monolith on a daily basis
Dev opstalks 2018 releasing the monolith on a daily basis
 
From Waterfall to Weekly Releases: A Case Study in using Evo and Kanban (2004...
From Waterfall to Weekly Releases: A Case Study in using Evo and Kanban (2004...From Waterfall to Weekly Releases: A Case Study in using Evo and Kanban (2004...
From Waterfall to Weekly Releases: A Case Study in using Evo and Kanban (2004...
 
Lewis Chu,Marketing Director,GUC
Lewis Chu,Marketing Director,GUC Lewis Chu,Marketing Director,GUC
Lewis Chu,Marketing Director,GUC
 
Driving Innovation with Kanban at Jaguar Land Rover
Driving Innovation with Kanban at Jaguar Land RoverDriving Innovation with Kanban at Jaguar Land Rover
Driving Innovation with Kanban at Jaguar Land Rover
 
Baskaren Accomplishments Summary
Baskaren Accomplishments SummaryBaskaren Accomplishments Summary
Baskaren Accomplishments Summary
 
聊聊測試左移
聊聊測試左移聊聊測試左移
聊聊測試左移
 

More from LINE Corporation

More from LINE Corporation (20)

JJUG CCC 2018 Fall 懇親会LT
JJUG CCC 2018 Fall 懇親会LTJJUG CCC 2018 Fall 懇親会LT
JJUG CCC 2018 Fall 懇親会LT
 
Reduce dependency on Rx with Kotlin Coroutines
Reduce dependency on Rx with Kotlin CoroutinesReduce dependency on Rx with Kotlin Coroutines
Reduce dependency on Rx with Kotlin Coroutines
 
Kotlin/NativeでAndroidのNativeメソッドを実装してみた
Kotlin/NativeでAndroidのNativeメソッドを実装してみたKotlin/NativeでAndroidのNativeメソッドを実装してみた
Kotlin/NativeでAndroidのNativeメソッドを実装してみた
 
Use Kotlin scripts and Clova SDK to build your Clova extension
Use Kotlin scripts and Clova SDK to build your Clova extensionUse Kotlin scripts and Clova SDK to build your Clova extension
Use Kotlin scripts and Clova SDK to build your Clova extension
 
The Magic of LINE 購物 Testing
The Magic of LINE 購物 TestingThe Magic of LINE 購物 Testing
The Magic of LINE 購物 Testing
 
GA Test Automation
GA Test AutomationGA Test Automation
GA Test Automation
 
UI Automation Test with JUnit5
UI Automation Test with JUnit5UI Automation Test with JUnit5
UI Automation Test with JUnit5
 
Feature Detection for UI Testing
Feature Detection for UI TestingFeature Detection for UI Testing
Feature Detection for UI Testing
 
LINE 新星計劃介紹與新創團隊分享
LINE 新星計劃介紹與新創團隊分享LINE 新星計劃介紹與新創團隊分享
LINE 新星計劃介紹與新創團隊分享
 
​LINE 技術合作夥伴與應用分享
​LINE 技術合作夥伴與應用分享​LINE 技術合作夥伴與應用分享
​LINE 技術合作夥伴與應用分享
 
LINE 開發者社群經營與技術推廣
LINE 開發者社群經營與技術推廣LINE 開發者社群經營與技術推廣
LINE 開發者社群經營與技術推廣
 
日本開發者大會短講分享
日本開發者大會短講分享日本開發者大會短講分享
日本開發者大會短講分享
 
LINE Chatbot - 活動報名報到設計分享
LINE Chatbot - 活動報名報到設計分享LINE Chatbot - 活動報名報到設計分享
LINE Chatbot - 活動報名報到設計分享
 
在 LINE 私有雲中使用 Managed Kubernetes
在 LINE 私有雲中使用 Managed Kubernetes在 LINE 私有雲中使用 Managed Kubernetes
在 LINE 私有雲中使用 Managed Kubernetes
 
LINE TODAY高效率的敏捷測試開發技巧
LINE TODAY高效率的敏捷測試開發技巧LINE TODAY高效率的敏捷測試開發技巧
LINE TODAY高效率的敏捷測試開發技巧
 
LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹
LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹
LINE 區塊鏈平台及代幣經濟 - LINK Chain及LINK介紹
 
LINE Things - LINE IoT平台新技術分享
LINE Things - LINE IoT平台新技術分享LINE Things - LINE IoT平台新技術分享
LINE Things - LINE IoT平台新技術分享
 
LINE Pay - 一卡通支付新體驗
LINE Pay - 一卡通支付新體驗LINE Pay - 一卡通支付新體驗
LINE Pay - 一卡通支付新體驗
 
LINE Platform API Update - 打造一個更好的Chatbot服務
LINE Platform API Update - 打造一個更好的Chatbot服務LINE Platform API Update - 打造一個更好的Chatbot服務
LINE Platform API Update - 打造一個更好的Chatbot服務
 
Keynote - ​LINE 的技術策略佈局與跨國產品開發
Keynote - ​LINE 的技術策略佈局與跨國產品開發Keynote - ​LINE 的技術策略佈局與跨國產品開發
Keynote - ​LINE 的技術策略佈局與跨國產品開發
 

Recently uploaded

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Recently uploaded (20)

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

S6 the guardian of line today automation test

  • 1. The Guardian of LINE TODAY Automation Test Kent Han
  • 2. • LINE TODAY • Challenges • CI and Automation Test CI Pipeline Unit Test Functional Test Service Monitoring • Wrap Up AGENDA
  • 4. FastTrack RegularTrack 2016.03 - Fast Track as Proof Of Concept 2016.06 - Regular Track as long-term product GLN - Global LINE News
  • 5. GLN - Global LINE News TW 18m TH 36m IR 3m ID 32m JP 58m
  • 6. TW TH ID IR (RTL) GLN - Global LINE NewsGLN - Global LINE News
  • 7. Fast Track - 02/26 (TW, TH, ID, US, MM) Regular Track - 06/16 (TW, TH, ID) 10/04 (IR) 3/2 3/5 3/8 3/113/14 3/17 3/20 3/23 3/263/29 4/1 4/4 4/7 4/10 4/134/16 4/19 4/22 4/25 4/28 5/1 5/4 5/7 5/10 5/13 5/16 5/19 5/225/25 5/28 5/31 6/3 6/6 6/9 6/12 6/15 6/18 6/21 6/24 6/276/30 7/3 7/6 7/9 7/12 7/157/18 7/21 7/24 7/27 7/30 8/2 8/5 8/8 8/11 8/14 8/17 8/208/23 8/26 8/29 9/1 9/4 9/7 9/10 DUB DPV Fast Track Regular Track
  • 10. Agile is the Only Solution
  • 11. How Fast is Your Agile
  • 13. Jenkins 2.0 CI Pipeline by Jenkinsews
  • 14. • Jenkins IFTTT LINE Notify • https://ifttt.com/line CI Notification
  • 15. Testing Pyramid https://watirmelon.blog/tag/ testing-pyramid/ Unit test vs. Integration test • Speed • Stable • Easy to troubleshoot Testing Pyramid
  • 17. Static Code Analysis • Checkstyle • FindBugs • PMD • Duplicate Code
  • 18. Testing Tools • Python • Robot Framework • Selenium • Appium • Jenkins • Gatling Functional Test
  • 19. Why Did We Adopt Robot Framework? • Human-readable test cases for Maintainability • Python and Java support for Versatility • --rerunfailed for flaky tests *** Test Cases *** Add A Comment To An Article [Tags] comment RAT New An Article In Category Add Comment To The Article 1 Times Comment Count Of The Article Is 1 Reply A Comment To A Comment [Tags] reply RAT New An Article In Category Add Comment To The Article 1 Times Comment Count Of The Article Is 1 Reply To The Comment With Text Comment Comment Should Be Included In Article Vote Up To A Comment [Tags] vote RAT New An Article In Category Add Comment To The Article 1 Times Comment Count Of The Article Is 1 Vote The Comment With UP
  • 22. Feeding Test • Average 5,500 articles imported a day • Should ensure the input stream • Fake articles for testing Thumbnail Image Video Youtube <?xml version='1.0' encoding='UTF-8'?> <articles> <UUID>c11ae751-b180-11e6-96c0-985aeb8c0520</UUID> <time>1461117682767</time> <article> <ID>c11b1973-b180-11e6-8d03-985aeb8c0520</ID> <nativeCountry>TW</nativeCountry> <language>zh</language> <startYmdtUnix>1479907723508</startYmdtUnix> <endYmdtUnix>1571117682767</endYmdtUnix> <title>20161123212843_all_medias</title> <category> </category> <publishTimeUnix>1479907723508</publishTimeUnix> <contents> <image> <description>Mountain is beautiful!</description> <url>yama_1.png</url> </image> <video> <description>Kobe Top 1</description> <thumbnail>thumbnail_1.jpg</thumbnail> <url>kobe_1.mp4</url> </video> <video> <description>Youtube</description> <url>https://www.youtube.com/embed/c7rCyll5AeY</url> </video> <text> <content> Google Google Alphabet Larry Page Alphabet Google Sundar Pichi Google Larry Page Google ...... Alphabet </content> </text> </contents> </article> </articles>
  • 23. CMS Test • OA Digest • Timeline Digest • Category publication • When new features are added, basic functions should not fail
  • 24. Front-end Test • Selenium covers the most • Appium for the mobile-only feature • API test as a tool to generate testing data
  • 25. • Internal tools iMON - application error NSight - system error • Health check script Web response time RabbitMQ management api ElasticSearch cluster/node/stats/ status api Service Monitoring
  • 26. 0 100 200 300 400 v2.1 v2.2 v2.3 v3.0 v3.1 v3.2 v3.3 major bugs total bugs Bug Stats
  • 27. Wrap Up Quality is everyone’s KPI Find a pain point in retrospective then improve in next sprint