share

ENGINEERING

5min read

Agile Approach to Testing: Why Do You Need It in Your Digital Project?

Have you ever wondered why some mobile applications are successful, while the others are only… good enough? The overall concept is what really matters here. The general idea has to answer a client’s need, it has to be researched and documented during the workshops. What’s even more important, is the first impression of the product: how was it designed and how user-friendly it really is. This is how you distinguish a standard app from an awesome app. The quality of an application can be evaluated with the above criteria through testing. In our office, testers participate in every part of the app development process to achieve an optimal and usable end-product. In this article, we will unveil some lesser-known testing operations that take place during the app development one step at a time… And who knows, you might find some of them useful for your business.

Testing in Polidea

Polidea operates as one, big organism. If designers are the brain, developers are the muscles and testers—the senses. As testers, we are here to report when we find discrepancies between the core idea of a product and the final implementation of mobile apps, but also to participate in the development process itself. We uphold the quality of every single element crafted by the team to fully satisfy our partners’ needs.

image.png

Product focused

It is very important for us to have a deep understanding of what the end-product should look like. We need to fully visualize the concept idea, the project goals and requirements. This is why we get involved in the project from day one, till the finish line and the product release. When it comes to projects with a parallel development on different platforms (backend, web apps, Android, iOS etc..) we work on two operating systems at the time to easily spot the differences between user interfaces or functionalities. At first, everything can seem fully functional, only a thorough comprehension of the ins and outs of a product enables us to visualize the differences, which we can then signal to the developers or designers to correct.

Teamwork

Software development and design process are team sports and so is testing. Only the best teams consist of different individuals and their specific set of skills and abilities. But the whole is always greater than the sum of its parts. That’s why in Polidea we practice several testing activities to spread and share our knowledge with members of the tester team. Once a week, all the testers organize a meeting, where they discuss what’s happening in each project we are reviewing. And the second point is to share knowledge, tools, best practices and news from the testing world. Moreover, during our daily work we do pair testing sessions and testing code reviews.

Agile

The tech world around us is constantly evolving. Consequently, the whole testing know-how about solving new challenges becomes more and more complex. Each project is different and we have to fit all clients’ needs. If a client prefers to work in a slightly different way than what we are used to, then we are always trying to adjust as much as possible. We are agile. We strongly believe that the best practices emerge from this way of working in a dynamic environment; project-related rather than a strict testing process. It’s not only about the methods that we implement but also about the frameworks and tools that we use.

image.png

Think out of the box

Here in Polidea we, testers, check the overall look and usability. The user experience is the strongest factor that will determine if the app will be successful after its market release. We check all the possible paths and events that may occur. The first part of our working process is to recreate the “happy” path—or when the flow that was described by the client is taking place. However, this is only the tip of the iceberg and when building mobile applications that are spread to large audiences, you will always find users who interact wth them in their own way. That is why we need to focus on all possible user’s scenarios. Handling exceptions is key here. We have to secure all possible paths, provide exception errors and feedback to the end users.

image.png

Test automation

Manual tests are very useful in terms of exploratory testing and finding edge cases while thinking out of the box, but actually, the most powerful tool that we’re using is test automation. When it comes to complex projects, a test automation helps you avoid regression issues. Additionally, it can also examine the solution security and perform load tests. While performing integration tests we are checking all mobile platforms, backend and web apps at the same time. As we have already defined what is stable and what is a desirable behavior, we can easily check if a new implementation has any influence on what was already delivered and accepted.

You can read about UI test automation in React Native Apps in our previous blog post.

Testing like an end user

In order to discover all those edge cases, we need to put ourselves in the shoes of our end-users. This is the number one methodology to develop our understanding of a product and how to test it. In order to see with our users’ eyes we need to ask ourselves: 1. How will the application be used? 2. Who are our end-users? 3. What are the users’ needs? 4. What is the end user environment? 5. And finally, why would they pick our client’s product rather than a competitor’s one? Is it because it’s unique and one of a kind or is it user-friendly, stable and well tested?

Usually, software development teams test application behavior with ideal network conditions, such as a broadband Wi-Fi. But in reality, ideal conditions aren’t always met. At Polidea, we have developed a cellular network simulator that allows us to recreate various real-life conditions of the Internet connection (full, over-limit, no In Traffic, 4G, 3G, 2G, Disabled, Fatality, etc.). On top of this, we perform a field testing as well to make sure our application works as expected and meets user expectations in real life.

This post summarizes the main concepts of Polidea’s testing approach. You can check out all of our projects up to date here. And if you’d like to see our testing methods in action—get in touch! We’ll design and develop an awesome mobile app solution together;).

*This is a refreshed version of the article published on our blog back ~in 2016.

share


TomekLead Test Engineer
SławomirProject Manager

LEARN MORE

Contact us if you have any questions regarding the article or just want to chat about technology, our services, job offers and more!

POLIDEA NEWSLETTER

Sign in and expect sharp insights, recommendations, ebooks and fascinating project stories delivered to your inbox

The controller of the personal data that you are about to provide in the above form will be Polidea sp. z o.o. with its registered office in Warsaw at ul. Przeskok 2, 00-032 Warsaw, KRS number: 0000330954, tel.: 0048 795 536 436, email: hello@polidea.com (“Polidea”). We will process your personal data based on our legitimate interest and/or your consent. Providing your personal data is not obligatory, but necessary for Polidea to respond to you in relation to your question and/or request. If you gave us consent to call you on the telephone, you may revoke the consent at any time by contacting Polidea via telephone or email. You can find detailed information about the processing of your personal data in relation to the above contact form, including your rights relating to the processing, HERE.

Data controller:

The controller of your personal data is Polidea sp. z o.o. with its registered office in Warsaw at ul. Przeskok 2, 00-032 Warsaw, KRS number: 0000330954, tel.: [0048795536436], email: [hello@polidea.com] (“Polidea”)

Purpose and legal bases for processing:

 

Used abbreviations:

GDPR – Regulation (EU) 2016/679 of the European Parliament and of the Council of 27 April 2016
on the protection of natural persons with regard to the processing of personal data and on the free movement
of such data, and repealing Directive 95/46/EC (General Data Protection Regulation)

ARES – Polish Act on Rendering Electronic Services dated 18 July 2002

TL – Polish Telecommunications Law dated 16 July 2004

1)        sending to the given email address a newsletter including information on Polidea’s new projects, products, services, organised events and/or general insights from the mobile app business world |art. 6.1 a) GDPR, art. 10.2 ARES and art. 172.1 TL (upon your consent)

Personal data:name, email address

2)       statistical, analytical and reporting purposes |art. 6. 1 f) GDPR (based on legitimate interests pursued by Polidea, consisting in analysing the way our services are used and adjusting them to our clients’ needs, as well as developing new services)

Personal data:name, email address

Withdrawal of consent:

You may withdraw your consent to process your personal data at any time.

Withdrawal of the consent is possible solely in the scope of processing performed based on the consent. Polidea is authorised to process your personal data after you withdraw your consent if it has another legal basis for the processing, for the purposes covered by that legal basis.

Categories of recipients:

Your personal data may be shared with:

1)       authorised employees and/or contractors of Polidea

2)       persons or entities providing particular services to Polidea (accounting, legal, IT, marketing and advertising services) – in the scope required for those persons or entities to provide those services to Polidea

 

Retention period:

1)       For the purpose of sending newsletter to the given email address – for as long as the relevant consent is not withdrawn

2)       For statistical, analytical and reporting purposes – for as long as the relevant consent is not withdrawn

Your rights:

 

Used abbreviation:

GDPR – Regulation (EU) 2016/679 of the European Parliament and of the Council of 27 April 2016
on the protection of natural persons with regard to the processing of personal data and on the free movement
of such data, and repealing Directive 95/46/EC (General Data Protection Regulation)

According to GDPR, you have the following rights relating to the processing of your personal data, exercised by contacting Polidea via [e-mail, phone].

1)       to access to your personal data (art. 15 GDPR) by requesting sharing and/or sending a copy of all your personal data processed by Polidea

2)       to request rectification of inaccurate personal data
(art. 16 GDPR) by indicating the data requiring rectification

3)       to request erasure of your persona data (art. 17 GDPR); Polidea has the rights to refuse erasing the personal data in specific circumstances provided by law

4)       to request restriction of processing of your personal data (art. 18 GDPR) by indicating the data which should be restricted

5)       to move your personal data (art. 20 GDPR) by requesting preparation and transfer by Polidea of the personal data that you provided to Polidea to you or another controller in a structured, commonly used machine-readable format

6)       to object to processing your personal data conducted based on art. 6.1 e) or f) GDPR, on grounds relating to your particular situation (art. 21 GDPR)

7)       to lodge a complaint with a supervisory authority,
in particular in the EU member state of your habitual residence, place of work or place of the alleged infringement if you consider that the processing
of personal data relating to you infringes the GDPR
(art. 77.1 GDPR)

No obligation to provide data:

Providing your personal data is not obligatory, but necessary for Polidea to provide you the newsletter service

Refusal to provide the above data will result in inability to receive the newsletter service.

Profiling

In the process of providing the newsletter service, we make decisions in an automated way, including profiling, based on the data you provide.

 

“Profiling” means automated processing of personal data consisting of the use of your personal data to evaluate certain personal aspects relating to you, in particular to analyze or predict aspects concerning your personal preferences and interests.

 

The automated decisions are taken based on the analysis of clicked and viewed content. They affect the targeting of specific newsletter content to selected users registered to receive the newsletter service, based on the anticipated interests of the recipient.