logo logo

Front End Development & Unit Test Automation Trends!

main post image

In the past decade web front end development has rapidly evolved and single page applications became a standard. The applications implementation roamed to the client side and as a result, JavaScript based frameworks became highly popular. TestProject conducted a survey to shade some light on the current front end development technologies and unit test automation trends. The survey reveals the most popular frameworks and tool preferences of software professionals.  957 stakeholders have participated in this survey, and here are the impressive results!

Survey Methodology
  • An online survey was sent to 2,735 stakeholders of whom 957 have responded.
  • Data collection dates: 25.07.2016-20.08.2016
  • Aimed group: Web front-end developers, Full-stack developers, Software team leaders, Q/A automation team leaders, Test automation engineers and Management.
  • Organization size: 1-10, 10-60, 60-100, 100+
Insights
  • Currently, 80% of web development is dominated by 2 technologies; this dramatic change took effect during the last 6 years!
  • ReactJS became a significant force in front end web development field over the last three years, ever since it came out in May 2013.
  • JavaScript based unit testing turned out to be a highly effective testing method, with 71% of organizations performing JavaScript unit tests and 84% believe it’s beneficial!
  • Jasmine and Mocha are the most popular JavaScript unit testing frameworks, while Jasmine is mainly paired with AngularJS and Mocha with ReactJS.
Apples to apples?  ReactJS Vs. AngularJS

ReactJS Vs. AngularJS TestProject's survey results

**AngularJS covers all versions: AngularJS1.XX/2.XX

Comparing ReactsJS and AngularJS (the first is a library while the second is a framework) sounds strange at first. However, it does make perfect sense if you treat them as development methodologies. While AngularJS based on tightly coupled architecture, ReactJS provides the freedom of choice. Many participants stated that they use AngularJS 1.XX for legacy products and ReactJS for new generation products. Based on this feedback and the exponential growth of ReactJS in the last 2 years, we expect nothing less than for it to become the first choice  JavaScript framework for many front end developers in the upcoming year of 2017!

Front end development methods

 Front end development methods TestProject's survey results

Although it didn’t come as a total surprise, it was still interesting to discover that two technologies dominate the entire front end development market. Moreover, about 80% of the recently developed web sites are utilizing one of the two technologies: AngularJS/ReactJS.

Do you believe front end unit testing is an effective approach?

Unit test automation tools: Do you believe frontend unit testing is an effective approach - TestProject

The majority of participants stated that they find test automation in general and JavaScript unit testing in particular highly efficient. We believe that one of the main reasons for this, is the popularity of highly complex JavaScript based frameworks and applications. This high level of complexity can explain the natural growth of the JavaScript unit testing frameworks market.

 Do you implement JavaScript unit testing?

Unit test automation: Do you implement JavaScript unit testing - TestProject

Another interesting insight of our survey  is that JavaScript unit testing is more popular within large organizations. One of the reasons for this may be that larger organizations deal with bigger scale products and frequent feature releases. This continuous delivery approach forces the organization to invest in testing automation and more specifically, unit testing to increase overall product quality.

Organization size Unit testing implementation – %
1-10 56%
10-100 69%
100+ 81%
 Popular JavaScript unit testing frameworks

 Popular JavaScript unit test automation frameworks - TestProject survey results

The leading unit testing frameworks are Mocha, Jasmine and Karma. Below are the most popular feedbacks by our survey stakeholders:

Unit testing automation framework Pros Cons
 

Jasmine

 

– Simple setup for node
– Built in syntax for assertions      and good support for 3rd              part assertions library
– Improves with every update
-Slow learning curve

 

 

Karma

 

-Reliable

-Easy to use

-Re-running takes time

 

 

Mocha

-Robustness

-Strong community support

-Same syntax for front-end /back-end unit testing

-Slower learning curve

-High complexity

 Popular unit testing frameworks AngularJS/ReactJS/Vanilla JavaScript  

Unit test automation tools: Popular unit testing frameworks AngularJS ReactJS Vanilla JavaScript - TestProject

The most fascinating fact here is the diversity.  There isn’t a definite  leader for a specific technology. Some of the tools were originally targeted for AngularJS (such as Protractor & Karma) but eventually are widely used for ReactJS as well.

The most popular JavaScript unit testing tool combinations are:

Jasmine & Protractor (72.4%), **Jasmine & Karma (67.7%), Jasmine & Jest (58.3%), Karma & Protractor (58.6%).

 

**To deeply understand why Jasmine and Karma are a great match for JavaScript unit testing, continue reading here.


Share your thoughts with us! 😉

What results were you expecting?

What was the most surprising finding for you?


 

Mark Kardashov

About the author

Mark Kardashov

Test automation enthusiast, entrepreneur, snowboard fan and CEO of TestProject. Has more than 10 years of experience in the testing and test automation field.

Join TestProject Community

Get full access to the world's first cloud-based, open source friendly testing community. Enjoy TestProject's end-to-end test automation Platform, Forum, Blog and Docs - All for FREE.

Join Us Now

Comments

17 13 comments
  • Front End Development & Unit Test Automation Trends! · TestProject – AngularJS News September 11, 2016, 10:01 am

    […] Front End Development & Unit Test Automation Trends! · TestProject […]

  • Front End Development & Unit Test Automation Trends! · TestProject – ReactJS News September 17, 2016, 12:00 am

    […] Front End Development & Unit Test Automation Trends! · TestProject […]

  • Front End Development & Unit Test Automation Trends! – AngularJS News September 27, 2016, 3:47 pm

    […] Front End Development & Unit Test Automation Trends! […]

  • Angular.JS or React.JS - Austalian Employers Weigh In | The Martec April 20, 2017, 3:39 am

    […] use Angular.JS or React.JS technologies for front end development. In this recent test project survey of 957 stakeholders, 80% of front-end web development was found to be dominated by these two […]

  • Essential Skills for Landing a Test Automation Job in 2018 — SitePoint November 15, 2017, 5:45 pm

    […] JavaScript continues to maintain its popularity, mainly due to the rise in implementation of JavaScript development frameworks and libraries such as ReactJS & AngularJS – two technologies that dominate the entire front-end […]

  • Essential Skills for Landing a Test Automation Job in 2018 | Viralizer Network Blog | Viralizer Network Blog November 16, 2017, 3:28 am

    […] mainly due to the rise in implementation of JavaScript development frameworks and libraries such as ReactJS & AngularJS – two technologies that dominate the entire front-end development […]

  • How to Test Your JavaScript with Selenium WebDriver and Mocha — SitePoint January 16, 2018, 6:15 pm

    […] As mentioned, Mocha is a JavaScript test framework that runs tests on Node. Mocha comes in the form of a Node package via npm, allowing you to use any library for assertions as a replacement to Node’s standard ‘assert’ function, such as ChaiJS. In addition, Mocha has several similar components to Jasmine, another popular test automation framework which we’ve mentioned in our research for Front End and Unit Test Automation Trends. […]

  • How to Test Your JavaScript with Selenium WebDriver and Mocha | Premium Blog! | Development code, Android, Ios anh Tranning IT January 16, 2018, 6:56 pm

    […] As mentioned, Mocha is a JavaScript test framework that runs tests on Node. Mocha comes in the form of a Node package via npm, allowing you to use any library for assertions as a replacement to Node’s standard ‘assert’ function, such as ChaiJS. In addition, Mocha has several similar components to Jasmine, another popular test automation framework which we’ve mentioned in our research for Front End and Unit Test Automation Trends. […]

  • How to Test Your JavaScript with Selenium WebDriver and Mocha | Geek Tech News January 17, 2018, 3:05 am

    […] As mentioned, Mocha is a JavaScript test framework that runs tests on Node. Mocha comes in the form of a Node package via npm, allowing you to use any library for assertions as a replacement to Node’s standard ‘assert’ function, such as ChaiJS. In addition, Mocha has several similar components to Jasmine, another popular test automation framework which we’ve mentioned in our research for Front End and Unit Test Automation Trends. […]

  • Cómo Probar Tu código JavaScript con Selenium WebDriver y Mocha - Bordocs January 17, 2018, 8:26 pm

    […] Como se ha mencionado, Mocha es un JavaScript en el marco de prueba que se ejecuta pruebas en el Nodo. Mocha viene en la forma de un Nodo paquete a través de mecanismo nacional de prevención, lo que le permite utilizar cualquier biblioteca de afirmaciones como la sustitución del Nodo estándar ‘afirmar’ función, tales como ChaiJS. Además, Mocha tiene varios componentes similares a Jazmín, otro popular test automation framework que hemos mencionado en nuestra investigación para la parte Delantera y Prueba de Unidad de Automatización de las Tendencias. […]

  • https://www.slant.co/topics/4506/~javascript-unit-testing-frameworks – Site Title May 10, 2018, 12:41 pm
  • Selenium + JavaScript Best Practices | Automation Boot Camp January 21, 2019, 4:23 pm

    […] frameworks are becoming more and more popular among other frameworks. Nowadays, JavaScript is a widely used language for web application development, and even back-end developers prefer JS rather than any other […]

  • Top Open Source Test Automation Frameworks June 10, 2019, 12:22 pm

    […] Jasmine is a JavaScript unit testing framework. It is also known as a Behavior Driven Development (BDD) testing framework for JavaScript. It’s suited for websites, Node.js projects, or anywhere JavaScript can run. It is mainly paired with AngularJS. […]

Leave a Reply

Join TestProject Newsletter

Join a 20K community of readers! Always stay up-to-date with all the latest test automation trends, best practice and tips shared by leading software testing community experts across the globe!

FacebookLinkedInTwitterEmail