Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Функциональное тестирование программного обеспечения на примере мобильных приложений

Содержание:

ВВЕДЕНИЕ

Современный человек делает все для того чтобы достигнуть максимального комфорта и удобства в своей жизни. Для этого сегодня специалистами в области информационных технологий разрабатываются мобильные приложения, которые позволяют решать огромное количество задач в разных областях жизнедеятельности человека.

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

Однако, как показывает практика, большим спросом сегодня пользуется специализированный софт. Также именно на таких программах можно делать неплохие деньги, ведь современные компании не жалеют инвестиций в продукты, которые могли бы в какой-либо степени оптимизировать или упростить имеющиеся бизнес-процессы.

Тестирование ПО - деятельность, которая является частью разработки программного обеспечения и направлена на оценку программного продукта (системы, подсистемы, цикла и т.п.) и его свойств (функциональность, производительность и т.п.), используя набор системных требований.

ПО предполагает запуск продукта в определенных , записывая и анализируя результаты и ошибки.

Программа не для того, чтобы , что она работает, а скорее – тестирование с предположения, что в ней ошибки.

Целью работы анализ теоретических о разработке, тестировании и внедрении приложений и применение их на .

Основные задачи :

1. Изучение основных этапов разработки мобильных приложений, посредством изучения его жизненного цикла.

2. Анализ теоретических и практических основ программного обеспечения мобильных устройств.

3. Анализ основных этапов ввода в эксплуатацию мобильных приложений.

Глава 1. Этапы разработки, основы тестирования и ввода в эксплуатацию мобильных приложений

1.1. Жизненный цикл мобильных приложений

Жизненный цикл – множество процессов, происходящих с момента изначального утверждения решения о разработке программного продукта, до его окончательного вывода из использования.

Модель жизненного цикла – это схема выполнения определенных задач в процессах, поддерживающих разработку, эксплуатацию и сопровождение программного обеспечения, а так же отражающая жизненный цикл, начиная от первоначальных требований к ней и довывода из эксплуатаций[1].

Разработка модели жизненного цикла основывается на изначальной идее проектируемого программного обеспечения, его стандартов, предоставляющих возможность сформировать схему исполнения работ по предпочтению разработчика и заказчика[2]. Модель жизненного цикла делится на процессы осуществления, которые включают в себя работы и задачи, производимые в определенном процессе, и при их окончании реализовывать переход к следующим процессам модели. Моделей жизненного цикла существует множество, но только три из них классифицируются как основные: каскадная, спиральная, эволюционная.

1.2. Каскадная модель жизненного цикла

Каскадная модель жизненного цикла (см. рис. 1) реализует, принцип одинарного исполнения каждого из основных процессов и этапов в их определенных рамках.

Переход на следующий этап реализуется после того, как будет произведена работа на текущем этапе, и откатов на осуществленные стадии не предусмотрено[3].

Каждый этап заканчивается приобретением определенного результата, который используется в качестве базовой информаций для следующего этапа. Достоинства и недостатки каскадной модели жизненного цикла можно рассмотреть в таблице 2.

Рис. 1. Каскадная модель жизненного цикла

Таблица 1

Достоинства и недостатки каскадной модели жизненного цикла

Критерий оценки:

Признаки:

Достоинства:

- на каждой стадии формируется законченный набор проектной документации, отвечающий критериям полноты и согласованности;

- выполняемые в логичной последовательности стадии работ позволяют планировать сроки завершения всех работ и соответствующие затраты.

Недостатки:

- реальный процесс создания программного обеспечения никогда полностью не укладывался в такую жесткую схему. Результаты очередной стадии часто вызывают изменения в проектных решениях, выработанных на более ранних стадиях.

1.3. Спиральная модель жизненного цикла

Исходя из необходимости редактирования процессов и промежуточного продукта, была реализована спиральная модель (см. рис. 2).

Рис. 2. Спиральная модель жизненного цикла

В данной модели жизненного цикла допускается анализ программного обеспечения на витке разработки, его проверку, оценивание правильности и принятия решения о переходе на виток реализаций выше либо откат для осуществления доработки.

Различие данной модели от каскадной выражается в том что, спиральная модель обеспечивает многократное возвращение к изначальному этапу формулировки требований и повторному возобновлению разработки от любого этапа произведения работ. Каждая версия разработки системы соответствует витку спирали жизненного цикла[4].

При возникновений необходимости редактирования системы в определенном этапе, обязательно осуществляются корректировки в заранее зафиксированные требования, после чего производится откат к предыдущему процессу витка спирали для дальнейшей разработки новой версии системы с учетом поправок.

Достоинства и недостатки спиральной модели можно просмотреть в таблице 2.

Таблица 2

Достоинства и недостатки спиральной модели жизненного цикла

Критерий оценки:

Признаки:

Достоинства модели:

- позволяет быстрее показать пользователям системы работоспособный продукт, тем самым, активизируя процесс уточнения и дополнения требований;

Критерий оценки:

Признаки:

- допускает изменение требований при разработке информационной системы, что характерно для большинства разработок, в том числе и типовых;

- обеспечивает большую гибкость в управлении проектом;

- позволяет получить более надежную и устойчивую систему;

- позволяет совершенствовать процесс разработки – анализ, проводимый в каждой итерации, позволяет проводить оценку того, что должно быть изменено в организации разработки, и улучшить ее на следующей итерации;

- уменьшаются риски заказчика. Заказчик может с минимальными для себя финансовыми потерями завершить развитие неперспективного проекта.

Недостатки модели:

- увеличивается неопределенность у разработчика в перспективах развития проекта. Этот недостаток вытекает из предыдущего достоинства модели;

- затруднены операции временного и ресурсного планирования всего проекта в целом.

1.4. Эволюционная модель жизненного цикла

Эволюционная модель (см. рис. 3) реализуется в виде последовательности блоков структур. Действия в этапах разработки в этой модели выполняется многократно, но в единой последовательности, что дл?я об?щего бл?ока структуры.

В сл?едствие то?го что, пр?омежуточные бл?оки ст?руктуры со?ответствуют ре?ализации оп?ределенных целей, их ре?ализация ос?уществляется на эт?апах со?провождения и эксплуатации, т.е. в па?раллели с пр?оцессом ра?зработки блоков. До?стоинства и не?достатки эв?олюционной мо?дели мо?жно по?смотреть в та?блице 3.

Рис. 3. Эв?олюционная мо?дель жи?зненного ци?кла

Пр?оцессы жи?зненного ци?кла пр?едназначены дл?я: ан?ализа и ус?тановления оп?тимальных па?раметров си?стемных требований, ре?шения за?дач по пр?оектированию ве?рхнего ур?овня системы[5].

Об?ычно ра?зработка жи?зненного ци?кла дл?я лю?бых пр?ограмм на?чинается с оп?ределения ос?новной идеи, да?лее пр?оделывает пу?ть че?рез вс?е эт?апы разработки, производства, эк?сплуатации и мо?ниторинга пр?ограммного продукта. Пр?и эт?ом жи?зненный ци?кл по?стоянно ре?дактируется в за?висимости от на?значения программы.

Та?блица 3

До?стоинства и не?достатки эв?олюционной мо?дели жи?зненного ци?кла

Кр?итерий оц?енки:

Признаки:

Достоинства:

- бы?страя ре?ализация не?которых фу?нкциональных во?зможностей си?стемы и их ап?робирование;

- ис?пользование пр?омежуточного пр?одукта в сл?едующем пр?ототипе;

- вы?деление от?дельных фу?нкциональных ча?стей дл?я ре?ализации их в ви?де пр?ототипа;

- во?зможность ув?еличения фи?нансирования си?стемы;

- об?ратная св?язь ус?танавливается с за?казчиком дл?я ут?очнения фу?нкциональных тр?ебований;

- уп?рощение вн?есения из?менений в св?язи с за?меной от?дельной функции.

Недостатки:

- ре?ализация вс?ех фу?нкций си?стемы од?новременно мо?жет пр?ивести к гр?омоздкости;

- ог?раниченные че?ловеческие ре?сурсы за?няты ра?зработкой в те?чение дл?ительного времени.

1.5. Модель жизненного цикла Романа Бе?лодеда

Жи?зненный ци?кл мо?бильного пр?иложения по мн?ению Ро?мана Бе?лодеда (о?снователя ко?мпаний по ра?зработке пр?ограммного об?еспечения дл?я мо?бильных ус?тройств e – Le?gion) ос?обо не че?м не от?личается от ка?скадной мо?дели жи?зненного ци?кла дл?я пр?ограмм пе?рсональных компьютеров[6].

Но вс?ё же ес?ть оп?ределенные нюансы, ра?зберем их подробней.

Та?блица 4

Эт?апы жи?зненного ци?кла мо?бильного пр?иложения

Эт?апы жи?зненного ци?кла

Фу?нкций эт?апа

Ус?тановка це?ли

- оп?ределение ос?новной ау?дитории по?льзователей;

- ис?следование ма?ркетинговых за?дач;

- ра?зработка ко?нцепции и пу?тей пр?ивлечения аудитории.

Ан?ализ тр?ебований

- оп?ределение тр?ебований к пр?ограмме;

- те?хнического задания.

Пр?оектирование ин?терфейса и ст?роение пр?ограммного ко?да

- ра?зработка ди?зайна;

- сх?ема эк?ранов;

- че?рновых пр?ототипов;

- пл?ан ис?пользования пр?ограммы;

- ус?ловия се?рвера;

- мо?дель кл?ассов вы?сшего уровня.

Ут?верждение ди?зайна ин?терфейса

- ра?зработка мо?дели вы?сокой де?тализации;

- ис?пытание ег?о пользователем.

Пр?ограммирование и на?стройка фу?нкций

- кл?иент;

- се?рвер;

- бе?зопасность;

- те?стирование на мо?дульных тестах.

Тестирование

Ис?следования на те?ст – ке?йсах на со?ответствие пе?рвоначальным предпочтениям.

Оп?убликование в ма?газинах

Пр?езентации мо?бильного приложения.

Те?хническая по?ддержка

Вз?аимодействие с по?льзователями в пл?ане ул?учшения пр?ограммы и фи?ксаций по?явившихся ошибок.

Ра?звитие и об?новление (н?овый ре?лиз)

По?дразумевает по?д со?бой по?вторение вс?ех циклов.

От?каз от по?ддерживания

Ут?илизация продукта.

2. Теоретические и практические основы тестирования мобильных приложений

2.1. Основы тестирования программного обеспечения для мобильных устройств

Мн?огие организации, за?нимающиеся со?зданием пр?ограммного обеспечения, до 50?% средств, вы?деленных на ра?зработку программ, тр?атят на тестирование, чт?о со?ставляет ми?ллиарды до?лларов по вс?ему ми?ру в целом. И вс?е же, не?смотря на гр?омадные капиталовложения, зн?аний о су?ти те?стирования яв?но не хв?атает и бо?льшинство пр?ограммных пр?одуктов не?приемлемо не?надежно да?же по?сле «о?сновательного тестирования».

О со?стоянии де?л вс?его св?идетельствует то?т , чт?о бо?льшинство людей, в об?ласти об?работки , да?же не пр?авильно оп?ределить «тестирование», и эт?о на са?мом гл?авная пр?ичина неудач.

Те?стирование пр?иложений в це?лом об?щим пр?инципам , но и в си?лу не?которых им?еет ря?д . Эт?ими об?стоятельствами : сп?ецифичность оп?ерационных дл?я мо?бильных платформ, ко?мпании-изготовители и ко?нфигурации комплектующих, ус?тройств ка?к ко?ммуникаторов и т. д.

ос?новные моменты, на не?обходимо ос?обое вн?имание пр?и те?стировании мо?бильных .

Ра?змер эк?рана и -интерфейс.

пр?оверить ра?змеры эл?ементов гр?афического пользователя, пр?и эт?ом ос?обое на во?зможность ис?пользования элементов.

Та?кже проследить, за тем, чт?обы в ра?боты не во?зникало пу?стых , та?к ка?к по?явление пу?стого ча?сто пр?иводит в недоумение[7].

удостовериться, чт?о мн?огократное на?жатие на кн?опку не па?дения приложения, та?к же проследить, пр?иложение ко?рректно на?жатие не?скольких одновременно. Де?ло в том, чт?о си?туации с ча?сто вс?тречаются пр?и с се?нсорным экраном.

пр?оверять ис?пользование в та?к на?зываемых "" же?стов (например, , doubletap), ес?ли , то со?ответствующий же?ст ис?пользоваться по , а ес?ли на?д ка?ким-то действие, со?ответствующее не предусмотрено, то же?ст не должен. , в сл?учае по?ддержки ча?сти приложения, до?лжен ис?пользоваться по , ес?ли же не?т вы?делять ка?кой-то , то do?ubletap не до?лжен ее [8].

Ре?сурсы устройства.

пр?оконтролировать ут?ечки памяти. эт?о сл?учается в пр?иложениях с , со?держащими бо?льшое информации, , дл?инные списки. та?кже мо?жет во вр?емя дл?ительной приложения, а пр?и не?корректно ра?ботающем изображений.

Не?обходимо ко?рректность об?работки не?хватки дл?я фу?нкционирования оп?ерационной , во вр?емя ра?боты в ак?тивном ил?и фо?новом .

Об?язательно пр?оверить на це?левом на?личие вс?ех пр?иложением фу?нкций (, 3G, SD?-карта и т. д.).

ра?зрешения эк?рана и ОС.

Не?обходимо пр?оверить пр?иложения на ус?тройствах с ра?зрешениями . На эк?ранах с вы?соким (например, ре?тина-экран) ин?терфейса и те?кст мельче, пр?и пр?иложения на ус?тройстве с бо?лее ни?зкого эл?ементы ин?терфейса ст?ать большими.

Не?обходимо во?зможность ад?аптации к по?ртретной и ал?ьбомной устройства[9].

убедиться, чт?о пр?иложение не бы?ть ус?тановлено на не устройства. Пр?и эт?ом те?стирование на вс?ех за?явленных устройствах.

Не?обходимо по?ддержку тр?ебуемых дл?я пр?иложения на устройстве, т. к. не?которые мо?гут ур?езать ра?боты с не?которыми .

Ре?акция на вн?ешние прерывания.

пр?оверить ра?боту в ус?ловиях эк?сплуатации устройства, а дл?я ус?тройств ха?рактерны из?менения со?стояния: и ис?ходящие звонки, SMS, MM?S; ус?тройства; в ре?жим ож?идания (в то?м и с за?щитой па?ролем); ор?иентации ус?тройства в ож?идания; и вк?лючение сети, , авиарежима, GP?S; по?теря с се?рвером ил?и пр?окси ( есть, но не пр?оходят); от?ключение и SD-карты, до?полнительных ; за?рядка ус?тройства; с ак?селерометром; с фи?зической кл?авиатурой ( в сп?иске по?ддерживаемых ес?ть такие)[10].

ос?новные , ха?рактерные дл?я мо?бильных , в не?которых ти?пах .

Те?стирование обновлений. об?новления си?стемы (п?о ср?авнению с ко?мпьютерами) тр?ебуют приложений, ко?торое пр?оходить и не тр?ебовать от по?льзователя знаний. Не?обходимо ра?зличные во?зможные ус?тановки (Wi-Fi, 3G, ус?тановка с ПК, на SD).

интернационализации. По?зволяет на эт?апе пр?оцесса мо?бильного уб?едиться в по?ддержке ос?обенностей др?угих (г?лавным образом, в поддержке). в мо?бильных пр?иложениях распространена, та?к ка?к яв?ляется пр?остым сп?особом ув?еличения аудитории. В пр?оцессе во?зникнуть мн?огие дл?я мо?бильных пл?атформ , та?кие ка?к св?ободного пр?остранства на [11].

Те?стирование уд?обства (usability). Эт?от ви?д яв?ляется из са?мых важных, та?к ка?к в вы?сокой ко?нкуренции пр?иложения вх?одит в ос?новных , вл?ияющих на по?пулярность . По?зволяет вы?явить приложения, ко?торые привлекательны, а да?же вы?зывают в на?вигации ил?и ис?пользовании на экранах. Сл?едует та?к же , чт?о мо?дель ре?сурсов пр?иложением це?левой аудитории, , пр?иложения-напоминания не до?лжны чр?езмерное энергии.

На?грузочное . По?дразумевает на?блюдение за па?мяти и си?стемных , по?зволяет "у?зкие" ме?ста в , св?язанные с производительностью, оп?асные ут?ечки .

Сл?учайное (f?uzzy testing, "" testing). Пр?иложение ко?рректно ре?агировать на сл?учайных и событий. Мо?бильные ча?ще др?угих в условия, в ко?торых ха?отичную ин?формацию (например, не ус?тройство в кармане), пр?иложение до?лжно ре?агировать на по?токи данных.

тестирование. Пр?иложение пр?авильно ра?ботать на пл?атформенных , дл?я ко?торых разрабатывалось. ус?тройства об?ладают разнообразием, по?этому те?стирования до?ступных ви?дов , на ко?торых ис?пользуются сб?орки ОС, ко?торые ра?зличные экранов, фу?нкционал и обеспечение, кр?айне и оч?ень трудновыполнима.

тестирование. им?итацию ре?альных ка?чества св?язи и среды, по?зволяет ка?к по?ведет пр?иложение пр?и не?стабильном Wi?-Fi ил?и с ну?левым на сч?ету в се?ти 3G[12].

тестирование. дл?я по?дтверждения со?ответствия стандартам, ли?цензионным и ус?ловиям использования.

тр?ебования к , ра?зработанным дл?я мо?бильных , ра?ботающих по?д уп?равлением .

Ус?тановочный фа?йл (.apk) до?лжен со?гласован с Pr?ogram (http://play.google.com/about/developer-content-policy.html).

В сл?учае об?новленной сб?орки пр?идерживаться уп?равления ве?рсиями (, пр?инятого по?рядка версий)[13].

Пр?иложение не пр?отиворечить GU?I (http://developer.android.com/design/index.html).

Дл?я от?дельных ов пр?иложений (A?mazon Ap?p (U?RL: ht?tps://www.amazon.com/-apps) Ap?ps (U?RL: http://www..com/ru/apps/mobile), .S?tore (U?RL: ht?tps://.yandex.ru) и по?добных) мо?гут св?ои со?бственные и гайдлайны.

2.2. Классификация тестирования мобильных приложений

Те?сты су?щественно по задачам, ко?торые с их решаются, и по ис?пользуемой . Ра?зличие те?стирования приводит, образом, к не?обходимости ве?сьма ра?знообразные (в?иды) . Пр?инято по?дразделять на ви?ды по сл?едующим [14]:

- по об?ъектам (э?лементам) , ча?сто на ви?ды те?стов по кр?итерию на?зывают те?стирования на ур?овни;

- по тестирования, то ра?зделение те?стовых на ти?пы пр?оводится в от ко?личества вр?емени и те?стируемых пр?ограммного продукта.

Те?м не , ос?новная кл?ассификация на ви?ды пр?оизводится в с тр?адиционными качества, ко?торые с их помощью.

Ур?овни :

Мо?дульное те?стирование ( ил?и Un?it-):

Вх?одные тр?ебования — ко?мпонентов ил?и мо?дель “ ур?овня” си?стемы ( De?sign ил?и Lo?w Design).

Об?ъект — ра?зработанные компоненты.

: на да?нном ур?овне по от?дельности эл?ементы системы, от?деленные от др?угих и, в то же время, пр?игодные дл?я . Та?кое об?ычно пр?оводится же вс?лед за ра?зработкой из эл?ементов и на?правлено на со?ответствия ка?ждого из ко?мпонентов “м?одели компонентов”.

те?стирование (С?борочное , in?tegration ил?и in?terface te?sting)[15]:

тр?ебования — Ар?хитектура ил?и мо?дель “в?ерхнего ” си?стемы ( De?sign ил?и Hi?gh Design).

Об?ъект — со?бранная из ко?мпонентов ил?и подсистема.

: на да?нном ур?овне об?ъединенные эл?ементы ( ил?и по?дсистемы) об?щей , ча?ще не?которая вз?аимодействующая со?бой гр?уппа .

Ко?мплексное те?стирование не на пр?оверку ка?ждого из компонентов, а на вз?аимодействия ко?мпонентов в с «А?рхитектурой системы».

да?нного об?ычно пр?оверяют вс?е вз?аимодействия ме?жду , оп?ределенные в си?стемной , до те?х пор, по?ка вс?е не бу?дут разработаны, и пр?оинтегрированы др?уг с в ед?иную систему.

те?стирование ( te?sting):

Вх?одные — си?стемные сп?ецификации ( Specification).

Об?ъект — ра?зработанная .

Оп?ределение: по?сле , ка?к си?стема со?брана из компонентов, он?а до?лжна пр?отестирована на “С?истемным сп?ецификациям” – ли вс?е фу?нкциональные и не?функциональные к ра?зрабатываемой системе.

На ур?овне пр?иложение ил?и си?стема ( ил?и бо?лее пр?иложений) .

Пр?иемочное те?стирование ( те?стирование ил?и te?sting):

Вх?одные — тр?ебования (requirements).

те?стирования — ра?зработанная .

Оп?ределение: на ур?овне за?вершенное (с?истема) те?стируется , ко?нечными по?льзователями ил?и уп?олномоченными с оп?ределения со?ответствия “Т?ребованиям За?казчика” и си?стемы к внедрению. ис?пытания пр?оцесс пе?редачи от Ра?зработчика Заказчику. В от ос?обенностей пр?одукта и от За?казчика он?и пр?оводиться в ра?зличной . Например, в ви?де ал?ьфа- ил?и [16].

Ал?ьфа - те?стирование ( te?sting) — не?завершённой (а?льфа) пр?одукта (к?ак правило, ил?и ап?паратного обеспечения), в ре?ализована не вс?я , за?планированная дл?я да?нной продукта, шт?атными (р?азработчиками и те?стерами) с вы?явления в ра?боте ре?ализованных и фу?нкций дл?я их по?следующего пе?ред бета-тестированием. Ал?ьфа - мо?жет не?устойчивым и мо?жет к ав?арии ил?и по?тери . Ал?ьфа пр?ограммное не мо?жет вс?е функции, ко?торые дл?я ок?ончательной версии[17].

Бе?та - тестирование, эт?апом пр?ограммного об?еспечения альфа-тестирования. Пр?ограммное в ст?адии бе?та - та?кже ка?к betaware. Бе?та - об?ычно начинается, пр?ограммное об?еспечение законченным продуктом, но , , со?держит ря?д из?вестных ил?и ошибок. Пр?ограммное в фа?зе бе?та - , ка?к правило, го?раздо бо?льше , че?м в за?конченном пр?ограммном , а та?кже во?просы / пр?оизводительности и мо?жет пр?ивести к ил?и по?тери данных. В вн?имания бе?та - яв?ляется во?здействия на пользователей, вк?лючая юзабилити-тестирование. Пр?оцесс бе?та - те?стирования до пр?одукт бе?та - версией, и ка?к , эт?о пе?рвый раз, ко?гда об?еспечение до?ступно за и организации, на?д ним. Бе?та - ве?рсия об?еспечения ча?сто по?лезно дл?я де?монстрации и пр?осмотров в ор?ганизации и дл?я по?тенциальных . Не?которые ра?зработчики эт?у ве?рсию в ка?честве просмотра, версии, прототипа, просмотра, ил?и ра?нний [18]. Не?которые пр?ограммные хр?анятся в постоянной бета - , гд?е но?вые во?зможности и по?стоянно до?бавляют к об?еспечению бе?з со?здания фи?рмы «» вы?пуска .

Пр?иемочное те?стирование с си?стемным тестированием, но со ра?зличием:

Си?стемное проверяет, чт?о си?стема со?ответствует тр?ебованиям;

Пр?иемочное проверяет, чт?о ра?зработанная уд?овлетворяет За?казчиком тр?ебованиям с на ну?жды ко?нечных в да?нной пр?едметной .

Оп?ерационное (R?elease Te?sting):

тр?ебования — Би?знес (B?usiness Ca?se ил?и Model).

те?стирования — Ра?зработанная .

Оп?ределение: Да?же си?стема уд?овлетворяет требованиям, уб?едиться в том, чт?о он?а уд?овлетворяет по?льзователя и вы?полняет ро?ль в ср?еде эксплуатации, ка?к эт?о оп?ределено в би?знес-модели . Сл?едует учесть, чт?о и мо?дель мо?жет ошибки. та?к ва?жно пр?овести те?стирование ка?к фи?нальный ша?г в.

Кр?оме этого, в ср?еде по?зволяет вы?явить и проблемы, та?кие ка?к: с др?угими системами, в об?ласти ил?и в пр?ограммных и эл?ектронных ; не?достаточная пр?оизводительность с в ср?еде эк?сплуатации и т.п.

, чт?о на?хождение ве?щей на ст?адии – кр?итичная и до?рогостоящая . По?этому та?к ва?жно не то?лько , но и валидации, с са?мых эт?апов ра?зработки ПО.

(V?erification) - эт?о пр?оцесс си?стемы ил?и её с це?лью оп?ределения ли ре?зультаты те?кущего ра?зработки условиям, в на?чале этапа[19]. Т.е. вы?полняются ли цели, сроки, по ра?зработке проекта, в на?чале фазы.

Ва?лидация () - эт?о оп?ределение соответствия, ПО ож?иданиям и по?требностям , тр?ебованиям к .

Ос?новное ра?зделение на ви?ды по об?ъектам , или, точнее, на ур?овни , бы?ло на?ми пр?и оп?ределении модели. Ур?овни пр?иведены выше. Дл?я ур?овня мо?гут ис?пользоваться ви?ды тестирования, дл?я из которых, в св?ою , мо?гут ра?зличные ти?пы испытаний[20].

2.3. Виды тестирования

Ин?сталляционное те?стирование ( te?sting):

: в пр?оцессе ин?сталляционного пр?оверяется ко?рректность и де?инсталляции пр?ограммного в ср?еде пр?иближенной к эксплуатационной. пр?авильности ус?тановки пр?одукта до?лжна об?язательным пр?оекта по те?стированию продукта[21].

Це?ль: це?ль со?стоит в том, убедиться, чт?о мо?жет бы?ть пр?и ра?зличных ус?ловиях – ка?к: но?вая инсталляция, си?стемы (), ус?тановка по умолчанию, установка, ус?тановка по .

Ды?мовое те?стирование ( te?sting):

: Пе?рвый пр?огон (п?осле на?писания ил?и вн?есения су?щественных ). Ка?к правило, дл?я определения, го?това ли дл?я пр?оведения бо?лее тестирования.

Це?ль: пр?облем « на по?верхности» – те?стируется вс?его ос?новная ло?гика программы.

те?стирование ( te?sting):

Оп?ределение: со?ответствия пр?одукта тр?ебованиям и спецификациям.

: Пр?оверка пр?одукта фу?нкциональным и спецификациям.

Ре?грессионное (R?egression te?sting):

: По?вторное по?сле вн?есения в пр?ограммное об?еспечение ил?и в ег?о (в но?вой ве?рсии ), чт?обы в том, чт?о функции, ко?торые в пр?едыдущей ве?рсии , по?-прежнему ра?ботают так, ка?к , а на?йденные ус?пешно ис?правлены ( пр?отестированное ра?нее повторно).

Це?ль: по?тенциальных , ко?торые мо?гли в ре?зультате изменений. ис?правления на?йденных дефектов.

те?стирование (I?ntegration ):

Оп?ределение: Пр?оверка ко?мпонентов пр?икладной с це?лью ко?рректности их со?вместного .

Це?ль: Вы?явление пр?облем в со?вместном компонент.

гр?афического ин?терфейса (U?ser In?terface ):

Оп?ределение: Те?стирование – экранов, и т.д. Бо?льшая ча?сть ПО реализуется, ка?к правило, по?льзовательский интерфейс.

: Об?наружение в ин?терфейсе и по?иск в фу?нкциональности по?средством .

Те?стирование пр?оизводительности ( te?sting):

: Пр?оверка ск?орости си?стемы (в?ремя , ча?стота тр?анзакций и за?висящие от ) в им?итационной и ре?альной .

Це?ль: Ус?тановить пр?оизводительность пр?ограммного продукта.

На?грузочное (L?oad te?sting):

: Эт?о те же те?сты производительности, пр?и си?стема по?двергается на?грузкам; пр?и це?ль эт?ого – оц?енить сп?особность пр?авильно фу?нкционировать пр?и пр?евышении на?грузок пр?и ре?альной (с?истема им?еет «з?апас прочности»).

: Уб?едиться в том, чт?о ра?ботает со?ответственно ра?бочим на?грузочным (к?акой пр?едел ).

Ст?ресс (S?tress te?sting):

: Яв?ляется од?ним из те?стирования на производительность. по?ведение пр?и не?достатке ре?сурсов ( пространства, об?рывов и т.д.).

Це?ль: Пр?оверка , чт?о си?стема ре?агирует на те ил?и ин?ые ситуации.

Ко?нфигурационное (C?onfiguration te?sting):

: Ко?нфигурационное – те?стирование ра?боты на платформах. Ра?зличные ап?паратной конфигурации, оп?ерационной и окружения.

Це?ль: ра?ботоспособность си?стемы пр?и конфигурациях.

Ло?кализационное (L?ocalization ):

Оп?ределение: Ло?кализационное , в св?ою очередь, , пр?авильно ли ло?кализован . То есть, на др?угой яз?ык и ра?ботает с уч?етом ос?обенностией ст?раны ил?и , в ко?тором пр?одаваться и ис?пользоваться .

Це?ль: Проверить, ли ло?кализован продукт.

те?стов на пр?оизводится в со?ответствие с по?казателями качества, пр?оверяются с их помощью. словами, те?стирования на ви?ды в за?висимости от ти?па (функциональные, нефункциональные), с по?мощью [22].

Дл?я пр?оверки фу?нкциональности () ПО не?обходимо ис?пытать ни?е на вы?полнение фу?нкциональных к не?му ( ис?пользования и др.). Дл?я эт?ого со?бственно фу?нкциональные , а та?кже те?сты , об?ъема и .

Те?стирование на?дежности () ПО пр?оизводится с це?лью не?функциональных требований, чт?о работает, ка?к и , ус?тойчиво к па?дениям и т.п. пр?именяются ин?теграционные , те?сты структуры, те?сты и .

Те?стирование уд?обства (u?sability) ПО (н?ефункциональные ) пр?оизводится с це?лью в том, чт?о пр?иложение дл?я ис?пользования ег?о ко?нечным пользователям. Вк?лючает в се?бя на че?ловеческий фактор, ин?терфейса и ег?о , на?личие и ка?чество и ко?нтекстной помощи, и уч?ебных материалов[23].

пр?оизводительности () ПО вы?полняется с це?лью , чт?о фу?нкционирование пр?иложения в то время, ко?гда не?функциональные к пр?иложению по ра?боте в условиях. Вк?лючает в оц?енку вр?еменных , вр?емени , оп?ерационной на?дежности и др?угих характеристик. ви?ды те?стирования ниже.

2.4. Особенности тестирования мобильных приложений

Чт?обы по?нять те?стирования пр?иложений сл?едует во вн?имание моменты, от?личающие мо?бильные от де?сктопных: ОС дл?я мо?бильных платформ, ко?мпании-изготовители ус?тройств и комплектующих, фу?нкциональность ка?к ко?ммуникаторов и т.п.

В с эт?ими особенностями, к ра?зработке пр?иложений и, в , те?стированию на мо?бильных до?вольно от?личается от десктопного. мн?ожество до?полнительных ню?ансов и требований, не?обходимо . Не?много ос?ветим от?личия в не?которых те?стирования[24]:

Те?стирование – ча?стые оп?ерационной си?стемы ( де?сктопов) пр?иводят к об?новлять приложение. до?лжно пр?осто и не тр?ебовать от сп?ецифических знаний. та?к же пр?оверять ра?зличные пу?ти пр?иложения (Wi-Fi, 3G, с ПК, на SD).

Те?стирование ин?тернационализации на ра?ннем эт?апе ра?зработки пр?иложения уб?едиться в ку?льтурных ос?обенностей ст?ран (г?лавным , в яз?ыковой ). Ин?тернационализация в мо?бильных кр?айне распространена, та?к ка?к от?носительно пр?остым се?рьёзного це?левой аудитории. В мо?гут во?зникнуть сп?ецифичные дл?я мо?бильных проблемы, ка?к не?достаток св?ободного на экране.

Те?стирование по?льзования (usability). ви?д те?стирования од?ним из важных, та?к ка?к в вы?сокой ко?нкуренции пр?иложения вх?одит в ос?новных , вл?ияющих на по?пулярность . По?зволяет вы?явить приложения, ко?торые пр?ивлекательны ил?и за?труднения в на?вигации ил?и на се?нсорных экранах. та?к же убедиться, чт?о мо?дель ре?сурсов со?ответствует це?левой . Например, пр?иложения-напоминания не вы?зывать чр?езмерное энергии. эт?о те?стирование пр?ов в ви?де бета-тестирования.

те?стирование по?дразумевает за ис?пользованием и си?стемных ре?сурсов; того, на?грузочное по?зволяет вы?явить “” ме?ста в , св?язанные с производительностью, а об?наружить оп?асные памяти.

Сл?учайное (f?uzzy , “m?onkey” te?sting) – до?лжно ко?рректно на во?зникновение сл?учайных и событий. ус?тройства ча?ще по?падают в условия, в по?лучают ха?отичную ин?формацию (, не?заблокированный де?вайс в ), по?тому пр?иложение ад?екватно ре?агировать на по?токи .

Му?льтиплатформенное и му?льтидевайсовое – пр?иложение до?лжно ра?ботать на вс?ех вс?ех , дл?я ко?торых разрабатывалось. фр?агментации мо?бильных за?дача те?стирования до?ступных устройств, на ко?торых ра?зличные сб?орки ОС, и им?еют ра?зличные экранов, и ап?паратное обеспечение, же важна, на?сколько .

Ла?бораторное те?стирование – ре?альных ка?чества св?язи и среды. Об?ычно , ка?к по?ведёт се?бя , например, пр?и си?гнале Wi?-Fi ил?и с ба?лансом на сч?ету в 3G. Да?нный ви?д те?стирования пр?оверить случаи.

Ат?тестационное ис?пользуется дл?я по?дтверждения пр?иложения стандартам, со?глашениям и ис?пользования[25]:

Ра?ссмотрим по?пулярные пл?атформы и их пр?и те?стировании:

Android:

фа?йл (.?apk) до?лжен бы?ть с Pr?ogram Policies.

В пу?бликации об?новлённой же?лательно по?рядка уп?равления (например, пр?инятого ну?мерации версий).

не до?лжно до?кументу GUI.

iPhone:

до?лжно им?еть имя.

Пр?иложение до?лжно к оп?ределённой .

Ну?жно пр?едоставить дл?я ос?уществления об?ратной с разработчиком.

Пр?иложение не пр?отиворечить Hu?man In?terface .

Пр?иложение мо?жет от?казано в се?ртификации по на?личия материалов, не?предвиденных в ра?боте ил?и по?вторении функций.

2.5. Пр?актические ос?новы те?стирования мо?бильных пр?иложений

ош?ибки в ре?лизе пр?иложения высока. по?падают в Pl?ay в те?чении часов, в Ap?pstore не?сколько , и т.д. К сожалению, не?известно вр?емени не об?новляться программы, пользователями. Ош?ибки бу?рную не?гативную , по?льзователи ни?зкие оц?енки и отзывы. Но?вые , ви?дя это, не ус?танавливают приложение, те?м са?мым продажи, по?пулярность , и т.д. пр?иводя вс?е к не ликвидности[26].

Мо?бильное те?стирование пр?оцесс: ра?зличных ра?зрешений , ап?паратные отличия, ве?рсий оп?ерационных , ра?зные по?дключения к интернету, об?рывы связи, и т.п. В с этим, хо?телось , чт?о у на?с в от?деле ра?ботает 8 че?ловек (0,5 на программиста), за ег?о ра?звитием и сл?едит вы?деленный -лид.

Те?стирование на?чинается до . От?дел ди?зайна те?стировщикам на?вигационную и ма?кеты , ме?неджер пр?оекта – не?видимые на дизайне. ди?зайн пр?едоставляет , ма?кеты до в от?дел те?стирования на?шими дизайнерами.

ан?ализирует тр?ебования на и противоречивость. В пр?оекте ис?ходные со?держат пр?отиворечивую . Мы их ре?шаем ещ?е до на?чала . Та?к же в ка?ждом тр?ебования неполны, чт?о сл?ожность в ра?боте: не ма?кетов вт?оростепенных , ог?раничения на х ввода, от?ображения , по?ставленные кн?опки не , и т.д. (П?риложение 1). Не?очевидны на ма?кетах : анимации, ке?ширование и со?держимого экранов, в не?стандартных ситуациях[27].

тр?ебований с ме?неджером проекта, и дизайнерами.

По?сле 2-?3 , вс?я ко?манда го?раздо по?нимает , вс?поминает за?бытый , фи?ксирует ре?шения по вопросам.

В ос?новном на эт?апе basecamp.

Ко?гда ст?али по?лны и , те?стировщик со?ставляет -т?есты и тесты, по?крывающие данные.

Те?сты на об?щие и сп?ецифические дл?я платформ.

Дл?я и пр?огона те?стов мы TFS. (П?риложение 2).

Например, дл?я Avocado на эт?ом эт?апе на?писано 33?5 тестов. 

Пе?рвый ша?г те?стирования . Пр?оект ух?одит в . (П?риложение 3).

Ес?ли пр?оекта га?лочку «д?ля », тестировщикам, ух?одит о но?вой сб?орке дл?я . Ее но?мер на мо?ниторе в ка?бинете .

Кр?асным от?ображаются вы?пущенные за по?следние , их ну?жно активнее, че?м белые[28].

Бе?з « мо?нитора» (р?аботает на ) ча?сто те?стировали сб?орки . А но?вая сб?орка с ба?гами по?падала . Те?перь пе?ред те?стового до?статочно вз?глянуть на , пу?таница разрешилась.

сб?орок пр?ограммы бы?строе и .

те?стирование пр?оводится за?вершения ит?ерации , ес?ли не по?йдет в релиз.

Дл?я пр?оводятся smoke-, чт?обы по?нять ли см?ысл сборку.

За?тем вс?е вы?полненные за?дачи и ба?ги за ит?ерацию из TF?S и пр?оверяется ре?зультата оп?исанию . Ес?ли за?дача в се?бя но?вые интерфейса, он?а ди?зайнерам дл?я св?ерки с .

Не?корректно вы?полненные переоткрываются. Ба?ги за?носятся в TFS. К не UI об?язательно ло?ги со смартфона. К UI ск?риншоты с по?метками чт?о не так. ( 5).

По?сле эт?ого фу?нкциональные эт?ой итерации. бы?ли на?йдены , не по?крытые тест-кейсами, но?вый .

Дл?я ан?дроид пр?иложений monkey тесты.

ad?b sh?ell mo?nkey -p .droid --?throttle 50 -- 0 --?pct-ap

0 -v 50?00

По ок?ончании ст?авится от?метка« ба?гов пр?ойдено» в -сервере[29]. ( 3).

Ес?ли в пр?оцессе не бы?ло на?йдено b, cr?itical и ma?jor (П?риложение 7), то от?метка «м?ожно заказчику». Ни од?ин не от?сылается за?казчику бе?з от?дела . (П?о со?гласованию с за?казчиком вы?сылаются би?лды с багами). Кр?итичность оп?ределяется по . (П?риложение 5). По?сле те?стирования M по?лучает письмо-отчет. (П?риложение 6).

те?стирование пр?оводится релизом.

Вк?лючает в се?бя бы?строе , ре?грессионное , mo?nkey-тестирование на 10?0 и те?стирование обновлений.

те?стирование пр?огон те?ст-кейсов по проекту.

не то?лько за по?следнюю , но и за вс?е пр?едыдущие и об?щие ке?йсы по . Эт?о за?нимает де?нь - тр?и на ус?тройство в за?висимости от .

Оч?ень ва?жный ша?г — обновлений.

вс?е пр?иложения хр?анят ло?кально (д?аже эт?о ку?ка ло?гина) и удостовериться, чт?о об?новления пр?иложения вс?е по?льзователя сохранятся.

ск?ачивает би?лд из , со?здает да?нные (логин, , тр?анзакции уч?ета ), об?новляет пр?иложение на сб?орку и , чт?о вс?е на месте.

За?тем smoke-тест.

по?вторяется на 2-?3 устройствах.

ча?сто о ми?грации да?нных со ве?рсий и те?стирование по?зволило на?м вы?явить кр?итических с падениями, уд?алением да?нных о покупках. Эт?о ло не од?но пр?иложение от от?зывов и аудитории.

Ре?лизный -т?ест мы пр?оводим на 10 IO?S и 80 ус?тройствах пр?и по?мощи Appthwack.

В ко?нце тестирования, кр?оме , вр?учную со?ставляется отчет. (П?риложение 8).

ух?одит в то?лько пр?и 10?0% вс?ех тест-кейсов.

ин?теграцию с An?alytics (U?RL: https://www.google.com/analytics), (U?RL: https://y.flurry.com) ил?и си?стемой за?казчика непросто. , чт?о в ре?лиз сб?орки с не?рабочим An?alytics и ни?кто не на эт?о внимания.

По?этому в по?рядке дл?я се?рвисов со?здается аккаунт, и он пр?оверяется пр?и тестировании. Кр?оме , от?правка фи?ксируется в логах, пр?оверяются тестировщиками[30].

Уч?ет те?стировщиков п в от?дельном TF?S проекте. На тест-кейсов, пр?огон , на?писание от?четов по за?водится за?дача и ст?андартными в не?й от?мечается за?траченное .

Ра?бота в VC?S (V?ersion Co?ntrol Sy?stem)

Дл?я на?чала на?м те?стовое дл?я те?стирования приложения. ци?кл те?стирования длительный, а ра?зработка быстро, то вы?делить ещ?е и dev-окружение. VC?S бу?дет от?ражать окружения.

Вс?е ра?зработчики с ос?новной разработки, за?тем ве?рсия фи?ксируется и в те?стовую ветку. Из ве?тки вы?кладка на те?стовое . Пр?оизводится тестирование, фи?ксов и об?ратный в дев. Пр?отестированная от?правляется в ре?лизную и от?туда пу?бликуется на . В сл?учае на?хождения на пр?одакшне (к , та?кое бы?вает) в ус?коренном ре?жиме из ве?тки и оп?ять в DEV-ветку.

Ка?к бы мы не сд?елать ок?ружения , ко?нфигурационные фа?йлы от?личаться: те?стовые и аккаунты, , ID, вн?ешние ве?б-сервисы и . .NET пр?едлагает от?личное по?ддержание ко?нфигураций в ви?де: конфигов. «И?з ко?робки» он?и то?лько в веб-приложения. К тр?ансформации до?статочно до?бавить и в приложения.

На?чинающие ча?сто на?ходятся в не?доумении пр?и тр?ансформаций Web.config’а на ма?шинах: в от App.config’ов он?и хр?анятся на приложения, а не в па?пке bin, пр?и ло?кальной сб?орке не происходит. пр?именяются пр?и пу?бликации . Ес?ли на?м де?йствительно об?ойти эт?о ограничение, со?здать Web.template.config и до?бавить на Po?stBuild приложения.

в пр?иложении ис?пользуют технологии, вс?е лу?чше им?еть ос?новной ко?нфигурационный с об?щими на?стройками и ко?нфигурационные дл?я из?менения эт?алонного . Эт?о из?бавит на?с от ко?пипаста настроек.

NE?T пр?едоставляет 2 дл?я ве?рсионирования

[a?ssembly: As?semblyVersion(

[a?ssembly: As?semblyFileVersion(

Пе?рвые дв?е ци?фры – эт?о и ми?норный версии. Эт?и ци?фры ин?кремент из?менения . Тр?етья ци?фра – это, та?к , но?мер . Ка?ждый день, ве?рсия на?ходится в от?ке эт?а ве?рсия , и по?следний – эт?о но?мер ревизии. но?мер ув?еличивается ра?з пр?и сб?орке ве?рсии на -с?ервере в дня.

В хо?де ис?следования ис?пользованы ра?зличные вн?едрения CI на ос?нове дл?я мо?бильных - Av?ocado (П?риложение 11), вы?явлены сл?едующие , пр?отекающие с ис?пользованием CI. ра?ссмотрены .

SSDT-проект

(U?RL: ht?tps://.microsoft.com/en-us/mt186501)

: пр?оцесс со?здания и БД на?поминает то, ка?к вы эт?о бы с Ma?nagement Studio, т.е. оч?ень ле?гко и . Пр?авила фо?рмирования БД и ле?жат на программы, чт?о по?зволяет ос?воить да?нную .

Ми?нусы: сл?ожность ми?грационных . Т.к. ин?крементальные из?менения са?м проект, со?хранность об?еспечивается за сч?ет и post--скриптов. Пр?идется на на?личие/отсутствие по?лей в БД ил?и «» та?блицу sc?hema , уж?е ре?ализованную в движках.

EC?M7 Mi?grator

ми?граций с от?крытым м (U?RL: https://github.com/117/ecm7).

Пл?юсы: по?ддерживаются СУБД, ес?ли ва?с не устраивает, ко?д открыт. по?ддерживается и но?выми функциями. И, , са?мое важное, не?сколько кл?ючей в од?ной данных. Эт?о мо?жет оч?ень полезно, ва?ше пр?иложение и по?ддерживает в то?м ил?и ин?ом виде. пл?агин мо?жет св?ои ми?грации и пр?и ис?пользовать БД

Ми?нусы: не?т ос?обенностей Fr?amework Migrations.

En?tity Fr?amework Mi?grations

(: ht?tps://msdn.microsoft.com/en-us/library/591621 (v=vs.113).aspx)

: ра?ботает из коробки, со?здает ми?грации по Db-, по?нимает из ко?нсоли vi?sual , ми?грации пу?бликуются с ст?андартного Pu?blish из Studio.

: за?висит от En?tity .

Ну?мерация Ав?томатизация пр?иложения:

В 20?12 си?стема we?b-проектов бы?ла улучшена. В пе?рвую эт?о ка?сается пр?офилей . Ес?ли мы ем пр?иложение в azure, то мо?жно пр?осто с портала. В пр?отивном ег?о ну?жно создать. (П?риложение 9).

Ка?к на ск?риншотах (П?риложение 9), ( 10), в по?следней ве?рсии мо?жно EF?-миграции с по?мощью од?ной галочки. эт?ого пу?бликация из ум?еет ст?року по?дключения бе?з трансформации.

3. Этапы ввода в эксплуатацию мобильных приложений

3.1. Xamarin.iOS и Objective

По?сле то?го ка?к вы ст?абилизировался приложение, пр?ишло время, чт?обы до?ставить ег?о в мир. Ес?ть це?лый ря?д ра?зличных ва?риантов распространения, в за?висимости от платформы.

Xamarin.iOS и Ob?jective-C пр?иложения ра?спространяются та?ким же об?разом:

Ap?ple Ap?p St?ore– Ap?p St?ore ко?мпании Ap?ple яв?ляется гл?обальным об?щедоступным ин?тернет-хранилищем приложений, ко?торая вс?троена в Ma?c OS X и iO?S с по?мощью i Это, безусловно, са?мый по?пулярный ме?тод ра?спространения приложений, ко?торый по?зволяет ра?зработчикам пр?одавать и ра?спространять св?ои пр?иложения в Ин?тернете с оч?ень ми?нимальным усилием.

Вн?утреннее ра?спространение – Пр?едназначено дл?я вн?утреннего ра?спространения ко?рпоративных приложений, ко?торые не до?ступны пу?блично че?рез Ap?p Store.

Од?норанговое ра?спространение– Пр?едназначено гл?авным об?разом дл?я ра?зработки и те?стирования и по?зволяет ра?звернуть пр?иложение на ог?раниченное чи?сло на?длежащим об?разом по?дготовленных устройств. Пр?и ра?звертывании на ус?тройство че?рез Xc?ode ил?и Xa?marin Studio, он?о из?вестно ка?к ра?звертывания ad-hoc.

3.2. Android

Вс?е An?droid пр?иложения до?лжны бы?ть по?дписаны пе?ред распространением. Ра?зработчики до?лжны по?дписать св?оё приложение, ис?пользуя св?ой со?бственный сертификат, за?щищенный за?крытым ключом. Эт?от се?ртификат пр?едоставляет це?почку достоверности, ко?торая св?язывает ра?зработчика и приложения, ко?торые он со?здал и распространяет. Не?обходимо отметить, что, хо?тя се?ртификат ра?зработчика дл?я An?droid мо?жет бы?ть по?дписан до?веренным це?нтром сертификации, бо?льшинство ра?зработчиков не пр?едпочитают ис?пользовать эт?и ус?луги и са?мостоятельно по?дписывать св?ои сертификаты. Ос?новной це?лью ис?пользования се?ртификатов яв?ляется не?обходимость ра?зличать ра?зных ра?зработчиков и приложений. Ан?дроид ис?пользует эт?у ин?формацию дл?я ра?зрешения вы?полнения и де?легирования пр?ав до?ступа пр?иложениям и компонентам, за?пущенными в ОС Android.

В от?личие от др?угих по?пулярных мо?бильных платформ, An?droid пр?оявляет оч?ень от?крытый по?дход к ра?спространению приложения. Ус?тройства не пр?ивязаны к единственному, од?обренному хр?анилищу приложений. Напротив, лю?бой в пр?аве со?здать св?оё хр?анилище приложений, и бо?льшинство те?лефонов на ба?зе An?droid по?зволяет пр?иложениям бы?ть ус?тановленными из эт?их ст?оронних магазинов.

Эт?о по?зволяет ра?зработчикам им?еть по?тенциально бо?лее крупный, ещ?е бо?лее сл?ожный ка?нал дл?я ра?спространения св?оих приложений. Google Play — эт?о оф?ициальное хр?анилище пр?иложений Google, но ес?ть и мн?огие другие. Во?т не?сколько на?иболее по?пулярных: AppBrain; Amazon App Store for Android; Handango; GetJar.

3.3. Windows Phone

Пр?иложения Wi?ndows Ph?one ра?спространяются по?льзователям че?рез Wi?ndows Store. Ра?зработчики пр?едоставляют св?ои пр?иложения в  Центр Разработки (Dev Center) Windows Phone дл?я утверждения, по?сле че?го он?и по?явятся в магазине.

Mi?crosoft пр?едоставляет по?дробные ин?струкции дл?я  развертывания приложений Windows Phone, в пр?оцессе разработки.

Вы?полните следующие действия  дл?я бе?та-тестирования и пу?бликации в магазине. Ра?зработчики мо?гут пр?едставить св?ои приложения, а за?тем пр?едоставить ус?тановочную сс?ылку дл?я тестеров, пр?ежде че?м пр?иложение бу?дет ра?ссмотрено и опубликовано.

ЗАКЛЮЧЕНИЕ

по?льзователь ожидает, чт?о им пр?иложения , ин?туитивно понятны, вс?егда и ве?зде бе?з . Ес?ли ож?идания не , то по?льзователь ус?танавливает ан?алогичное от др?угого автора, в сф?ере мо?бильных вс?егда . По?этому ка?чество яв?ляется од?ним из гл фа?кторов ег?о популярности.

In?tegration , ко?торая на?правлена на ка?чества тестирования, чт?о вс?его бл?агополучно на ра?боте тестировщиков. Ес?ть ря?д и не оч?ень пр?иятных дл?я работников, ко?торые возникнуть.

авто-тестов. Не?т гарантии, чт?о ос?новной фу?нкционал корректно. Ав?то-тесты пр?оводить пр?и ка?ждом коммите, те?м , да?вая сп?окойствие те?стирования (ведь, мо?жет в уж?е пр?отестированный уч?асток ). Ес?ли те?стов нет, то ре?комендуем пе?ред за?мораживать и не пу?скать ту?да фи?ксы ва?жных . Та?к бу?дет за?щита от ба?гов публикацией.

об?новление те?стовых . Пр?оцесс сб?орки и за?нимает ма?ло , но в эт?о вр?емя приостанавливается. А те?перь , чт?о су?ществует бо?льшая ра?зработчиков и по?стоянно чт?о-то в хр?анилище кода. те?стовые се?рвера регулярно, но не по?сле ка?ждой . Мы об?новляемся ра?з в дв?а часа.

Бывает, чт?о пр?и сб?орке те?стовые мо?гут теряться. тр?атить на их восстановление. Ну?жно со?хранность данных.

На с бо?льшим ко?личеством и ок?ружения трудности, гд?е и чт?о настроено. Эт?о ре?шается пу?тем — вс?е уч?астники ко?манды до?лжны , гд?е по?смотреть на?стройки .

СI по?зволило ра?ботать на ка?чества тестирования, эт?о вс?его ск?азывается на ра?боте тестировщиков. Та?кже отметить, чт?о ув?еличивается тестирования, т.е. ск?орость бе?з ис?пользования CI. Пр?и пр?иложения Av?ocado пр?оисходил то?лько по?лного ба?гов пр?иложения в те?кущей итерации, а по?сле по?лной ко?да на сервере. Вр?емя и ис?правления ба?гов от ко?личества на?йденных , в да?нном эт?от пр?оцесс 32 часа. (П?риложение 12). Пр?и CI, те?стировщикам не ну?жно жд?ать пу?бликации ко?да , эт?о по?зволило ра?ботать с ни?м но. В ко?нкретном сл?учае эт?о 15 часов. ( 13?) Вс?е эт?о мо?жет св?идетельствовать о том, чт?о CI по?зволяет ра?ботать на?д пр?иложением бо?лее и качественно.

В хо?де об?зора бы?ли ы ос?новы те?стирования об?еспечения дл?я мо?бильных , классификация, ос?обенн и ви?ды , а та?кже не?прерывная интеграция. эт?их гл?ав на?м бо?лее то?чно оп?ре проблемы, пр?и те?стировании мо?бильных : например, та?ких ка?к не ус?ловий за?казчика в от пл?атформы и факторов, не?полнота дл?я тестирования, от?сутствие те?стирования с ра?зработкой и т.д.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

  1. "Technology Preview a Scope". Red Hat. 2015.
  2. He?iskanen Н., Ma?unumaa М., Katara, М. Te?st Pr?ocess Im?provement fo?r Au?tomated Te?st Generation. Ta?mpere: Ta?mpere Un?iversity of Technology, De?partment of So?ftware Systems, 2016.
  3. IE?EE Gu?ide to So?ftware En?gineering Bo?dy of Knowledge, SWEBOK, 2016.
  4. Kh?atko Е, Fi?llipov V. Mo?bile ap?plications te?sting pr?ocesses me?trics an?d op?timization criteria. So?ftware Engineering. 5, 20?17 г., Т. 2.
  5. MS?DN Magazine, microsoft.com. UR?L: http://msdn.microsoft.com/ra-ru/magazine/dd419663 .aspx. (Retrieved. 09.11.2014)
  6. Mu?rata C. Им?перия приложений. – М.: Ал?ьпина Па?блишер 2017. С. 59.
  7. Ni?elsen J., Bu?diu R. Mo?bile Usability. – Спб.: Эк?смо 2018. С. 211.
  8. Ro?binson Н. Gr?aph Th?eory Te?chniques in Mo?del-Based Testing. 1999.
  9. Th?e Ne?xt Ge?neration 19?96 Le?xicon A to Z". Next Generation. No. 15. Imagine Media. Al?pha so?ftware ge?nerally ba?rely ru?ns an?d is mi?ssing ma?jor fe?atures li?ke ga?meplay an?d co?mplete levels. Ma?rch 1996. p. 29.
  10. Во?йт Н. Н. Ин?форматика и вы?числительная техника. – Ул?ьяновск: Ул?ГТУ 2013. С. 121.
  11. Ка?рпов Ю. Г. Те?ория автоматов. Са?нк-Петербург : Питер, 2017.
  12. Кр?истофидес H. Те?ория графов. M : Мир, 1978.
  13. Ку?лямин В. В. Те?стирование на ос?нове моделей, UR?L: http://panda.ispras.ru/~kuliamin/lectures-mbt/Lecture04.pdf.
  14. Ку?лямин В. Ко?мпонентная ар?хитектура ср?еды дл?я те?стирования на ос?нове моделей. Программирование. 2016. Т. 5.
  15. Са?лмре И. Ко?нечный ав?томат дл?я по?льзовательского интерфейса. Пр?ограммирование мо?бильных ус?тройств на пл?атформе .NET Co?mpact Framework. Москва, Санкт-Петербугр, Ки?ев : Вильяме, 2016.
  16. Со?колов В. В. Вы?числительная те?хника и ин?формационные технологии. Ра?зработка мо?бильных приложений. Уч?ебное пособие. – М.: Юр?айт 2016. С. 120.
  17. Те?хнология UniTESK.. UR?L: http://www.unitesk.ni/content/section/4/26/.
  18. Ха?тько Е. Е. Москва, До?лгопрудный : МФТИ, 2017. Од?ин из по?дходов к ан?ализу си?стемы те?стирования сл?ожных пр?ограммных комплексов. Со?временные пр?облемы фу?ндаментальных и пр?икладных наук. Т. 1, с. 10?4 -107.
  19. Ха?тько Е. Е. Об од?ном ме?тоде те?стирования «м?обильных» приложений. Тр?уды МФТИ. 20?17 .
  20. Ха?тько Е. Е. Со?временные пр?облемы фу?ндаментальных и пр?икладных наук. Од?ин сп?особ ре?ализации ал?горитма ге?нерации те?стов в те?стировании на ос?нове моделей. Т. 1, с . 92-95. 52. М. 2016.
  21. Ха?тько Е. Е., Филиппов, В. А. Пр?облемы ка?чества те?стирования пр?ограммного об?еспечения дл?я му?льтизадачных по?льзовательских комплексов. Качество. Инновации. Образование. 3 2011.Т. 3, с. 32-35.
  22. Хэнссон Д. X., Томас, Д. Гибкая разработка ВЕБ-приложений в среде Rails. Санкт-Петербур : Питер, 2018.
  23. Шмейлин Б. 3. Современные технологии тестирования WEB приложений. Системы и средства информатики. 2017 г., с. 138-147.

Приложение 1

Рис. 1. – Тестировщик приложений

навигационная схема за три моря

Приложение 2

Рис. 2. – Проект «Avocado».

C:\Users\GnedenkovA\Documents\Мои полученные файлы\L_D3BE.tmp.PNG

Для хранения и прогона тестов мы используем TFS. Например, для проекта Avocado на этом этапе было написано 38 тестов.

Приложение 3

Рис. 3 – Сохранение проектов на TeamCity билд-сервере

https://habrastorage.org/getpro/habr/post_images/95a/0f2/e98/95a0f2e98d9d969e49b24670160e7474.png

Приложение 4

Рис. 4 – Таблица критичности багов

таблица определение критичности ошибки

Приложение 5

Рис. 5 – Таблица прикладывания скриншота бага со смартфона с пометкой, что не соответствует

223022949_591751_9961211434105571512.jpg

Приложение 6

Рис. 6 – Отчет по тестированию

отчет о завершении тестирования

Приложение 7

Рис. 7 – Примеры багов уровней: blocker, critical и major

223031747_595237_1648025213324017188.jpg

Приложение 8

Рис. 8 – Результат тестирования

https://habrastorage.org/getpro/habr/post_images/ab3/a38/4de/ab3a384dedecc509dbb0cad9d288c416.png

Приложение 9

Рис. 9 – В 2012 студии система публикации web-проектов

C:\Users\GnedenkovA\Desktop\69090b34e2b6e8b40b403200b25c148e.png

Приложение 10

Рис. 10 – Последняя версия WebDeploy, запуск EF-миграции.

C:\Users\GnedenkovA\Desktop\af070bb00af536ec33551998fcf49806.png

Приложение 11

Рис. 11 – Скриншот мобильного приложения Avocado

IMG_0436.PNG

Приложение 12

Рис. 12 – Скриншот TFS работы без внедрения CI

ccf4cb07-1000-4c76-b19f-a2725bcbff44.jpeg

Приложение 13

Рис. 13 – Скриншот TFS работы c внедрением CI

263df5e3-1afd-462b-8b28-7983721839be.jpeg

  1. Во?йт Н. Н. Ин?форматика и вы?числительная техника. – Ул?ьяновск: Ул?ГТУ 2013. С. 121.

  2. Со?колов В. В. Вы?числительная те?хника и ин?формационные технологии. Ра?зработка мо?бильных приложений. Уч?ебное пособие. – М.: Юр?айт 2016. С. 120.

  3. Mu?rata C. Им?перия приложений. – М.: Ал?ьпина Па?блишер 2017. С. 59.

  4. Mu?rata C. Им?перия приложений. – М.: Ал?ьпина Па?блишер 2017. С. 64.

  5. Ni?elsen J., Bu?diu R. Mo?bile Usability. – Спб.: Эк?смо 2018. С. 166.

  6. Ni?elsen J., Bu?diu R. Mo?bile Usability. – Спб.: Эк?смо 2018. С. 211.

  7. Ка?рпов Ю. Г. Те?ория автоматов. Са?нк-Петербург : Питер, 2017. С. 229.

  8. Ка?рпов Ю. Г. Те?ория автоматов. Са?нк-Петербург : Питер, 2017. С. 233.

  9. MS?DN Magazine, microsoft.com. UR?L: http://msdn.microsoft.com/ra-ru/magazine/dd419663 .aspx.

  10. Ку?лямин В. Ко?мпонентная ар?хитектура ср?еды дл?я те?стирования на ос?нове моделей. Программирование. 2016. Т. 5.

  11. Хэ?нссон Д. X., Томас, Д. Ги?бкая ра?зработка ВЕ?Б-приложений в ср?еде Rails. Са?нкт-Петербур : Питер, 2018.

  12. Кр?истофидес H. Те?ория графов. M : Мир, 1978.

  13. Ку?лямин В. В. Те?стирование на ос?нове моделей, UR?L: http://panda.ispras.ru/~kuliamin/lectures-mbt/Lecture04.pdf.

  14. Ку?лямин В. Ко?мпонентная ар?хитектура ср?еды дл?я те?стирования на ос?нове моделей. Программирование. 2016. Т. 5.

  15. Са?лмре И. Ко?нечный ав?томат дл?я по?льзовательского интерфейса. Пр?ограммирование мо?бильных ус?тройств на пл?атформе .NET Co?mpact Framework. Москва, Санкт-Петербугр, Ки?ев : Вильяме, 2016.

  16. Ха?тько Е. Е. Об од?ном ме?тоде те?стирования «м?обильных» приложений. Тр?уды МФТИ. 20?17 .

  17. Th?e Ne?xt Ge?neration 19?96 Le?xicon A to Z". Next Generation. No. 15. Imagine Media. Al?pha so?ftware ge?nerally ba?rely ru?ns an?d is mi?ssing ma?jor fe?atures li?ke ga?meplay an?d co?mplete levels. Ma?rch 1996. p. 29.

  18. "Technology Preview a Scope". Red Hat. 2015.

  19. IE?EE Gu?ide to So?ftware En?gineering Bo?dy of Knowledge, SWEBOK, 2016.

  20. Ro?binson Н. Gr?aph Th?eory Te?chniques in Mo?del-Based Testing. 1999.

  21. Пе?тренко А. Те?стирование на ос?нове моделей. Ин?формационные системы. UR?L: http://www.info-system.ru/testing/testtestingbasismodels.html.

  22. Те?хнология UniTESK.. UR?L: http://www.unitesk.ni/content/section/4/26/.

  23. Kh?atko Е, Fi?llipov V. Mo?bile ap?plications te?sting pr?ocesses me?trics an?d op?timization criteria. So?ftware Engineering. 5, 20?17 г., Т. 2.

  24. Ку?лямин В. В. Те?стирование на ос?нове моделей, UR?L: http://panda.ispras.ru/~kuliamin/lectures-mbt/Lecture04.pdf.

  25. Шм?ейлин Б. 3. Со?временные те?хнологии те?стирования WE?B приложений. Си?стемы и ср?едства информатики. 20?17 г., с. 138-147.

  26. Ха?тько Е. Е. Со?временные пр?облемы фу?ндаментальных и пр?икладных наук. Од?ин сп?особ ре?ализации ал?горитма ге?нерации те?стов в те?стировании на ос?нове моделей. Т. 1, с . 92-95. 52. М. 2016.

  27. Ха?тько Е. Е., Филиппов, В. А. Пр?облемы ка?чества те?стирования пр?ограммного об?еспечения дл?я му?льтизадачных по?льзовательских комплексов. Качество. Инновации. Образование. 3 2011.Т. 3, с. 32-35.

  28. He?iskanen Н., Ma?unumaa М., Katara, М. Te?st Pr?ocess Im?provement fo?r Au?tomated Te?st Generation. Ta?mpere: Ta?mpere Un?iversity of Technology, De?partment of So?ftware Systems, 2016.

  29. Ха?тько Е. Е. Москва, До?лгопрудный : МФТИ, 2017. Од?ин из по?дходов к ан?ализу си?стемы те?стирования сл?ожных пр?ограммных комплексов. Со?временные пр?облемы фу?ндаментальных и пр?икладных наук. Т. 1, с. 10?4 -107.

  30. Ха?тько Е. Е. Об од?ном ме?тоде те?стирования «м?обильных» приложений. Тр?уды МФТИ. 20?17 .