Тестування на емуляторах і фізичних пристроях

Тестування на емуляторах і фізичних пристроях
Writing Mobile Code. Essential Software Engineering for Building Mobile Applications "id =" b_cover ">

Книга відомого професіонала в області комп'ютерних технологій присвячена розробці додатків для широкого спектру мобільних пристроїв з використанням популярної і постійно розвивається платформи .NET Compact Framework. Унікальність цієї книги полягає в тому, що в ній гармонійно переплетені теоретичні відомості про весь цикл розробки програмного забезпечення з практичними прикладами застосування на мовах С # і Visual Basic. Докладно розглядаються концепції, що лежать в основі самої платформи .NET Compact Framework, а також питання, пов'язані зі створенням ефективного призначеного для користувача інтерфейсу, управлінням пам'яттю, продуктивністю і надійністю. Чимала увага приділяється практичним аспектам розробки додатків для мобільних пристроїв, серед яких вибір моделі представлення та доступу до даних, впровадження комунікаційної моделі, реалізація моделі поведінки з допомогою кінцевих автоматів і використання XML.

Книга розрахована на розроблювачів різної кваліфікації, а також може бути корисна для студентів і викладачів відповідних спеціальностей.

Книга: Програмування мобільних пристроїв на платформі .NET Compact Framework

Тестування на емуляторах і фізичних пристроях

Тестування на емуляторах і фізичних пристроях

Програмні емулятори пристроїв - річ чудова. Вони дозволяють вам прискорити процеси проектування, тестування і налагодження програми, позбавляючи від необхідності настройки фізичних пристроїв, перемикання уваги з комп'ютера на пристрій і безлічі інших перешкод, неминуче пов'язаних з включенням в роботу додаткового обладнання. Точно так же програмні емулятори відмінно підходять для демонстрації застосування; їх зображення можна легко проектувати на великий екран, і ви можете вільно зберігати в своєму лептопі, який берете з собою на час переїздів, безліч різних емуляторів, що позбавляє вас від необхідності возити з собою в'язку кабелів і чемодан, набитий електронікою.

(Їх особливо "любить" охорона в аеропортах.) Разом з тим, для чого емулятори абсолютно не годяться - так це для тестування продуктивності вашого мобільного додатка або зручності роботи з його призначеним для користувача інтерфейсом. У зв'язку з цим ви повинні тестувати свої програми тільки на фізичних пристроях. Як би ви не старалися, результати тестування, отримані з використанням емулятора, не можуть вважатися надійними. Нижче наводиться кілька причин того, чому це так.

? Емулятори не доводиться фізично утримувати в руках. У процесі використання більшості мобільних пристроїв їх утримують в руці і здійснюють всі необхідні маніпуляції або пальцем тієї ж руки (при роботі однією рукою), або другою рукою. Виконати те ж саме з зображенням на екрані неможливо.

? Розміри вашої руки ніяк не враховуються при роботі з комп'ютерним екраном. При використанні емулятора для елементів управління користувальницького інтерфейсу важко підібрати найбільш оптимальне розташування, оскільки курсор миші має дуже невеликі розміри і не закриває екран при його переміщенні над кнопками. Курсор миші взагалі фізично ні з чим не пов'язаний. На відміну від цього перо, яке використовується спільно з сенсорним екраном, має помітні розміри і фізично пов'язано з вашою рукою, яка має ще більші розміри; тому, коли ви намагаєтеся натиснути на кнопку, ви мимоволі закриваєте значну частину екрану.

? Настільні комп'ютери і лептопи забезпечують більш високу точність вказівки, ніж мобільні пристрої. У разі настільних комп'ютерів ви маєте справу з плоскою поверхнею екрану, де покажчик відображається на тій же поверхні, що дозволяє вам фізично побачити, коли саме ви повинні натиснути кнопку. У той же час, на сенсорному екрані мобільного пристрою покажчик миші не відображається. "Клацання", який здійснюється шляхом натискання на екран, відбувається приблизно в тій точці, в якій, на думку користувача, він повинен бути виконаний, але на фактичний стан цієї точки впливає зміщення, залежне від кута, під яким користувач дивиться на екран, наявність певного проміжку між елементами дисплея і сенсорною поверхнею, і калібрування самої сенсорної поверхні. На практиці це означає, що існує фізична межа розмірів елемента управління користувальницького інтерфейсу, нижче якого користувач вже може "промахнутися" при натисканні на елемент.

Облік перерахованих вище факторів відіграє важливу роль в процесі проектування додатків для мобільних пристроїв, але не може замінити тестування програми на реальному обладнанні. По суті, єдиним способом реального тестування користувальницького інтерфейсу вашої програми може бути його тестування на тому обладнанні, для виконання на якому воно призначене.

На рис. 13.3 ілюструється, яким чином перехід від емулятора до фізичного пристрою може вплинути на придатність для користувача інтерфейсу. Як приклад взята програма для вивчення іноземних слів, в якій анімований персонаж переміщається по екрану в залежності від того, правильно чи неправильно користувач відповів на поставлене запитання, вибравши на свій розсуд відповідь з декількох запропонованих варіантів. Коли для проектування і тестування програми використовується емулятор пристрою, все виглядає прекрасно: варіанти вибору відмінно розміщуються на екрані, а навігація в межах програми не складає ніяких труднощів.

Разом з тим, тестування на реальному пристрої дозволяє виявити ряд істотних проблем. У міру того як користувач переміщує руку над екраном для вибору потрібного варіанта відповіді, він мимоволі закриває нею питання і ігрове поле. Таким чином, вибираючи варіант відповіді, самого питання користувач не бачить.

Тестування на емуляторах і фізичних пристроях

Мал. 13.3.Сравненіе зручності використання призначеного для користувача інтерфейсу на емуляторі і фізичному пристрої

Крім того, щоб побачити результати свого вибору, користувач повинен прибрати руку з екрану; якщо він не зробить це досить швидко, то може пропустити частину дії, що відбувається в цей час на екрані, що в деякій мірі позбавить його задоволення від спілкування з додатком. Цілком очевидно, що таку ситуацію не можна вважати найоптимальнішою, але це стає очевидним лише за умови, що тестування виконується на фізичному пристрої, оскільки при роботі з емулятором, виконує на екрані ПК, рука користувача екрану не закриває.

На рис. 13.4 проілюстровані два можливих способу поліпшення розглянутого нами інтерфейсу. Обидва способи забезпечують для користувача найкращі умови огляду ігрового поля, причому перевагу слід віддати екрану справа, оскільки він дозволяє бачити питання в процесі виборі варіанту відповіді; в той же час, в реальних умовах цей фактор може не мати великого значення. Проблеми, пов'язані з тим, яким саме чином розташовуються руки користувача в проміжках між виконанням операцій вибору потрібного варіанта, і які умови фізичного рівноваги пристрою, коли воно утримується в руці, є важливими факторами оптимального дизайну. В даному випадку, саме з цих міркувань і після тривалого тестування, я вибрав варіант інтерфейсу, представлений на малюнку зліва.

Тестування на емуляторах і фізичних пристроях

Мал. 13.4.Более зручні альтернативні варіанти компонування екрану, засновані на результатах тестування програми на фізичному пристрої

Залучення програмних емуляторів пристроїв може значно скоротити терміни розробки і налагодження програми, і цю можливість слід використовувати при кожній нагоді, але це не позбавляє вас від необхідності ретельного тестування того, наскільки зручно буде користуватися інтерфейсом на фізичному пристрої. При цьому ви будете кожен раз дивуватися, як багато їжі для роздумів може дати таке тестування.