Slide 1

Slide 1 text

Mobile App Testing By Proko Chou

Slide 2

Slide 2 text

About Me ● 8+ years mobile application testing experience in HTC and CloudMosa ● OS: ○ Android ○ iOS ○ Windows ○ Brew ● Applications: ○ Browser ○ Galery (Album) ○ Camera ○ Music ○ Video player ○ Voice recorder ○ MMS ○ ……

Slide 3

Slide 3 text

Agenda ● Before Testing: Test Sample ● Test Coverage ○ Basic Function ○ Compatibility ○ Integration ○ Stress ○ Power Consumption ● Q & A

Slide 4

Slide 4 text

Before testing: Prepare Test Sample ● Different Type: ○ Album: png, jpeg, bmp,gif, etc. ○ Music: mp3, wav, aiff, etc. ● Different Size: ○ Album: 0 bytes, normal size, big size image ○ Video player: 0 bytes, normal size, big size video ● Different Environment: ○ Camera: yellow light, sparkled item, colorful item ○ Internet: metallic box, 2G/3G/ 4G SIM, VPN account Sparkled Item Colorful Item Metallic box

Slide 5

Slide 5 text

Before testing: Device Precondition ● Create datas on devices under testing (DUT) ○ Log in mail accounts ○ Messenger: Line, Whatsapp or Facebook messenger ○ Many SMS/ MMS messages ○ Many photos in ablum ○ Enable lockscreen ○ …...

Slide 6

Slide 6 text

Test Coverage

Slide 7

Slide 7 text

Basic Function ● 使用者介面 (UI / Multi-Language / IME Check) ● 邊界 (Boundary) ● 記憶體釋放 (Memory leakage) ● 錯誤處理 (Error Handling) ● 安裝(Install) 、反安裝 (Uninstall)、儲存至SD card (Move to SD card) ● 使用者資料保存 (Data Migration) ● 重啟 (After relaunching) ● 清除App資料 (After clearing application’s data) ● 清除整台機器的資料 (After resetting the device)

Slide 8

Slide 8 text

Basic Function ● 使用者介面 (UI / Multi-Language / IME Check) ● 邊界 (Boundary) ● 記憶體釋放 (Memory leakage) ● 錯誤處理 (Error Handling) ● 重啟 (After relaunching) ● 使用者資料保存 (Data Migration) ● 取消該功能的使用 (Stop feature function) ● 安裝(Install) 、反安裝 (Uninstall) ● 清除App資料 (After clearing application’s data) ● 清除整台機器的資料 (After resetting the device)

Slide 9

Slide 9 text

Test Coverage: Compatibility

Slide 10

Slide 10 text

Compatibility: Different Devices ○ Device: ■ iOS: ○ iPad: iPad 2 ○ iPad with Retina: iPad 3 or iPad 4 ○ iPad with split function: iPad air 2, iPad pro ○ iPhone ○ Device with 3D touch function ■ Android: ○ Tablet /Phone ○ Device with Pen and Keyboard ○ Different devices test on Cloud: (250 mins free) ■ AWS Test: https://aws.amazon.com/tw/device-farm/

Slide 11

Slide 11 text

Compatibility: Different OS Version ● Support old and current version: ○ iOS: ■ iOS5~6 ■ iOS 7 ■ iOS8~ iOS9 ■ iOS 10 ○ Android: ■ Gingerbread 2.3–2.3.7 ■ Honeycomb (Tablet only) 3.0–3.2.6 ■ Ice Cream Sandwich 4.0–4.0.4 ■ Jelly Bean 4.1–4.3.1 ■ KitKat 4.4–4.4.4, 4.4W–4.4W.2 ■ Lollipop 5.0–5.1.1 ■ Marshmallow 6.0–6.0.1 ● Beta version test during July ~ September each year!!

Slide 12

Slide 12 text

Test Coverage: Integration

Slide 13

Slide 13 text

Integration: Internet

Slide 14

Slide 14 text

Integration: Internet (1/2) Airplane Mode VPN Under connecting or loading No Connection (Use Metallic box) Connect via proxy Weak signal (Use Elevator) Normal Connection Data Connection

Slide 15

Slide 15 text

Integration: Internet (2/2) Emulate network connectivity: ● Facebook Augmented Traffic Control, ATC: Reference: Link 1, Link 2 ● iOS Developer Network Link Conditioner: Reference: Link Facebook ATC iOS Developer Tool

Slide 16

Slide 16 text

Integration: Keyboard ● Android: Google, Samsung, Asus, bluetooth keyboard, pen, voice input, etc. ● iOS: iAcess, voice input and split keyboard (Link) iOS: Split keyboard Bluetooth keyboard Pen

Slide 17

Slide 17 text

Integration: Other Apps’ functions ○ Other applications: ■ Incoming phone call ■ Alarm ■ Voice assistant (e.g., Siri) ■ Album ■ Camera ○ Device: ■ Power off/ Resume device ■ Support split screen function ■ Support 3D touch function

Slide 18

Slide 18 text

Test Coverage: Stress and Power Consumption

Slide 19

Slide 19 text

Stability: Stress Test ● Keep using over X times ● Keep using over X hours ● Keep relaunching X times ● Criteria: MTBF (Reference: link) ● Monkey test ○ Monkey script for Android: https://developer.android.com/studio/test/monkey.html ○ Monkey script for iOS: https://github.com/search?utf8=%E2%9C%93&q=ios+monkey

Slide 20

Slide 20 text

Power Consumption ● How many hours does an application keep working? ● Criteria: Compare to other applications

Slide 21

Slide 21 text

No content