Home » iPad

Tag: iPad

Common Apple App Store Rejections

Since a couple of days (at least I never saw that page before) Apple provided a page with the most common app store rejections.

On the page several categroies are listed, providing information on how to prevent your app from being rejected.

When testing and/or submitting an iOS app have the following points in mind.

  • Crashes and Bugs: Submit the app if it is well tested.
  • Substandard User Interface: Be sure the app is following Apple’s design guides and design Dos and Dont’s.
  • Broken Links: All links must be functional.
  • Advertisements: If your app contains ads, be sure they are shown properly.
  • Placeholder Content: No lorem ipsum or any other kind of placeholder texts are allowed to be in the app.
  • Incomplete Information: Provide logins if your app requires them. Provide descriptions and images or videos of your app.
  • Web clippings, content aggregators, or a collections of links: In short, submit only native apps :).
  • Repeated Submission of Similar Apps: You are not allowed to submit several apps that are essentially the same.
  • Inaccurate Descriptions: App descriptions must be clear.
  • Misleading Users: Your app must work as advertised in the store.
  • Not enough lasting value: Your app should solve a problem to the user and must provide value.

Besides this little overview, Apple also provided the top 10 reasons why apps are currently rejected. Furthermore, the total percentage of app rejections is shwon. Find the numbers in the following pictures.

Top10 of app rejection reasons Total percentage of app rejections

 

Both pictures are screenshot from the Apple page and the figures are based on September 2014. I just wanted to give you a quick heads up to this page. The ULR to page is: https://developer.apple.com/app-store/review/rejections/

Happy testing.

How to stress test your iOS app

My last blog post was about stress testing your android app. Today I found another interesting stress testing tool for iOS. The tool is called UI AutoMonkey. The tool is really simple and can be added directly to your xCode project. UI AutoMonkey runs in UIAutomation and Instruments.

All you have to do is to setup a UIAutomation Instruments template with the provided script. Have a look at the simple installation instructions on the github page. After the setup, UI AutoMonkey is stress testing your app with different commands.


The following code snippet shows the JS script and some defined stress testing commands.

...
 eventWeights: {
 tap: 500,
 drag: 1,
 flick: 1,
 orientation: 1,
 clickVolumeUp: 1,
 clickVolumeDown: 1,
 lock: 1,
 pinchClose: 10,
 pinchOpen: 10,
 shake: 1
 },
...

The complete tool documentation can be found here.

What tool are you using for stress testing your iOS app?

Have fun!

Posted by Daniel Knott

Mobile App Update Testing

During the development process of mobile apps manual and automated testing is highly recommended. But there is another test you should do before releasing or submitting your app to a store. Testing the update procedure! Testing the update procedure from the current store version to the new release candidate is really important and it is often not done by developers or QA experts. With this test you verify, that the new app is not affecting the old installed version. Here are three facts that will be covered with that test.

Test that the update…

  • … will not logout a user from the app e.g. before the update he was logged in.
  • … will not affect the local database e.g. existing data will not be modified or deleted.
  • … will be installed correctly from the store (simulation).

You can also test the update from far older versions to the latest one, to see what is happening.
For the two big players Android and iPhone I will describe, how to test the update from one version to another using different tools.

iOS
On the iOS side there are two ways of testing the update procedure. The first one can be done with iTunes. See also the Technical Note TN2285 from Apple.

  1. Build an adhoc app version of the app that is currently live in iTunes store. HINT: This version must have the same bundle identifier as the new app.
  2. Be sure that no older versions of the app are installed within iTunes and on your test iOS device (Sync with iTunes to be sure).
  3. Drag the app from step 1 into iTunes and sync the version to your test device.
  4. Launch the app and do some manual testing to see that the app is working.
  5. Build the new release candidate version of the app and drag it to iTunes and sync to the device. iTunes should confirm, that the older version will be removed. HINT: DO NOT delete the old build! In the next step iTunes will install the new app over the old one and will simulate the update from the app store.
  6. Launch the new version and see if everything is ok.

The second way of testing the update procedure for iOS is using the iPhone Configuration Utility. Using this tool is more comfortable, especially if you want to test the update procedure on more iOS test devices like iPhone 3G, iPhone 3GS, iPhone 4(S), iPhone 5 or iPads.

  1. Build an adhoc app version of the app that is currently live in iTunes store. HINT: This version must have the same bundle identifier as the new app.
  2. Be sure that no older versions of the app are installed on the test device.
  3. Install the app from step 1 to the devices you want to check.
  4. Launch the app and do some manual testing to see that the app is working.
  5. Build the new release candidate version of the app and install it with the tool. The update procedure will be simulated.
  6. Launch the new version and see if everything is ok.


Android
The same can be done also on the Android side. To test the update for Android you can use adb to simulate the procedure.

  1. Install the current Google Play store version of your app to your phone.
  2. Check that the version is working.
  3. Build a release candidate of the Android app. HINT: Be sure to sign the release candidate with the Play store keystore.
  4. Use the following command to test the update procedure:
    ./adb install -r APPNAME.apk. The option -r means reinstall the app and keeping its data.
  5. The new version is now installed and can be tested.

That’s it! Try it for your next release!

Greets!

How XING choose mobile test devices

In my last company blog post I dealed with the topic: “How to choose the right mobile test devices”.

In addition to all our mobile test automation, we also do a lot of manual and exploratory testing within our mobile team. We test devices with different hard- and software, with different browser versions, and on different carrier networks to be sure that our apps work in the way our customers will use it.

Due to the fact that the mobile market is growing, the key question for a mobile Quality Assurance person is: Which devices are right for testing? It’s simply not possible to do testing on every device! 

XING test devices

See the full post here: http://devblog.xing.com/qa/how-to-choose-the-right-mobile-test-devices/

Overview of Mobile Test Automation Frameworks

I found a really nice overview about Open Source Mobile Testing Frameworks for Test Automation. The overview was created by Dominik Dary (eBay). In his table he showed how many test automation frameworks are currently available for Android or iOS testing. The complete blog post can be found here:

http://www.dary.de/2012/03/open-source-mobile-test-automation-frameworks

A big thank you to Dominik, who provided this overview!