Your developers like to write code. Chances are good that they are not as passionate about testing the code that they produce. That’s where our team of highly trained Quality Assurance Leaders and their team of Software Testers can be of service.

We founded Tenomad with Total Quality Control as our mantra. We’ve brought manufacturing control principles to the software development industry.

Our functional testing process identifies and validates the functions that the software code is expected to perform.
  • We create input data based on the function’s predetermined specifications
  • We create a list of the expected output based on the function’s specifications
  • We execute the test case
  • We compare the actual and expected outputs
  • We verify whether the application worked as expected

Functional testing comes in a variety of flavors

  • Smoke Testing – is preliminary testing to reveal simple failures severe enough to (for example) reject a prospective software release. A smoke tester will select and run a subset of test cases that cover the most important functionality of a component or system, to ascertain if crucial functions of the software work correctly
  • Sanity Test – is a basic test to quickly evaluate whether a claim or the result of a calculation can possibly be true. It is a simple check to see if the produced material is rational (that the material’s creator was thinking rationally, applying sanity). The point of a sanity test is to rule out certain classes of obviously false results, not to catch every possible error. A rule-of-thumb may be checked to perform the test. The advantage of a sanity test, over performing a complete or rigorous test, is speed.
  • Regression testing is a type of code testing that verifies that software which was previously developed and tested will still perform correctly after it has been changed or modified. Such changes include software enhancements, patches, configuration changes, etc. During regression testing, new software bugs or regressions may be uncovered. Sometimes a software change impact analysis is performed to determine what areas could be affected by the proposed changes. These areas may include functional and non-functional areas of the system. The purpose of regression testing is to ensure that changes such as those mentioned above have not introduced new faults. One of the main reasons for regression testing is to determine whether a change in one part of the software affects other parts of the software.
  • Usability Testing – is a technique we use to evaluate a software product by testing with live users in a controlled and recordable environment. This practice gives us direct input on users will interact with the system, often in ways that were unforeseen.


In software testing, Automation Testing involves the use of custom written software to control the execution of tests and the subsequent comparison of actual results with their predicted outcomes. It is imperative that the testing software is created independently and separate from the software that is being tested.
Our Quality Assurance team is particularly adept at using Selenium, which is a popular open-source automated web testing tool and that helps automate web browsers across multiple platforms.


Some projects simply require a human touch. When the user interface of a software program changes often, it can make automation testing inefficient. That’s where our team of Manual Testers can be irreplaceable. We carefully design a test plan, and then use the software the way your audience would — like humans. Many times we uncover design flaws that are too subtle to be caught any other way.


Software test automation to determine when a software application will begin to suffer and perform poorly under increasing numbers of users or transactions.