+ All Categories
Home > Software > Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Date post: 22-Jan-2017
Category:
Upload: lemberg-solutions
View: 313 times
Download: 4 times
Share this document with a friend
24
Common iPhone Mistakes
Transcript
Page 1: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Common iPhone Mistakes

Page 2: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Input fields/forms

Expectations● If there are at least two sequentially input fields available, there is transition

between fields by tapping Next button on the keyboard ● After the last input field is filled, Next button is replaced with Done. Tap on

Done button closes the keyboard● Validation for input fields● Limitation for entering characters● Left and right margins are the same● Cursor is visible

Typical Issues● Next button is missing, instead there is Done/ Return etc., which closes the

keyboard or in the worst case doesn’t perform any action at all● Validation is missing● Text in the input fields may come out of the field borders, left and right ● margins may be different● Cursor is missing or is transparent● Limitation is missing● Transition to the next field is unavailable because Next button is disabled

Page 3: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Field validations

Expectations● Validation of all required fields/ checkboxes /drop-downs etc.● If validation failed, pop-up with the text displays, for example: ”Field name

can not be empty ”● Correct order of validation: step by step - from the top to the bottom, from

left to right, both on the client and server sides.

Typical Issues● Incorrect field validation order● Incorrect validation text (different for fields within the same form)● Error message from server side is ignored

Page 4: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Keyboard

ExpectationsKeyboard is hidden with:

● Tap on Done button on the keyboard● Tap around the keyboard but within the screen● Opening sidebar (hamburger) menu● Moving to other screen● Opening date/ time picker ● Keyboard doesn’t overlap the input field which is active at the moment,

there is autoscroll so active field stays above the keyboard

Typical Issues● Done button doesn’t perform any action● Keyboard hides only after switch to other screen● Keyboard opens over sidebar menu● Input field is overlapped by the keyboard, autoscroll is missing● Keyboard and date/time picker stay opened simultaneously

Page 5: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Search

Expectations● Hint is available● Tap on input field opens keyboard● After 1st character is entered, hint disappears● After 1st character is entered, X button appears to clear entered data● X button disappears after entered content is cleared● No results message is displayed if search gave no results

Typical Issues● X button is missing● Hint is missing● Keyboard doesn’t hide after tap on Search button and results are overlapped

by● X button doesn’t disappear after entered content is cleared● No results message is missing

Page 6: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Camera/Gallery (Privacy)

Expectations● If camera is disabled in Privacy settings, custom pop up with text “This app

does not have access to your camera. You can enable access in Privacy Settings” is displayed. The same in case Gallery is disabled in Privacy Settings

Typical Issues● Black camera screen opens, buttons react on taps, and there is no

explanation for users why camera screen is black● Application crashes after opening Camera/ Gallery, if Camera/ Gallery is

enabled/ disabled in Privacy Settings● Black camera screen opens and displays custom inappropriate pop-up

message

Page 7: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Date/Time pickers

Expectations● When one date picker opens, the second (if it's opened) automatically

closes● When only date should be available, time is removed● Picker placed at the bottom of the screen scrolls up after tap on it ● Picker hides after tap on it● Picker hides after tap within the screen● Picker hides after tap on input field

Typical Issues● Several pickers open at the same time● Both date and time is displayed while only date should be visible● Picker placed at the bottom of the screen doesn’t scroll up and only top part

of it is visible ● After tap on it picker overlaps input fields placed below● Picker doesn’t hide after tap on it / input field / within the screen

Page 8: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Selectors

ExpectationsSelectors are displayed:

● After tap on buttons User’s selection is highlighted for few seconds● After item(s) from the list is (are) selected● After screen from sidebar menu is selected, the selector holds down,

highlighting active screen from the menu

Typical Issues● Selectors are missing● Selectors don’t disappear after switch to other screen● Ability to select several items simultaneously on the fields where it’s not

appropriate (sidebar menu opens while switching to the screen) ● Selector obscures icon and button, making them not visible● Selector is present on input fields or UI elements, that don’t contain

transitions

Page 9: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Buttons

Expectations● If required parameters (fields, checkboxes, drop-downs) are not selected,

then Done is disabled, or after tap on it custom pop up with text (“Field’s name should not be empty”) is displayed

● Done button is enabled after required parameters are selected

Typical Issues● Buttons are not disabled● Validation is missing● Incorrect pop-up message● Pop-up is missing

Page 10: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Time zone

Expectations● Application works correctly with user’s time zone:

○ for pushes - difference between time zones is taken into account○ for schedule - week starts according to selected time zone

Typical Issues● Pushes are delivered one day earlier or later● Event’s schedule starts on Sunday instead of Monday - this frequently

happens when difference between time zones is +/- 8 hours

Page 11: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Scroll

Expectations● Scrollbar is available on the list● When there are several tabs with lists, scroll is independent on each tab● Scroll position on the list preserves within one screen● Scrollbar resizes according to the list● Scrollbar is located on the right side from the content● If keyboard is opened, is closes when scroll activates● Auto scroll up makes active field visible during filling in● Auto scroll up makes user’s message posted on the page visible

Typical cases● Scrollbar on the list is missing● When there are several tabs with lists, scrolls are connected● Scroll position on the list is not preserved, and user has to scroll to needed

position again● Scrollbar is located over the content ● Scroll is enabled when keyboard is opened● Auto scroll up is missing, therefore, data being entered at the moment is not

visible● Auto scroll up on the page is missing, therefore, user’s message posted at

the moment is not visible

Page 12: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Store data on iCloud

Expected● Only kbs of data are stored on iCloud if it is needed

Typical case● Hundreds mbs of users’ data are stored on iCloud, that eventually causes

appstore rejection

Page 13: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Duplication

Expected● After one tap buttons become unavailable for next tap ● After one tap pop-up becomes unavailable for next quick tap● After one tap item from list (sidebar, list) becomes unavailable for next

quick tap

Typical cases● After quick tap for several times on the same screen/ button/ item/ tab/

pop-up the results are displayed one by one, and it causes crash● App crashes after quick taps on the same button for several times, as the

program tries to open several identical screens

Page 14: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Opening two or more screens/pop-ups at the same time

Expected● When selecting several items at the same time, tap works only for one of

them ● When tapping on two items (buttons, items from list), select works only for

one of them

Typical cases● Tap reproduces every time pushing several buttons/ tabs (on sidebar

menu/ on top bar etc) simultaneously● App crashes after tap on several buttons simultaneously● Titles from two screens overlap each other● After tap on two items (buttons, items from list), select triggers on both

Page 15: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

No Internet connection

Expected● If the design is available, then it needs to be implemented as represented in

the design, if not, then the following two items are recommended: ○ - default placeholder according to the design is shown○ - custom pop-up “No internet connection” with two buttons Cancel

(closes the pop-up) and Try Again (sends request to server again)

Typical cases● Default placeholder as in design is missing● Custom pop-up is missing● Incorrect text on pop-up ● App crashes when Internet connection is missing

Page 16: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Links/Hyperlinks

Expected● Links in the text open in browser or webview within app● Links are highlighted and marked in different from general content color● Tap on link is followed by selector

Typical cases● Transition to browser after tap on link is missing● Links are not highlighted● Selector after tap on link is missing

Page 17: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Sidebar menu

Expected● Opens after tap on sidebar Menu button (hamburger menu)● Opens when swipe from left to right● Hides after tap on sidebar Menu button● Hides when swipe from right to left● Right side area is not clickable when menu is opened ● Tap on element from menu is followed by selector, which preserves its

position for next re-opening menu to show user where he is at this moment

Typical cases● Opens after tap only● Opens after swipe only● Menu icon is missing● Right side area is clickable when menu is opened● Selector is missing● Selector hide after screen from the menu opens

Page 18: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

E-mail client

Expected● When e-mail account is not entered in device settings, pop-up notifies that

e-mail client is not configured. Expected pop-up view:○ Title: No Mail Accounts○ Text: Please setup an email account in order to send email○ Button: OK

Typical cases● App crashes after try to open e-mail client without entered account● Feedback button doesn’t work on tap when e-mail client is not configured● Pop-up displays with incorrect text on it

Page 19: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Localization

Expected ● Arabic text is displayed from right to left● All navigation elements are localized (moved in the opposite direction) ● All system/ custom pop-ups and buttons labels are localized

Typical cases● Navigation elements are not localized (not moved in the opposite direction) ● Text for system/ custom pop-ups and buttons labels is not localized● Arabic text is displayed from left to right

Page 20: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Hard Coding Data

Expected ● All text labels are taken from the file with text resources● All descriptions are previously approved by client or PM● Images are downloaded from Internet● URLs for services and web sites are correct

Typical cases● Reproduces in applications which support several languages. For example, pop-ups text is often hard coded instead of add it into resource file. As a

result users on all localizations see message in the same language (English No Internet connection for example)● Images are locally hard coded in app● URLs for services and web sites are temporarily coded as fake and then not corrected to true ones

Page 21: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Data upload issues

Expected ● If image needs to be uploaded, video/music files are not available in gallery● Trying to upload the file that exceeds admissible size, message “File can not be uploaded because of inadmissible size” is displayed● Trying to upload corrupted file(photos / music / videos / documents), message “File can not be uploaded, there is a problem with this file” is displayed● Uploading / downloading several files at the same is not allowed unless it is provided in specification

Typical cases● App crashes trying to upload / download file that exceeds admissible size (image 20 Mb or more), or after file is not downloaded no message is

displayed● App crashes trying to upload several files simultaneously, or after file is not uploaded no message is displayed● App crashes trying to upload corrupted file (photos / music / videos / documents), or after file is not downloaded no message is displayed● Ability to upload video / music files instead photos or documents

Page 22: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Data migration

Expected ● Updating v1.0 to the new v2.0, database migration means that data from v1.0 is moved to the new v2.0 database● Saved personal info migrates to the new app version (images / profile)● Favourites / likes etc. migrate to the new app version● Migration from v1.0 to the new v2.0 without any saved data means v1.0 updates to the new v2.0

Typical cases● App crashes while migrating from v1.0 to the new v2.0, data loses ● Personal info (images/ profile) doesn’t migrate and respectively loses● Favourites / likes etc don’t migrate and respectively lose● App crashes while migrating from v1.0 (without user data) to the new v2.0● After migration data is displayed incorrectly (order / completeness of data)

Page 23: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Caching data and cache removal

Expected ● After downloading new data, the application should replace the old data with the new data● Data update should occur in the background invisible for the user● Data update should displaying - by using the progress bar

Typical cases● During the update data updates only partially (because of some error and incorrectly used database transactions not all files are downloaded/ saved). As

a result, data in the database may be invalid● Incorrectly organized update data mechanism (updates are checked using incorrect algorithm, for example, at fixed time only)

Page 24: Common iPhone Mistakes. An Efficient Guide for QA's and iOS Developers.

Problems with WEB server

Expected Mobile client should handle the following issues:

● Web server does not send data to mobile client● Web server is not responding● Mobile client received empty data● Mobile client received invalid data● Expected behavior of mobile client: error message from the server:

○ in most cases, if request does not use data entered by the user, then user does not need to know the reason of unsuccessful request. It makes sense to distinguish only two errors: no Internet connection and no response from server. Only if the request uses data entered by the user, then message that notifies an error is displayed.

Typical cases● App crashes if there is no response from server● App crashes if data received from server is incorrect● App crashes if receives empty data


Recommended