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.

Trust Your Pipeline - Automatically Testing and End-to-End Java Application

This is a presentation for you that need to learn about testing in other levels than the unit and integration testing and the importance of a testing pipeline in your project.
Bruno Souza and I presented this on JavaOne Conference 2017 in San Francisco on 02/09/2017

Trust Your Pipeline - Automatically Testing and End-to-End Java Application

  1. 1. Trust Your Pipeline: Automatically Testing an End-to-End Java Application Bruno Souza | @brjavaman Elias Nogueira | @eliasnogueira
  2. 2. Different Test Levels Unit Tests Component Tests Integration Test API Test Web Mobile UI Static Analysis Code coverage Stubs Mocks Services UI Tests Visual Regression Test Test Pyramid – Focus on Automated Testing
  3. 3. Different Test Levels Test Pyramid – Focus on Automated Testing Unit Tests Component Tests Integration Test API Test Web Mobile UI Machines for web execution Devices for mobile executions Servers ”mid” tests
  4. 4. Continuous Delivery Development QAOperations DevOps Automated Build and DeployAutomated Provisioning Continuous Feedback Automated Testing
  5. 5. Strategy focus on a Test Pipeline UNIT TEST INTEGRATION TEST SERVICE TEST ACCEPTANCE TEST FUNCTIONAL TEST MOCK SMOKE WEB MOBILE NON FUNCTIONAL TESTS SCREENSHOTS – LOGS – REPORT – DATA MANAGEMENT - PARAMETERIZED PARALLEL EXECUTION SMOKE CONTRACT FUNCTIONAL ACCEPTANCE
  6. 6. REST ASSURED + JAVA SPARK (mock) REST SELENIUM WEBDRIVER WEB APPIUM with EMULATOR MOBILE REST ASSURED for test an REST endpoint SELENIUM WEBDRIVER for a Web Test (functional and acceptance) APPIUM for Mobile Test (functional and acceptance) Tool box Tools for think about test out-of-the-box
  7. 7. Now it’s time to see the tools in action Example
  8. 8. REST Assured RestAssured test example Sending a GET with id 1 (given) and the assert the response/results (then) Easy DSL to automating REST services that’s use Given-When-Then syntax https://github.com/jayway/rest-assured
  9. 9. Selenium WebDriver Easy DSL to automating REST services that’s use Given-When-Then syntax https://seleniumhq.org Selenium automated testing example Complete example with navigation, localization, manipulation and synchronization
  10. 10. Appium Tool for automated testing on native Android, iOS or Hybrid mobile apps https://appium.io Example with a pre-installed app Complete example targeting an Android platform
  11. 11. Applied Pipeline We gonna show this magic! SERVICE TEST ACCEPTANCE TEST FUNCTIONAL TEST MOCK WEB MOBILE SMOKE FUNCTIONAL
  12. 12. Thank you https://github.com/eliasnogueira/ test-automation-javaone-2017 http://code4.life

×