Тестирование процесса входа

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

  1. Создайте новый аккаунт тестового пользователя на Facebook.
  2. Войдите на Facebook, используя данные тестового пользователя.

Общие тесты

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

1. В ваше приложение через Facebook входит новый пользователь.

  1. Перейдите в приложение и нажмите кнопку Log in with Facebook.
  2. Нажмите кнопку "OK", чтобы принять разрешения на чтение.
  3. Ещё раз нажмите кнопку "OK", чтобы принять разрешения на запись, если они используются.
  4. Перейдите в настройки приложения и убедитесь, что в них отражены предоставленные разрешения.

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

  1. Перейдите в приложение и выполните вход, указав свой электронный адрес.
  2. Выйдите из приложения и нажмите кнопку "Вход через Facebook".
  3. Нажмите кнопку "ОК", чтобы принять разрешения на чтение (если используются разрешения на запись, ещё раз нажмите кнопку "ОК", чтобы их принять).
  4. Перейдите в настройки приложения на Facebook и убедитесь, что в них отражены предоставленные разрешения.

3. Пользователь, ранее вошедший в приложение через Facebook, входит повторно.

  1. Вернитесь в приложение и нажмите кнопку "Вход через Facebook".
  2. Нажмите кнопку "ОК", чтобы принять разрешения на чтение (если используются разрешения на запись, ещё раз нажмите кнопку "ОК", чтобы их принять).
  3. Удалите приложение, а затем установите его заново.
  4. Откройте приложение и нажмите кнопку "Вход через Facebook".
  5. Убедитесь, что при входе не появляются диалоговые окна с запросом разрешений.

4. Пользователь отменил вход в приложение через Facebook и пытается войти заново.

  1. Перейдите в приложение и нажмите кнопку "Вход через Facebook".
  2. Убедитесь, что разрешения на чтение отображаются, и выберите "Отмена".
  3. Откройте приложение и нажмите кнопку "Вход через Facebook".
  4. Убедитесь, что разрешения на чтение по-прежнему присутствуют.

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

  1. Перейдите в приложение и нажмите кнопку "Вход через Facebook".
  2. Нажмите кнопку "ОК", чтобы принять разрешения на чтение (если используются разрешения на запись, ещё раз нажмите кнопку "ОК", чтобы их принять).
  3. Перейдите в настройки приложения на Facebook и удалите приложение.
  4. Повторите шаги 1–2, чтобы убедиться, что вход через Facebook работает.

6. Пользователь изменяет пароль Facebook после входа в приложение через Facebook.

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

  1. Измените пароль Facebook и выберите команду "Выйти из системы на других устройствах".
  2. Перейдите в приложение и нажмите кнопку "Вход через Facebook".
  3. Нажмите кнопку "ОК", чтобы принять разрешения на чтение (если используются разрешения на запись, ещё раз нажмите кнопку "ОК", чтобы их принять).
  4. Перейдите в настройки приложения на Facebook и убедитесь, что в них отражены предоставленные разрешения.

7. Пользователь отключает Платформу Facebook через настройки приложений и входит в ваше приложение.

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

  1. Выключите платформу для тестового пользователя в настройках приложений
  2. Перейдите в приложение и нажмите кнопку "Вход через Facebook".
  3. Нажмите кнопку "ОК", чтобы принять разрешения на чтение (если используются разрешения на запись, ещё раз нажмите кнопку "ОК", чтобы их принять).
  4. Убедитесь, что платформа теперь включена и приложение добавлено в профиль тестового пользователя с правильными настройками конфиденциальности.

8. Пользователь вновь входит в приложение, но срок действия маркера приложения истек.

См. наше руководство по обработке маркеров с истекшим сроком действия.

9. Протестируйте синхронизацию статуса игр на различных устройствах.

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

Дополнительные варианты использования, которые следует протестировать в iOS

1. Пользователь входит в ваше приложение, когда приложение Facebook установлено и интеграция Facebook с iOS включена.

Если в ответ на запрос разрешений на чтение при входе через Facebook человек выберет "Отмена", ему придется зайти в системные настройки iOS, чтобы заново включить вход для вашего приложения.

Если предоставление разрешений Facebook через интегрированный вход iOS заблокировано, то в дальнейшем для запроса разрешений вашему приложению придется использовать обычный вход для быстрого переключения на приложение. Применительно к вызовам SDK в таком случае не используйте FBSessionLoginBehaviorUseSystemAccountIfPresent в качестве FBSessionLoginBehavior. См. разделы о FBSession для SDK 3.24 и более ранних версий, а также о FBSDKAccessToken currentAccessToken и FBSDKLoginManager для более новых версий.

2. Пользователь входит в ваше приложение, когда приложение Facebook не установлено и интеграция Facebook с iOS выключена.

  1. Перейдите в приложение и нажмите кнопку "Вход через Facebook".
  2. Убедитесь, что открывается веб-окно входа через Facebook для мобильных приложений, и выполните вход.
  1. Нажмите кнопку "ОК", чтобы принять разрешения на чтение (если используются разрешения на запись, ещё раз нажмите кнопку "ОК", чтобы их принять).
  2. Перейдите в настройки приложения на Facebook и убедитесь, что в них отражены предоставленные разрешения.

3. Пользователь входит в ваше приложение, когда приложение Facebook не установлено, а интеграция Facebook с iOS включена.

  1. Перейдите в приложение и нажмите кнопку "Вход через Facebook".
  2. Нажмите кнопку "ОК", чтобы принять разрешения на чтение (если используются разрешения на запись, ещё раз нажмите кнопку "ОК", чтобы их принять).
  3. Перейдите в настройки приложения на Facebook и убедитесь, что в них отражены предоставленные разрешения.

Тестовые пользователи

В настройках приложений (в разделе "Роли", например https://developers.facebook.com/apps/{YOUR_APP_ID}/roles/test-users/) можно создать аккаунты тестовых пользователей, чтобы проверить интеграцию с Facebook, не опасаясь спама.

В SDK для iOS можно использовать класс FBSDKTestUsersManagerFBSDKCoreKit), чтобы получить маркеры доступа для этих тестовых пользователей и создать автоматизированные тесты интеграции. Обратите внимание: этому классу требуется секрет приложения. Убедитесь, что секрет не включен в выпущенную версию приложения.