Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

20170529 clem kazuaki_matsuo

533 views

Published on

Talk about tips for Android/iOS UI Testing

Published in: Software
  • Be the first to comment

20170529 clem kazuaki_matsuo

  1. 1. Tips for stable UI Testing #5.2 Creators Learning English Meetup for Mobile by @Kazu_cocoa
  2. 2. Kazuaki Matsuo( @Kazu_cocoa) 🏢: Cookpad Inc. Test Engineer / Software Engineer in Quality Lang: / / / Maintainer: Appium Ruby binding
  3. 3. Have you heard the word, flaky tests?
  4. 4. Do you know of flaky tests?
  5. 5. A definition We define a "flaky" test result as a test that exhibits both a passing and a failing result with the same code. by John Micro http://www.cs.umd.edu/~atif/pubs/gao-icse15.pdf https://testing.googleblog.com/2016/05/flaky-tests-at-google-and-how-we.html
  6. 6. User Interface Testing
  7. 7. User Interface Testing User interface (UI) testing lets you ensure that your app meets its functional requirements and achieves a high standard of quality such that it is more likely to be successfully adopted by users. https://developer.android.com/training/testing/ui-testing/index.html
  8. 8. User Interface Testing One approach to UI testing is to simply have a human tester perform a set of user operations on the target app and verify that it is behaving correctly. https://developer.android.com/training/testing/ui-testing/index.html
  9. 9. User Interface Testing A more efficient approach is to write your UI tests such that user actions are performed in an automated way. The automated approach allows you to run your tests quickly and reliably in a repeatable manner. https://developer.android.com/training/testing/ui-testing/index.html
  10. 10. Automated UI tests have many flakinesses
  11. 11. Flakinesses in UI Tests • animations • network • and other environments…
  12. 12. Flakinesses in UI Tests • animations • network • and other environments…
  13. 13. How to reduce the flakiness https://developer.android.com/training/testing/ui-testing/espresso-testing.html
  14. 14. Only by manual
  15. 15. Can’t we automate it, can we?
  16. 16. Yes, we can.
  17. 17. Automation at Cookpad http://techlife.cookpad.com/entry/2016/08/13/test-size-for-mobile
  18. 18. adb commands $ add shell settings put global window_animation_scale 0 $ add shell settings put global transition_animation_scale 0 $ add shell settings put global animator_duration_scale 0 https://github.com/KazuCocoa/droid_adbs
  19. 19. Via API https://github.com/KazuCocoa/DroidTestHelper
  20. 20. For iOS Engineers
  21. 21. We can implement similar tips for the iOS platform
  22. 22. With EarlGrey
  23. 23. Step into enableFastAnimation https://github.com/google/EarlGrey https://developer.apple.com/reference/quartzcore/camediatiming/1427647-speed
  24. 24. Have a good CLEM time

×