Test Automation Frameworks

Test Automation Frameworks

In order for us to discuss test framework and test automation frameworks we need to first define what a  framework is.  A test automation framework is the environment that automation tests are built in.  For example a framework could be Selenium WebDriver Java-based using IntelliJ.  This framework could be testing a Node.js website, and uses Jenkins for the CI, with SauceLabs as the cloud based testing systems that RemoteWebDriver uses to execute tests.  Now there are many more parts to this but basically this is a description of a framework.  Some groups my use SitePrism, with Capybara, Selenium WebDriver on a Ruby-based script.  Describing your environment and what tools and techniques you are using is your testing framework.  Now that said there are almost countless options for a test automation framework/environment.  If you are looking to have a resume builder in today’s market for late 2016 you simply add JavaScript, Clojure, and Selenium to your resume and BAM! You will start getting calls left and right.  Please take note I am in the Phoenix, AZ area so my view of the market is from a certain perspective and this will differ depending on where you are in the country.  

In order to build out the right environment one must take a number of things into consideration.  In our case the Phoenix market is currently very low on QA resources.  There are far more jobs available then there are people able to fill them.  As such I am now starting to see 100% remote resourcing starting to take hold.  This can be good but there may be something lost to the distributed teams dynamic.  In either case having Github oversee your version control, with a solid IDE, and a good CI builder will get any software group started in the right direction.

As an automation engineer the next thing is your environment.  Are you working on desktop applications, web apps, or mobile apps?  Obviously Selenium is not a good choice if you are focused on a desktop application, or in the case where you are using only mobile applications then you may want to look at Appium (a Selenium based interpreter for mobile apps).

From this point you will need to look at your existing resources.  So if you have mainly Java Developers and your budget is low I would suggest Selenium with a Java-based style, and wrapped with TestNG for annotations.  However in the case where you have Ruby developers and JavaScript front end, you may want to use Capybara with SitePrism on Selenium for test automation.  Almost all CI tools work with these other tools.  If you are a Microsoft shop and you love your Team Foundation Server with Visual Studio and Telerik then you have an advantage where you have support and a complete eco-system for development, test, and ops.  You will inherently have DevOps with QA/Testing integrated.  In the open source world management has seen the short term benefits of no upfront cost to tool purchase with Java and Clojure type of platforms.  Of course, over time these can be difficult to maintain with turnover.  Too many cooks in the kitchen if you will.

In the end it's a good idea to surround yourself with smart people, similarly minded, and passionate about what they are doing.  With those things the Framework will work itself out.  Make no mistake there will be hurdles and bumps along the way, but if it was perfect then we would have no new software tools.



Gerry Isaacson, MBA

Entrepreneur, President and Contract QA Consultant

8 年

... for Open Source environments only,

回复

要查看或添加评论,请登录

Bob Small的更多文章

  • Sharing a little Secret

    Sharing a little Secret

    In 2014, I was working at AAA-NCNU, which is the American Automotive Association Northern California Nevada and Utah…

    1 条评论
  • Vetting Interns, a practice in your Efficency

    Vetting Interns, a practice in your Efficency

    This year marks my 3rd year speaking at Arizona State University. I take time to visit and chat with CSE (Computer…

  • What's in your toolkit.

    What's in your toolkit.

    As I sit at my computer ready to take on a new project I start to think about the tools I will use for testing this new…

    2 条评论
  • A new focus: Continuous Delivery and Context-Driven Testing

    A new focus: Continuous Delivery and Context-Driven Testing

    I have a very full inbox. My email account receives about 5-10 emails every 15 minutes.