Testing tools

What is it?

As a customer, you do not necesssary need to know about software testing tools, but it is good to know that an application – before it lands in its final place in the production environment – goes through a long testing process. Although there are many different type of testing-techniques only few are carried out by human, the majority of the tests are executed by machines, they are called automated tests. The tools we have collected below are for helping developers creating automated tests.

Why do we use it?

The short answer is because we want to deliver bug-free product for you. Actually it is not the only reason why we prefer the automated testing. Most of the applications we develop are just too complex to be able to test them manually, so it worth the investment of automating the manual tests. Using automated tests makes the testing deterministic and it can shorten the development lifecycle.

How can you benefit from using it?

As it was written above, automated tests can shorten the development lifecycle. At the end of the day it results faster delivery, more economical development costs and smaller risks of having hidden bugs in the software.

Our experience with testing

Most of our software products we write are web based applications. Web based applications are built from two pilars: the client side and server side. There are different tools for testing just the server / backend side and the client / frontend side and again, there are others that can help is to write so called end-to-end tests that covers the whole application.

  • JUnit
    JUnit is a simple framework to write repeatable tests in Java. We use it on a daily base to test our server side software.
  • Karma
    Karma is a simple tool that allows the developer to execute JavaScript code in multiple real browsers.
  • Jasmine JS
    Jasmine is a Behavior Driven Development testing framework for JavaScript. It does not rely on browsers, DOM, or any JavaScript framework.
  • Selenium
    Selenium is a browser automation tool that can be used for end to end testing.