boston meetup blaze_meter_feb2017

21
Boston Best Practices using open source for testing Eran Kinsbruner, @ek121268 Amir Rozenberg, @Amir_Rozenberg

Upload: perfecto-mobile

Post on 13-Apr-2017

4.421 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: Boston meetup blaze_meter_feb2017

Boston

Best Practices using open source for testing

Eran Kinsbruner, @ek121268Amir Rozenberg, @Amir_Rozenberg

Page 2: Boston meetup blaze_meter_feb2017

SHIFTING TO OPEN SOURCE, BENEFITS

MOBILE OSS MARKET LANDSCAPE, TOOLS, COMPARISON

DEMO!!!

OSS: BEYOND TESTING

Q&A

Page 3: Boston meetup blaze_meter_feb2017

What is automated

Mobile WebAutomation target

Cannot be automated

60%-90%20% 30% 100%

The gap we want to address

Degree of automation

Increased complexity and no timeMany teams with varying set of skills

2/8/2017

TestersDevTestersCoders

Page 4: Boston meetup blaze_meter_feb2017
Page 5: Boston meetup blaze_meter_feb2017

A Day in A Life –Real User Environments Is EssentialCan Any OSS Framework Handle Such Requirements?

Automation ought to cover the full user environment not just the Application Under Test!

Page 6: Boston meetup blaze_meter_feb2017

Which Tool is the best fit for you?

SELENIUM APPIUM CALABASH ESPRESSO XCTEST UI

When looking at today’s open-source mobile test automation landscape, there are five

highly-adopted test frameworks.

Each tool has advantages for your mobile and web testing depending on your needs.

Page 7: Boston meetup blaze_meter_feb2017

Making the DecisionA Comparison

Detailed analysis of each test

automation tool:

Sometimes More Than A

Single Framework is The Right

Answer

Page 8: Boston meetup blaze_meter_feb2017

Selenium

• The best choice for web test automation teams testing for responsive web design or stand-alone web sites

• Less suitable for developing unit testing, making this framework less appealing for developers

• On its own, Selenium core test reports are not highly informative and lack unique insights

Page 9: Boston meetup blaze_meter_feb2017

Appium

• Best suited for QA teams testing the functionality of native, mobile web and mobile hybrid apps across iOS and Android

• Less suitable for developers who wish to develop and perform unit testing

• Appium reports are a bit limited from a debugging and fast feedback loop perspective, and do not include videos, network logs and key vitals information

Page 10: Boston meetup blaze_meter_feb2017

Calaba.sh

• Designed for organizations that work in behavior-driven development workflows

• Does not cover the entire mobile system level events

• Offers an easy path to both develop and test features in parallel, all in an easy user-flow based language

• Appealing for both dev and QA practitioners

• Provides solid insights and reports to both dev and QA teams

Page 11: Boston meetup blaze_meter_feb2017

Espresso & XCTest UI• Both requires a separate Test App executable

• Espresso is for Android and XCTest is for iOS – not a single script

• Both tools are fully integrated into development IDEs such as Android Studio/Xcode, and offer very easy-to-develop techniques, including test recorders

• Fully maintained by Google and Apple, which assures they always support the latest OS features so developers can stay ahead of the market and test accordingly

• Support both unit testing types and functional UI testing

• Both are app-context only, which limits their abilities to test for user condition scenarios

XCTEST UIESPRESSO

Page 12: Boston meetup blaze_meter_feb2017

Things to Consider• Lab: Support for variety of frameworks is important for enterprises

• Flexibility• Autonomy• Complete E2E coverage• Unattended reliable testing

• Automation: support for multiple OSS frameworks becomes important• Different “persona’s” need different tools under 1 lab• Cross platform scripting• Robust framework to support high test coverage

• Analysis: Digital reporting is necessary for teams to take action and fix issues faster & earlier

When choosing a test automation tool

Page 13: Boston meetup blaze_meter_feb2017
Page 14: Boston meetup blaze_meter_feb2017
Page 15: Boston meetup blaze_meter_feb2017

Area Components Quantum

Management

Reporting

Execution Manager

Test Development

Test Authoring (IDE+Language)

Object Repository

Object Locator/Spy

Appium/Selenium✓OSS

=

✓OSS

✓OSS

http://projectQuantum.io

Page 16: Boston meetup blaze_meter_feb2017

Digital – Responsive Web Application

Page 17: Boston meetup blaze_meter_feb2017

DEMO – BDD OSS Framework

Page 18: Boston meetup blaze_meter_feb2017

Few other OSS-made mobile testing toys

Production Insight/ ”Testing in Production”

Network features: HAR file & NETEM

Some others:

• Security scans:

https://github.com/MobSF/Mobile-

Security-Framework-MobSF

• Deep visual analysis

• Etc.

Page 19: Boston meetup blaze_meter_feb2017

Q&A @Amir_Rozenberg@ek121268

Page 20: Boston meetup blaze_meter_feb2017

@Amir_Rozenberg@ek121268

Page 21: Boston meetup blaze_meter_feb2017

22

Open &

Integrated

Xcode

Selenium