Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Daily in the life of a TE in Vidio

KMKLabs
December 21, 2018

Daily in the life of a TE in Vidio

‌As test engineering at vidio.com, we responsible for delivering story (e.g features, bug fixing), validating mobile apps release, do daily deployment to production, and ensure our application is working well on multiple platforms. We also develop automated tests for desktop & mobile web, video playback, bbm vidio, mobile apps (android & IOS), as well as APIs. In agile, code is changed and compiled frequently, hence we must make sure that existing features are not broken due to frequents build. Therefore, it is to be important to keep our test always 'green'.

KMKLabs

December 21, 2018
Tweet

More Decks by KMKLabs

Other Decks in Programming

Transcript

  1. Outline • Introduction to software testing • Web development life

    cycle • Mobile apps development life cycle • Challenges • Automated testing demo!
  2. Introduction to software testing • What is software testing? A

    set of processes aimed at investigating, evaluating and ascertaining the completeness and quality of computer software. There are some levels and types of software testing and scope of test engineering is user acceptance testing (validating user requirement)
  3. Why is it important? • We need more than just

    manual testing to ensure that our product are free less of bugs, error, and failures • Save cost and time but still able to build fabulous software.. • We are in agile! continuous integration, continuous development, continuous deployment, and .. continuous testing! • Maintain existing features are working fine despite there are development of new features. • Testing in multiple platforms
  4. What does TE do in vidio? 1) Manual testing 2)

    Deploy to production (web only) 3) Automated testing, such as: Web: cms/dashboard menu, web desktop, web mobile, bbm vidio, playback, and API test -> on going Apps: android and IOS
  5. IPM (Iteration Planning Meeting) Invest new features (product manager, designer,

    developer, test engineer) Monitoring Acceptance testing for every deployment in staging and production Deploy to Staging a. Get new tag revisions b. Manual testing c. Automation testing (desctructive & non desctructive features) Deploy to Production a. ELB b. Switching Canary Testing a. Manual testing b. Automation testing (non desctructive features) Web Development Life Cycle Web development life cycle
  6. Plan Invest new features (product manager, designer, developer, test engineer)

    Release It is time to launch in market! yey! Code Write codes to develop new features, fix bugs, improve performance Test Manual and automation testing. Write new test case / refactor test case based on updated features Build Build .apk & .ipa Apps Development Life Cycle Mobile apps development life cycle
  7. Challenges • Different test result between local and CI (mostly

    due to geo block, timeout) • If any changing in element identifier.. • Very depending on network connection (e.g buffering, failed / take long time to render a video) • Automated testing for multiple platforms (e.g various web browser, native apps for android and IOS) • CPICK (cherry pick) tag for deployment • High / low traffic when switching
  8. Automated testing demo! User acceptance test: • user purchase a

    favourite packages, • do payment (in this case we are using DANA Balance as a payment method), • Yey, our packages is active! • verifying in transaction histories page.