Quality Assurance and Testing Services

We apply quality assurance and testing services to all software we write, checking the quality of mobile and web apps as well as server-side software.

Geeks Invention provides quality assurance and testing for mobile applications, web applications and server-side software. That covers test strategy, manual and automated testing, and the quality gates that run before a release. QA can run as a standalone engagement against software someone else built, or as part of a full delivery team.
Mobile app testing
Backend testing
Web app testing

Real device testing

We run your app on a variety of real devices that we select based on manufacturer, operating system, and popularity in your target market.

Wearable
Mobile
Tablet
Desktop

Product quality criteria

To quantify the results of our work, we use non-functional requirements that characterize the overall quality of the system based on so-called quality attributes.

functionality
compatibility
usability
efficiency
reliability
security
maintainability
portability

Effective testing process

Requirements validation

We conduct business requirement analysis based on the Guide to the Business Analysis Body of Knowledge®, which results in a specification and wireframes. Our QA specialists validate the requirements before development begins.

Test design & planning

All QA and testing activities are documented in the test strategy document that lists test environments, types of testing, and criteria for the start and end of testing. We store all information about tests in TestRail.

Test environment setup

The test environment includes test devices, OS versions, and apps that are involved in the testing process and have to be installed on devices. During this stage, our QA specialists ensure that the testing environment is ready.

Test execution

As soon as a chunk of functionality is implemented, we begin testing new features to verify that they work properly. We run functionality testing, regression testing, smoke testing, and a number of non-functional tests according to the test plan and checklist.

Automated testing

For projects that take more than six months to develop, we automate smoke testing, regression testing, and performance testing. We choose the most cost-effective test automation tools and processes.

Test reporting

We use Jira and TestRail to make our testing process visible. After each sprint, we present builds to our clients along with release notes showing our progress. We’re open with our clients about our development challenges.

Test management

We make our testing process clear and transparent to our clients with the help of regular progress reports and test tracking tools.

To do
Resolved
In progress
To test
Bug status
Test runs

Regular TestRail reports show the number of test runs and their results: passed, blocked, retest, failed, not ready, skipped, or fix in progress.

Crash statistic

With Crashlytics, we get crash reports that provide us with deep insights into the number of crashes and the issues that caused the app to crash.

Top-level metrics

We use Fabric to track metrics on users, sessions, and crash-free users, or the percentage of daily active users that had a crash-free experience on a given day.

Types of testing we use

We choose types of testing depending on the project specifics. Our QA specialists test both frontend and backend components.

Functionality testing

Compatibility testing

UI testing

Installation/update testing

Interruption testing

Localization testing

Automation testing

Performance testing

Tools we use

We use a variety of tools and technologies for API testing, automated testing, visualization, and reporting.

Common questions

Can you test software your team did not build?

Yes. A standalone QA engagement against an existing product is a common starting point, and it is often the fastest way to find out how healthy a codebase actually is.

Do you do manual testing, automated testing, or both?

Both, and the split is a judgement per product. Automation earns its cost on stable, repeatedly executed paths. Exploratory manual testing finds the problems a script was never written to look for, and a suite of automated tests will not surface a confusing interface.

What kinds of testing are covered?

Functional, regression, integration, compatibility across devices and browsers, performance, and usability. Security testing is handled as its own discipline rather than folded into functional QA.

When should QA start?

Before there is anything to test. The most expensive defects are decisions, not code, and they are cheapest to catch while the requirements are still being written.