Mobile Testing Challenges at Zalando Tech

19
Mobile Quality Challenges At Zalando Dmitry Bespalov <[email protected]> Hendrik Seffler <[email protected]>

Transcript of Mobile Testing Challenges at Zalando Tech

Mobile Quality Challenges At Zalando

Dmitry Bespalov <[email protected]>Hendrik Seffler <[email protected]>

Zalando facts

Carolin Kuehnel
+130 million visits per month, no comms of new customers

Zalando facts

Zalando mobile apps facts

Zalandos mobile offerings

Developed by dedicated team

Developed across multiple teams

Developed by dedicated team

iOS Android Mobile site

Team setup

Each team is autonomous and responsible for its deliverables.Slightly different development and testing approaches everywhere

Mobile Testing Pyramid

Source: http://www.ministryoftesting.com/2014/10/mobile-test-pyramid/

iOSDmitry Bespalov • iOS Engineer

● Objective-C & Swift project

● 7 developers

● Giflow workflow

Setup

Testing

● Unit tests (TDD)● End to end integration tests● Continuous integration

○ Jenkins○ Xcode server○ TravisCI

● Testing of iOS beta SDKs

Testing

● Code review

● Bug bashing

● Post-release monitoring

○ Fabric

○ AppStore reviews

Safety nets

● Ensuring quality is a multi-staged process

● Test automation is a key component

● Code reviews and bug bashing before release

● Crashes and app store reviews

iOS Summary

Android

espresso - “a fun little Android UI test API”

● few unit tests● espresso based UI-tests (run on emulators)● manual testing on real devices

Zalandos mobile website

For users that do not have the app installedTargeted from Google searches

Initially developed by a dedicated teamWe faced several challenges

Quality by organisational changes

Responsibility moved to multiple teamsEach team has to think about mobile

Establish “mobile first” mindset

Testing the mSite

● Manual testing○ browser developer tools○ physical devices○ saucelabs

● Automated○ Appium

■ local■ saucelabs

Conclusion

● Quality is a team responsibility● Automated testing plays important role in

ensuring quality● Use all kind of testing: unit tests, end-to-

end, manual● Implement development best practices to

have safety nets