Story Testing Approach for Enterprise Applications using Selenium Framework Oleksiy Rezchykov February 2011
Plan • About me • The Problem • Solution • Conclusion • Q&A
About me • Oleksiy Rezchykov • Java Software Engineer • Team Lead • Agile & Lean enthusiast • Lohika Systems
The Problem To release a BIG product
What is a BIG product? Several platforms
What is a BIG product? Multiple distributed teams
What is a BIG product? • Different processes (Iterative and not)
What is a BIG product? Dozens of features
What is a BIG product? One codeline
What is a BIG product? Releases every 2-3 weeks
How the features usually are released Implemented Tested Bugs fixed after the test Tested after fix And … Regression
Integration with the trunk Tested Bugs fixed after the test Tested after fix And … Regression
The release branch is created Tested Bugs fixed after the test Tested after fix And … Regression
The Problem : Summary Activity Performed (# times) Tested 5 Bugfix 3 Regression 3
Solution : At low level • Automated frontend tests using Selenium RC • PageObject pattern for Selenium infrastructure • BDD Tool (Concordion) • TestNG
Solution : At low level
Solution : At low level
Solution : At low level
Solution : At low level
Solution : At low level
Solution : Overview TestNG suite Concordion Selenium RC scenario server PageObject Selenium methods Driver
Solution : Process level • Continuous Integration Server
Solution : Process level • REST API called StoryTest Set-Up SetUp Page REST API PageObject Object Resource
Solution : Process level • REST API called StoryTest Set-Up
Solution : Overview Selenium Selenium RC CI job Driver server PageObject Maven goal methods Concordion TestNG suite scenario
Solution : Process level • Feature Flags
Solution : Process level • Regression suite is formed using previous release StoryTests
Solution : Process level • No testers only QA Developer + Tester = PD
Conclusion Selenium is a powerful tool – learn to use it.
Conclusion Let it be the part of your process
Contacts http://ua.linkedin.com/in/arezchikov orezchykov@lohika.com alex.mcgray@gmail.com arezchikov
Q&A ???

Story Testing Approach for Enterprise Applications using Selenium Framework

  • 1.
    Story Testing Approachfor Enterprise Applications using Selenium Framework Oleksiy Rezchykov February 2011
  • 2.
    Plan • About me • The Problem • Solution • Conclusion • Q&A
  • 3.
    About me • Oleksiy Rezchykov • Java Software Engineer • Team Lead • Agile & Lean enthusiast • Lohika Systems
  • 4.
    The Problem To release a BIG product
  • 5.
    What is aBIG product? Several platforms
  • 6.
    What is aBIG product? Multiple distributed teams
  • 7.
    What is aBIG product? • Different processes (Iterative and not)
  • 8.
    What is aBIG product? Dozens of features
  • 9.
    What is aBIG product? One codeline
  • 10.
    What is aBIG product? Releases every 2-3 weeks
  • 11.
    How the featuresusually are released Implemented Tested Bugs fixed after the test Tested after fix And … Regression
  • 12.
    Integration with thetrunk Tested Bugs fixed after the test Tested after fix And … Regression
  • 13.
    The release branchis created Tested Bugs fixed after the test Tested after fix And … Regression
  • 14.
    The Problem :Summary Activity Performed (# times) Tested 5 Bugfix 3 Regression 3
  • 15.
    Solution : Atlow level • Automated frontend tests using Selenium RC • PageObject pattern for Selenium infrastructure • BDD Tool (Concordion) • TestNG
  • 16.
    Solution : Atlow level
  • 17.
    Solution : Atlow level
  • 18.
    Solution : Atlow level
  • 19.
    Solution : Atlow level
  • 20.
    Solution : Atlow level
  • 21.
    Solution : Overview TestNG suite Concordion Selenium RC scenario server PageObject Selenium methods Driver
  • 22.
    Solution : Processlevel • Continuous Integration Server
  • 23.
    Solution : Processlevel • REST API called StoryTest Set-Up SetUp Page REST API PageObject Object Resource
  • 24.
    Solution : Processlevel • REST API called StoryTest Set-Up
  • 25.
    Solution : Overview Selenium Selenium RC CI job Driver server PageObject Maven goal methods Concordion TestNG suite scenario
  • 26.
    Solution : Processlevel • Feature Flags
  • 27.
    Solution : Processlevel • Regression suite is formed using previous release StoryTests
  • 28.
    Solution : Processlevel • No testers only QA Developer + Tester = PD
  • 29.
    Conclusion Selenium isa powerful tool – learn to use it.
  • 30.
    Conclusion Let it be the part of your process
  • 31.
    Contacts http://ua.linkedin.com/in/arezchikov orezchykov@lohika.com alex.mcgray@gmail.com arezchikov
  • 32.
    Q&A ???