There is a very good reason to believe that iOS8 will be out today. If Apple just follows its usual habits, developers will get a release later today and the public one should be out in few weeks. Here are some predictions how iOS8 will change the testing landscape and what app developers, together with QA folks, need to consider when testing their apps/games on iOS8, and adopting their current methods to both – iOS8 and older variants.
1. Being Efficient and Productive Always Changes with the New OS Version
The release of iOS8 will bring tons of great new features – and if you plan to utilize these features, naturally testing of all these features in the context of your app/game must happen. The time between now and then when iOS8 will be officially out for everyone is probably few weeks. During this time, you’ll need to make sure your app/game is properly updates and ready for consumers. The easiest way? Check out all possible iOS devices at Testdroid Cloud. We’re rolling in more and more iOS8 devices every day.
2. From Unit Testing to Integration Testing, Security and Liability – Testing
Those new features provided by iOS8 will make the basic functional testing a must. However, there are other things that must be tested as well – for example, the security aspects of your app. It’s not always those vulnerabilities that make the app fail in pieces and expose security threats, but also those liabilities that use of third party components bring to you. Handling any confidential data about app, user, accounts etc. must be security-tested and here are some great tips to get you covered with this. Remember, from smoke testing through unit, functional, compatibility, usability, user experience, regression, integration, and many other type of testing will change with iOS8. Prepare for that!
Until your app is ready for consumers, development keeps going and the same should apply for testing. One essential method for mobile app developers to use in order to seamlessly integrate development and testing effort is continuous integration. After daily-builds the app is ready for testing, which if efficiently handled can be automated and pushed for real devices. The iOS8 changes this slightly as well: new features when enabled should be tested for performance and compatibility in each build cycle.
4. Rely only on Real – Use of Real Devices for Dev&Testing is Even More Critical
Testing usability and what user experience your app delivers to its end-users simply cannot be done on a desktop with a mouse and keyboard: User Interactions, Real occurring events, performance, any hardware details just to name few reasons why simulators won’t provide an authentic environment for testing. Naturally, challenges can arise with dependency to those real devices and test automation specific details (e.g. competence of using, creating and maintaining frameworks). However, both of them can be easily tackled with the help of Testdroid. We host all iOS devices 24/7 for you and assist in all questions with frameworks and dependent technologies. Test automation is a smart move and will bring you significant ROI.
5. Chance to Explore an App Through Interactive, Manual Testing
Manual testing is not agile. It doesn’t scale. Despite of all negatives and tedious nature of effort, it sometimes, however, makes people think it is a must. In case like this, you would be interested to take an access to iOS8 based device (phone, tablet or something wearable) and interact with the device through your web browser. This type of exploratory testing can be effective when device needs to be acquired instantly and various types of manual testing takes place in short test cycles. Well, great news is that Testdroid will get you covered there as well. Just pick up the device, upload your app, and off you go testing! This great new feature will roll out soon, stay tuned!
6. Hardware Characteristics are Different
Hardware is naturally the biggest difference between different Apple devices. Testing with real devices is the only way to find out how well your app works across this ecosystem. However, many things make also hardware perform differently and here are some of the most common ones: Chipset (CPU, GPU, all details of it), display (resolution, component, Retina or not), memory (older gen tends to have less than next-gens), sensors/other infra hardware (who remembers Antennagate?) and various other hardware aspects that can be only verified with the real ones.
7. Test Coverage Expands – Yet Another OS Version & Devices to be Supported
It is just matter of time when iOS8 rolls out for all possible iOS devices – iPhones, iPads, iPods. All these have very different form factors, characteristics, use cases, and even different apps and integrations with other popular things. You certainly don’t want to leave any of these popular setups to be tested but all of these devices should be in your testing roster. In ideal case, you don’t have to own or even see any of these devices, but all will be enabled for you through Testdroid. You pick the type of service – public, private or in-house.
8. Value Propositions Changes
iOS8 brings certain UI elements, functionalities and features as a basis for each and every developer. Because of this, it is even more critical that app developers fully utilizes all possible features and user interface improvements that are brought in with iOS8. As well as the platform is improving, the very same happens for tools as well. We’re seeing Xcode going forward and bringing better, more versatile features for example with Instruments. The need of testing doesn’t vanish but things might become easier and that’s awesome thing! Testing cycle times with lower costs of setting up environments, devices, and so will change in time as well. In this context it is important to think the productivity and efficiency aspects of testing. Regardless of the framework, method or deployment option used, the release of an app doesn’t mean testing ends. Basically, testing never ends as there will be always the next, next and next version of OS looming from the horizon, and you surely want to make sure your cash-cow works on them as well, don’t you?
9. All Testing Must Be Continuous
Continuous testing should be in the DNA of your mobile development team. For instance, certification testing for iOS8 app should be done for each release you pull out from daily scrum and build system. All other types of testing methods can help you here. When smoke, unit, integration, compatibility, usability, user experience, performance, security and many other are exercised you have done the certification testing as well. Every type of testing that can be included in continuous integration and testing process will get done during your sprints.
10. Testing Displays, Resolutions and Differences between Retinas and Others
The new iOS8 will bring larger display, resolution into play. It is also important to notice that “resolution” gets too much attention when screen/display resolution is mentioned. Furthermore, the problem is in display component itself, density or orientation how UI elements are shown to users. It is highly recommended that either manual or automated test script goes through all possible combinations by rotating the device with different speed.
While surfing through all these requirements, take a look at Testdroid and you’ll get amazing boost for your app development and testing.
Go through the basics of Calabash, how to create proper Calabash tests and how to make the most of them.Download