Tag: mobile app

Automated TestingMobile AppMobile App

Three common challenges in Mobile Application Testing

The booming of the smartphone has opened the door for global businesses to interact with consumers more effectively and frequently through thousands of applications. Since mobile apps became a significant channel to connect with consumers, executives of firms have spent more effort on enhancing the quality of applications. However, firms have to face many mobile application testing challenges.

According to a report of Capgemini about Quality Assurance and Testing in 2017-18, 47% of the respondents stated that they lack an appropriate testing process or method. Meanwhile, 46% of the companies surveyed don’t know which are the right tools to perform mobile testing. Shortage in testing devices is also a crucial issue that occupies 40%. 

3 Common mobile application testing challenges

1. Lack of efficient testing process

What is the effective testing process for mobile applications in such a high-competitive market like smartphone apps? There are three factors you need to consider, let’s take a look at them below:

Test Strategy

A thorough strategy for your testing project is significant. Some of the aspects that you should plan are Test methodology, Automation testing, and Test environment.

Firstly, when it comes to testing methodology, one of the most favored ones is the Agile approach. In Agile, the development process breaks into repetitive loops, and testing goes in parallel with development.

The second factor you should think about is how to set up the test environment. You can choose from setting up on real mobile devices, on simulators, or clouds. 

The final thing is automation testing. Although test automation can reduce the time and effort to perform repetitive test cases such as regression testing; some of the tests still need to be run manually. One of the efficient ways to apply automation test is when you run one test case on various devices, like in this video: [Demo video] Automation test on 10 mobile devices at the same time

Continuous Testing

Mobile applications are built and updated regularly. As a result, traditional manual testing cannot keep up with the pace of releasing new versions. Continuous testing will run automation tests regularly to get immediate feedback after new updates are released. Moreover, testing apps in parallel with the development process will decrease the risk of failing at the end of the project.

Select Test Types

For mobile application testing, you should execute both functional and non-functional tests. Functional testing includes testing the function of the apps (path testing, boundary values, data lifecycle), application lifecycle, network, and display. Non-functional testing requires testers to perform some special testing, such as: Typical Interrupts Testing, Testing for Power Consumption, Testing for Different Displays, Testing for Device Input Sensors, and Testing for Screen Orientation Change.

2. Choosing from numerous testing tools

What makes mobile testing more complicated is the complexity of mobile testing tools in the market. Each tool has different features that can test a certain type of mobile apps. Companies have to know exactly what they are looking for in the testing tool to choose the one that has appropriate features, such as:

  • Fees: Open-source tools and paid tools
  • Type of application that the tools can test: Native apps, Web, hybrid apps
  • The operation system: iOS, Android, Windows

3. Shortage in testing devices

In 2019, the shipment of smartphones around the world reached 1,375 billion units, in which Android devices accounted for 76% market share and iOS devices took 13%.  Each operating system has various versions, which means mobile apps have to run in numerous environments. This leads to obstacles in setting up mobile testing devices because the testing team cannot access all types of devices available. The solution is you can combine using different test environments such as Real Devices, Emulators / Simulators, and Clouds to perform testing. Each type has its advantages and drawbacks:

Environment

Advantages

Drawbacks

Real devices
  • Show how the app actually works
  • Can do specific testing for mobile such as Interrupt testing
  • Not all the target devices are available
Emulators
  • No need to look for rare devices
  • Simulate hardware and software
  • Time-consuming to adjust
  • No testing of mobile-specific factors (battery consumption, interrupts, etc.)
  • Not suitable for all types of testing (e.g. UI testing)
Clouds
  • Unlimited availability of devices
  • Not always suitable due to security concerns

Nevertheless, the quality assurance team cannot guarantee that if a tested application works well on a given device, it will work 100% on another device. Even though it’s from the same product family, the screen resolution, CPU, Memory, and hardware could be different.

If you want to have more advices about how to improve the efficiency of mobile application testing, you can contact us for a mobile application testing service

Manual TestingMobile AppSoftware TestingWeb App

Differences between mobile app testing and web testing

As we all know, technology is growing and mobile phones, smart devices are the trend, the future of the world. To meet such a large demand, applications must be of good quality, with rich and various content to meet the needs of users. That is also a big challenge for developers and software testers, especially for testers who are familiar with web testing but not yet aware of mobile testing.

So how is mobile testing different from web testing? 

1. Mobile testing has more flatforms

Mobile application testing will be much more complicated due to the variety of mobile devices. Ensuring that mobile applications work on all types of devices (smartphones, tablets or phablets) provided by a number of major vendors (such as Samsung, Sony, Nokia, HTC, Apple …) and on Operating systems (iOS, Android, Windows, Blackberry …) is really a challenge.

Therefore, testers need to have as many test cases as possible for each version, and perform as many tests on different devices as possible for good mobile application.

2. Screen size is constantly changing

iPhone-screen-sizes-mobile-web-testing

Major suppliers tend to change the size of their phones, tablets or phablets to fit users’ needs and tastes, as well as compete with other vendors. Then, when testing, we need to have test cases for screens of different sizes, to check for different screen sizes, whether the interface has broken layout or not; size buttons, the text box, radio button … have been changed or not.

3. User experience is needed for tester

For developers they only care about how the system functions work properly but for testers it is required user experience to support the users. An application can be considered a failure if it is difficult to use or can not be used in different situations, especially mobile applications need to support users to be able to use in all circumstances.

4. Users have more interactions than web applications

interaction-mobile-testing

When testing the web, the testers only interact with the system through a keyboard or mouse. But for mobile apps, we will interact with more ways such as touching, waving, eye movement, sound …..That’s why when testing, we will need to grasp catch those test cases.

5. Data security and privacy

Mobile applications such as pictures, videos are needed to be inaccessible to many other flatform feature. For mobile testing, there are also test cases of data access and privacy like camera access, photo data access, etc.

6. Excessive reliance on emulators and simulators leads to a lack of real-life device experiences

emulator-mobile-testing

When we test websites, the differences between browsers are quite small. However, for mobile apps, we often test in emulators and simulator environments. Those environments are not like real devices. Therefore, there are test cases that cannot be performed in emulators and simulator environments. As a tester, we need to control such cases.

7. Cases about installation, removal, update versions of application

Mobile applications are installed, removed and updated more frequently so that when testing, we need to catch how the next platform version changes and what it can affect the application.

remove-app-mobile-testing

What if the users have more than 1 device? What if those devices have different versions of the application? Compatibility, simultaneous support for multiple versions, data storage and the ability to install/ upgrade multiple times,… play an important part in application testing. 

8. Does the app work well when being interrupted

For mobile applications, users will often be interrupted by other applications such as SMS, incoming calls, notifications. After finishing those interruptions, how will the app work save actions in progress? These cases are often very rare when we test the web.

incoming-call-mobile-testing

9. Phone’s specific functions testing

There are many factors that need to be taken into account when testing.

・How much data is this application consuming?

・How much battery does this application consume? 

・Does this application work well if the battery is low? 

・How much junk data does it generate? 

—————————————————————

For more information about testing services, please refer to Testing services

Lotus Quality Assurance (LQA)

Tel: (+84) 24-6660-7474

Email: [email protected]

Website: https://www.lotus-qa.com/

Blog

Mobile application testing-Mobile testing tutorial 2

Mobile application testing is 1 type of mobile testing. For more information, refer Mobile testing in series of Mobile testing tutorial

1. Mobile application categories

For mobile applications, it can be classified into three categories:

・Type 1: Native apps – apps written specifically for a platform like iOS, Android, or Windows Phone in their respective languages.

・Type 2: Web application (Web App) – web-based application, mobile device users will use different browsers such as Chrome, Firefox, Safari to access the web server to use, such as m.facebook.com.

・Type 3: Hybrid App – a combination of native application and web application, can be run both offline and online and often uses web-making techniques such as HTML5, CSS.

mobile-venn-mobile-testing

In view of this

・ Native applications can only run on a certain operating system while mobile web applications can run on all mobile browsers that support HTML and Javascript.

・The native application is written in platforms like the SDK while the mobile web application is written with web technologies like HTML, CSS, ASP.NET, JAVA, and PHP.

・ For a native application, it is necessary to install but with mobile web applications, there is no need to install.

・ The original application can be updated from the app store while the mobile web application is updated centrally.

・ The original application may work without an Internet connection, but for mobile web applications, an Internet connection is always required.

・ Native apps work faster when compared to mobile web apps.

2. Some special test cases for testing mobile applications:

・Battery consumption: It is important to track the battery drain when running applications on mobile devices.

・Application running speed: Track time response time on different devices with different memory capacities, different network speeds …

・Memory requirement: When downloading and installing an app, running the app ..

・Application’s function checking: To ensure the application does not crash when losing network connectivity or other external impacts.

3. Some automated testing tools for mobile applications

3.1. IOS has popular automatic testing tools like:

app-testing-tool-fonemonkey

FoneMonkey application testing tool

app-testing-tool-frank

Frank application testing tool

app-testing-tool-qtp

QTP application testing tool

3.2. Android operating system has some automated testing tools such as:

Robotium application testing tool

app-testing-tool-eggplant

Eggplant application testing tool (No free source)

For more information about testing services, please refer to Testing services


Lotus Quality Assurance (LQA)

Tel: (+84) 24-6660-7474
Email: [email protected]
Website: https://www.lotus-qa.com/

Automated TestingAutomated TestingBlogBlogBlogEmbedded TestingManual TestingSoftware TestingSoftware TestingSoftware Testing

Mobile testing tutorial 1: Brief introduction

Mobile technology and smart devices are current trends and will change the future of the world. Millions of applications are downloaded daily from the Appstore or Google Play for personal devices. Mobile applications are various to meet the needs of education, health care or entertainment of users. In order to have quality products that meet the needs of real society, mobile testing is a matter of great concern. It’s a vital factor in the development process that brings to market the high-quality product.

generation-divided-on-mobile-mobile-testing

1. What is meant by mobile testing?

Mobile testing is a process by which mobile devices is tested for its functionality, usability and consistency,…..to ensure quality products

See more Testing services

2. What are types of mobile testing

There are two types of mobile testing: hardware testing and software testing or mobile application testing

2.1. Hardware testing: includes testing of the processor, screen size, resolution, memory, camera, radio, Bluetooth, WIFI, etc.

2.2. Software or Mobile Application Testing: also known as mobile application testing to distinguish it from the above method.

mobile-app-testing

3Differences in mobile testing compared to other types of testing:

3.1. The variety of mobile devices: 

Different device manufacturers such as HTC, SamSung, Apple, Nokia … with different screen sizes and hardware configurations

・Multi-platform (iOS 6,7,8, Android 4.2; 4.3; 4.4, BB 5; BB6 …)

・Mobile devices have different application runtime

3.2. Challenging hardware of the device

・Processing speed limit

・Device memory capacity limit

・WAP / HTTP device protocol differences

3.3. Challenges of network connection

・Different types of networks (GSM / GPRS / WIFI / 3G …)

・No predictable time for data transmission

・Difference in connection speed via physical

・Diverse network operators with different network features

3.4. Types of testing

In addition, mobile application testing also includes the following types of testing:

  1. UI Testing: Test UI, Menu style, consistency of user interface on different devices
  2. Function Testing: Functional testing of major mobile application functions according to the device’s specification
  3. Performance and Load Test: Test mobile app behavior in low resources (Memory/ Storage Space) and when multiple users access the mobile app site together
  4. Usability Testing: Checking the usability aspects of mobile applications
  5. Compatibility Testing: Testing the compatibility of your application with native device features to ensure that your application does not interfere with other applications in the device.
  6. Interrupt checking: Because mobile devices have much lower memory than desktops, make sure that when there are voice calls, SMS messages, charging plugs, low memory notifications while the app is running does not cause any conflict.

mobile-testing-solution

For more information about testing services, please refer to Testing services


Lotus Quality Assurance (LQA)

Tel: (+84) 24-6660-7474
Email: [email protected]
Website: https://www.lotus-qa.com/