Офіс в Україні: +38 (063) 50 74 707

Офіс у США: +1 (212) 203-8264

Ручне тестування

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

Мобільне тестування

Оптимізуйте свої мобільні додатки для бездоганної роботи на всіх пристроях і платформах за допомогою наших комплексних послуг з мобільного тестування.

Автоматизоване тестування

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

Функціональне тестування

Вдосконалюйте основний функціонал вашого додатку за допомогою наших послуг з функціонального тестування

ПЕРЕГЛЯНУТИ ВСІ ПОСЛУГИ

Обговорення -

0

Обговорення -

0

Як відомо, в останні роки операційна система Mac OS стає все більш популярною на ринку програмного забезпечення.

В першу чергу, це пов’язано з успішними та ефективними діями розробників Apple.

Постійно випускаючи велику кількість різноманітних комп’ютерів на базі Mac OS, цей бренд завойовує максимальну довіру та лояльність клієнтів.

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

Тестування функціональності додатків для Mac OS має свої особливості, які необхідно враховувати тільки на основі детальних знань про внутрішню архітектуру такої системи.

Схема тестування додатків для Mac OS

Схема тестування додатків для Mac OS

Зараз ми поговоримо про особливості тестування утиліт в Mac OS, що зазвичай трапляється, якщо у вас, наприклад, немає джейлбрейкованого пристрою і вам потрібно одразу зрозуміти, як працює експлойт. Також ми спробуємо виокремити основні можливості та обмеження, які виникають під час тестування веб-продуктів в Mac OS, і виділимо найпопулярніші інструменти для тестування.

До речі, всі тести ми будемо виконувати зі встановленим Xcode, а утиліти запускати в симуляторі iOS.

Робота з утилітами iTunes

На жаль, Xcode не дозволяє встановлювати IPA-файли з iTunes, оскільки всі додатки цієї платформи копіюються відповідно до спеціальної архітектури ARM і в симуляторі працюють тільки утиліти, скомпільовані тільки для системної архітектури x86/x64. Таким чином, можна сказати, що для перевірки коректності тестування програми на MacOS слід проводити фінальні тести.

До речі, для такої роботи потрібно використовувати спеціальне програмне забезпечення. У нашому випадку це iOS-додаток Dam Vulnerable.

Аналіз локальної бази даних

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

Локальна база даних

Локальна база даних

Робота з системними журналами

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

Але іноді розробники перевіряють, чи запускається такий додаток на пристрої або його симуляторі, і записують дані в лог лише під час тестування на симуляторі. Якщо таке тестування не виконується, можна бути повністю впевненим, що програма має помітну вразливість.

Робота з відладчиком

Під час тестування утиліт ви завжди можете налаштувати відладчик з програмою, яка працює на вашому симуляторі.

З нашого досвіду, використання LLDB є найбільш ефективним, оскільки така система має безліч програм для роботи в Xcode.

Протестований iOS-додаток, який працює в симуляторі, буде автоматично відображатися в списку завдань, який ви можете знайти при виконанні команди ps aux.

У процесі підключення відладчика в якості основних символів використовуйте ім’я (логін) або ідентифікатор обраного процесу.

Налагоджувач

Налагоджувач

Якщо говорити про процес трасування методів, то його можна виконати за допомогою відладчика LLDB, який автоматично вбудовується в додаток Xcode. Для завершення процесу достатньо натиснути на знак “+”, який з’явиться на екрані.

objc msgSend Команда

objc msgSend Команда

Тепер наше завдання - встановити точку завершення для швидкого доступу до команди tobjc msgSend.

Вручну додайте нову функцію Команду відладчика з функцією і позначте поле “Автоматично продовжувати після оцінки дій”.

Тепер ми можемо виконати абсолютно будь-яку трасування, щоб отримати доступ до методу objc_msgSend, згаданого вище.

Використання Cycript

Така утиліта допоможе нам швидко проаналізувати слабкі місця вашого додатку і, можливо, підкаже, які дії необхідно виконати, щоб їх позбутися. На операційній системі MacOS так само, як і на інших пристроях та системах.

Синопсис

Синопсис

Операції з відстеження мережевого трафіку

Тестування трафіку відповідно до використовуваних протоколів HTTP/HTTPS не викликає жодних проблем. Такі додатки, як Charles або Burpsuite, добре підійдуть.

Для аналізу поточного HTTPS-трафіку необхідно встановити SSL-сертифікат у використовуваний симулятор (це робиться шляхом переміщення файлів у вікні симулятора і натискання кнопки “Встановити”).

Тестування програм для Mac OS на платформі iTunes connect

Як відомо, перевірка створеної вами утиліти займає близько 1 тижня, але якщо вам “пощастило” і ви завантажили її перед вихідними або святами, то вона буде схвалена приблизно через 2-3 тижні.

У наступних параграфах ми дізнаємося, як прискорити і протестувати перевірку додатків для Mac OS в AppStore, які функціонують на сьогоднішній день. До речі, обидва способи на 100% ефективні і безкоштовні!

1. Огляд додатку “Експедиція

Треба сказати, що це 100% легальний спосіб провести швидку перевірку (тестування) утиліти Apple.

Все, що нам потрібно - це заповнити контактні дані та описати причину, чому ви хочете швидко її перевірити.

Зазвичай QA використовують такі слова - Critical fix bug і в описі вказують, що вони знайшли досить серйозну помилку, яка може серйозно вплинути на подальшу роботу програми.

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

Огляд додатку

Огляд додатку “Експедиція

Зазвичай, через 2 години ви отримуєте повідомлення з детальним рішенням за заявкою.

Зазвичай, протестований додаток проходить стадію In Review і, якщо немає проблем, він автоматично отримує статус Ready for sale.

Також хочемо зазначити, що при такому “швидкому” тестуванні додатку сервіс Apple додатково використовує внутрішні компоненти для майбутнього релізу (inApp Purchases).

[highlight dark=”no”]Пам’ятайте![/highlight] Великим недоліком такого варіанту тестування є те, що його можна використовувати дуже часто. Компанія Apple наполегливо рекомендує використовувати його лише в тих випадках, коли вам, як розробникам, потрібна швидка і якісна перевірка утиліти.

2. “Фокус”

Суть цієї перевірки полягає в тому, що QA повинні отримати в особистому кабінеті багато заявок зі статусом “Очікує на розгляд” (за даними розслідувань - від 7 до 10 заявок одночасно).

Але як проводити тестування, якщо у вас лише 1 додаток, але він найважливіший і найголовніший? Дуже просто.

Твої кроки:

- Розробити та завантажити утиліту на платформу;
- Розробити “фейкові” утиліти та випадковий ID, додати заглушки для іконок та скріншотів, створити для них дистрибутивні сертифікати та змонтувати їх так само, як і для типового додатку;
- Змінити статус утиліти на “чекає на завантаження/завантаження”;
- Створити порожній додаток та відредагувати ідентифікатор пакунка на розробленому вами “фейковому” додатку та завантажити його.

В результаті ми матимемо кілька утиліт зі статусом “Очікує на розгляд”.

Такі хитрощі та перевірки допомогли нам скоротити час затвердження статусу заявки в Apple з 1 тижня до 1-3 днів.

Одразу після того, як всі утиліти отримають статус “На розгляді”, ми повинні зайти в iTunesConnect і виконати бінарну команду “Відхилити” для всіх фальшивих додатків.

Таким чином, підроблена утиліта змінить статус з “На розгляді” на “Відхилено розробником” і не буде перевірена. А перевірена утиліта пройде модерацію майже в той же день.

Автоматизована перевірка створених тестів в Mac OS

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

Є 2 варіанти роботи над такою стратегією:

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

Які інструменти можна використовувати для тестування?

UIAutomation - це типова пропозиція Apple, яка дозволяє оперувати створеними тестами на основі JavaScript.

До речі, QA не повинен компілювати інші бібліотеки. Після виходу версії 4.3 в Xcode з’явилася можливість записувати тестові кейси за допомогою команди record.

Robot Framework - це спеціальний фреймворк з відкритим вихідним кодом для проведення автоматизованого приймального тестування та створення бази приймальних тестів, які мають величезну технічну функціональність. Він підтримує численні додаткові бібліотеки.

MoneyTalk - популярний інструмент для тестування додатків для Mac OS. Має потужну скриптову мову, дає можливість створювати та зберігати власні тестові кейси та набори тестів. За словами розробників, він відмінно заважає Eclipse і має вбудований диктофон. В утиліту потрібно ставити власні бібліотеки.

0 коментарів

Опублікувати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Вам також може сподобатися

Тестування програмного забезпечення в США у 2026 році - 10 речей, які дійсно мають значення

Тестування програмного забезпечення в США у 2026 році - 10 речей, які дійсно мають значення

Чому місцезнаходження все ще має значення - і що насправді дає розподілена команда QA Давайте будемо відвертими....

Гід по ціноутворенню на тестування програмного забезпечення: Скільки платитимуть американські компанії у 2026 році

Гід по ціноутворенню на тестування програмного забезпечення: Скільки платитимуть американські компанії у 2026 році

Практичний посібник для розуміння ціноутворення на послуги з контролю якості та отримання найкращої цінності для...