dinosu@kkbox.com
2015/12/4
GTAC 2015@Boston
● Software Engineer in Test since 2004
● Biker
● Photographer
● Me on Internet
○ Twitter: @din0su
○ LinkedIn: dinosu
○ Github: dino-su
# whoami
Dino Su
1562 applications from worldwide
● 1362 attendance applications
● 200 speaker applications
● Iseral, Austrilla, South Africa, Finland, Taiwan
25 talks in 14 hours
32 speakers
next GTAC will be in 2017 Spring
Subject #1: Experience Sharing
Testing the tube
Keynote
Keynote
whole team testing
Step1: Team Commitment
● Agree on metrics
● Progress transparency
● Allow team-based drill down
● Allow team-based metrics additions
● product
● engineering
● operaions (Production & Release)
Dimensions of Quality
Step2: Automation
● wherever possible
● big focus on mobile/device testing
● integration testing
● no manual regression
● push process
Push for automation
Step3: Set Goals
● Start simple: cut by X in Y quarters
● Enforce via team commitments
● adjust as progress achieved
Goals
● Testing the Tube
● Chromecast Testing
● Nest Automation Infrastructure
● Enabling Streaming Experiments at Netflix
● Effective Testing of a GPS Monitoring Station Receiver
● Chrome OS Test Automation Lab
More testing experience talks
Common Insights
Automation & Automation & Automation
Speed & Speed & Speed
Subject #2: Tools
Octopus from Uber
The problem
Solution
● Test Host
● Test Target
● Channel
● Signal
○ read
○ write
● Question: But why not mock instead of E2E ?
● Answer: It’s only used for core features to increase final
confidence for release.
code-less test automation
1. ease of use
2. Android framework compatibility
3. code coverage
4. fault detection
Benchmark Criteria
Winner
Monkey test Tips
● How to setup monkey test
# setup
./gradlew installDebug installDebugAndroidTest
adb shell am instrument -w -e annotation com.kkbox.sqa.fuzz_test.test.Before 
com.kkbox.sqa.fuzz_test.test/android.support.test.runner.AndroidJUnitRunner
# exercise
adb shell monkey -p com.skysoft.kkbox.android -v 30000
# teardown
adb shell am instrument -w -e annotation com.kkbox.sqa.fuzz_test.test.After 
com.kkbox.sqa.fuzz_test.test/android.support.test.runner.AndroidJUnitRunner
● 5 minutes as maximum (30000 events)
Diffy & Applitools
The tool saved Twitter engineers
from being layoff
● Applitools Eyes
● The most powerful
image comparison
engine I've ever seen
unfortunately, it costs you $99 user
/ month
new network mocking tools
Flashback & RpcReplay
It makes integration testing become
more pleasure
Subject #3: Testing thoughts
component testing Soup Dumplings
75% code coverage seems like a
right number
The Fun Part
4am fire alarm
Google Cambridge
Q&A
dinosu@kkbox.com

GTAC 2015