Best method for general app testing




When it comes to software testing, a tester basically thinks of checking documentation, functionality, APIs, performance and determining whether the software is safe, and other things about a specific part of the software. For mobile testing, testers have to consider mobile-related features based on user mobile usage patterns.

Functional Testing
  
Every new feature developed needs to be tested. Functional testing is an important aspect of mobile [ app testing , and mobile testers should do both manual and automated testing. At the beginning of testing, testers must manually test the mobile app as a "black box" to see if the provided functionality is correct and works as designed. In addition to classic software testing, like clicking a button to see what happens, testers must also perform more functional mobile device-specific testing.

Today, modern mobile devices have touchscreens that require multi-touch actions to interact with them. The device can have a portrait or landscape display. They offer motion, tilt and helix sensors. They have different interfaces to connect other devices or services, such as GPS, NFC, cameras, LEDs, and more.

Mobile software testers must ensure that all device-specific features of the app are available in the app. With so many types of mobile devices, it is impossible to cover all of them when testing, so functional testers should focus on the key aspects of their app. What is really simple and effective? Device rotates. During my testing work I discovered many bugs that simply rotated the device from portrait to landscape and back.

Apart from the entire manual testing process, test automation is also important for mobile apps. Every code change or new feature may affect existing features and their state. Often there is not enough time for manual regression testing, so testers have to find a tool to automate regression testing. There are many mobile test automation tools on the market, both commercial and open source, targeting various platforms such as Android, iPhone, Windows Phone 7, BlackBerry and mobile web apps. Depending on the development strategy and structure, quality assurance professionals need to figure out the automation tool that best fits their environment.

Choosing a tool for test automation is not easy, but it is important to keep in mind when making the decision: the test automation should use the same programming language as the production code. It's good for both testers and developers if the tests and production code are written in the same language, because it makes it easier for them to pair code. Testers can communicate at the same level as developers, and they can perform code reviews of testing and production code. For test automation, developers can write their own scripts in the language they are comfortable with.


Non-functional

testing Another important aspect of mobile app testing is the non-functional requirements of the mobile app. Mobile testers have many questions to test before a mobile app is launched on the market or further developed.

The first test to be done in the early development phase should be a usability test. Usually by alpha users or colleagues. Walk into a cafe or restaurant and ask the people inside about their app usage. Let them look at the first version at this stage of development and gather feedback to see if users are using the new features well in order to get a first impression.

Check app performance. Compare the released version with the current version to see if the performance is the same? better? or worse? Install the app on an old device and see if the app still works on the old device, no matter how good or bad the hardware is. The same goes for state-of-the-art equipment.

Test how the app reacts to incoming calls, text messages, MMS messages, tweets or other notifications. Check the battery level while using the app. Make sure the test device is fully charged during testing and check battery usage every ten minutes to see if the app is using too much power. Install the app on the device while the battery is low and see what happens. Check your app's memory usage. If the app stores data in the local file system, test the usage of different memory cards. Think about what happens when local storage is nearly full - does the app crash or pop up an error message to notify the user?

Test the app installation and removal process. More importantly, test the process of upgrading from an old version to a new version. Maybe the local database has changed, which will cause some serious migration issues.

Is the app localized? Testers need to test the app in different languages. Remember to test with different internet speeds on different internet hosts. Make sure the app works in GPRS, EDGE, UMTS, LTE and WiFi environments.

Don't forget to check how the app reacts when the internet connection is bad or completely dropped. Use the app in airplane mode to see what happens if a request fails. Connect the test device to the computer and check the dev log file for exceptions, warnings, or other odd anomalies. These are just some of the non-functional requirements that mobile testers and developers should consider when developing and testing an app. It is impossible to check every aspect, so the overall team should support QA members to cover as many aspects as possible to prevent users from getting a bad experience.

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=326176860&siteId=291194637
Recommended