Александр Качур - "android и meego: автоматизация тестовых...

18
Android и MeeGo: автоматизация тестовых сценариев Александр Качур EPAM Systems

Upload: qa-dnepropetrovsk-community-ukraine

Post on 11-Nov-2014

1.365 views

Category:

Technology


2 download

DESCRIPTION

В последнее время Android стал самой быстрорастущей мобильной платформой, вытеснив с первой позиции морально устаревший Symbian. Nokia же, получив обратную связь от пользователей своей мобильной ОС Maemo, решила объединить усилия с Intel в разработке совместной ОС, которая получила название MeeGo. Являясь операционными системами разрабатываемыми для схожих сегментов рынка, целевыми устройствами для них выступают смартфоны, планшеты, телевизоры, а также автомобили оснащенные бортовым компьютером. Помимо этого факта их объединяет и то, что рассматриваемые ОС базируются на Linux, хотя и в разной степени.Так у Android на Linux основано только ядро, в то время как MeeGo позиционирует себя как полноценный «Linux в кармане». Благодаря описанным особенностям появилась идея создания доклада, целью которого является вводный обзор по автоматизированному тестированию для каждой платформы. В предлагаемом докладе будут описаны общие архитектурные решения построения фреймворка для автоматизированного тестирования и рассмотрены программные средства доступные для этих целей в Android и Meego.

TRANSCRIPT

Page 1: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

Android и MeeGo: автоматизация тестовых сценариев

Александр КачурEPAM Systems

Page 2: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

MeeGo history 2

o February 2010 by Intel and Nokia in a joint press conference

o 26 May 2010 Meego 1.0 released

o 28 October 2010 Meego 1.1 released

o 24 February 2011 Meego 1.99 released

o 19 May 2011 Meego 1.2 released

o 21 June 2011 Nokia announced its first MeeGo/Harmattan

smartphone device Nokia N9

o September 2011 Nokia N9 released. MeeGo merges with LiMo

and becomes Tizen

Page 3: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

MeeGo tools 3

o Testplanner – tool for writing and executing test plans

o Testrunner-lite – tool that executes tests on real device.

o Testrunner – GUI front end for testrunner-lite.

o Tdriver – automation test API for Qt applications.

Page 4: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

Testrunner 4

Page 5: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

TDriver 5

Testability Driver is a testing tool open sourced by Nokia.

Page 6: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

Android problem 6

Page 7: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

Android tools 7

o ADB – android debug bridge

o ddmlib

o Robotium

o Android Emulator

o Logcat - system log messages

o Junit/TestNG – unit testing lib

Page 8: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

Android instrumentation 8

Page 9: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

MeeGo and Android host based testing architectures

9

Page 10: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

MeeGo and Android testing features 10

  Android MeeGo

Execution on real device Not possible to interact without PC

+

System interaction DDMS bash

Application interaction Instrumentation TDriver

Test plan execution - Testrunner/testrunner-lite

Semi-automated testing - +

Verify images - +

LanguagesPython(monkey-

runner)Java

Ruby(TDriver), C++

Unit testing JUnit Test::Unit, MiniTestMonkey testing + +

Reporting

No out-of-box solution. Several open-

source projects to generate junit report.

Testrunner/testrunner-lite (QA reports format)

TDiver (tons of formats including junit report format)

Page 11: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

MeeGo testing fails when 11

o You are writing app without QT

o Your app doesn’t have TDriver support

o You are trying to run app inside emulator on workstation with non-Intel hardware

Page 12: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

Android testing fails when 12

o You don’t have key for already packed app (but you have a chance to resign it)

o You are not familiar with Java

o You need to run tests remotely:• Hardcoded “localhost” in ddmlib• Hardcoded “localhost” in emulator (port

forwarding rule is required)

Page 13: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

MeeGo test flow 13

o Start test case (testrunner) – dev machine

o Call TDriver test (via SSH) – SUT

o Retrieve results (via SSH)

o Generate report

Page 14: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

14

MeeGo demo test

Page 15: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

Android test flow 15

o Start test case (IDE/Java) – dev machine

o Call Instrumentation test (via adb) – SUT

o Retrieve results (via adb)

o Generate report

Page 16: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

16

Android demo test

Page 17: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

Summary 17

o MeeGo testing fails if you don't have a real device or Intel hardware.

o Android doesn't provide out-of-box solution for host based automated testing but it can be easily implemented.

o With significant differences in tools and languages there is similar design in Android and MeeGo automation test frameworks.

Page 18: Александр Качур - "Android и MeeGo: автоматизация тестовых сценариев"

18

Thank you!

Alexander [email protected]