Обзор телекоммуникационного домена
Телекоммуникации — один из крупнейших и сложнейших доменов ПО. Телеком-системы обрабатывают миллиарды транзакций ежедневно, управляют голосовым и информационным трафиком в реальном времени и должны обеспечивать почти идеальный аптайм.
Архитектура телеком-систем
Телеком-системы делятся на две категории:
Business Support Systems (BSS):
- Биллинг: Тарификация, списание, выставление счетов, сбор платежей
- CRM: Управление клиентами, сервисные запросы, претензии
- Управление заказами: Активация, изменение, отключение услуг
- Revenue Assurance: Выявление утечек доходов и ошибок биллинга
Operations Support Systems (OSS):
- Управление сетью: Мониторинг, обнаружение сбоев, оптимизация производительности
- Провижининг: Настройка сетевых элементов для новых услуг
- Service Assurance: End-to-end мониторинг качества услуг
- Управление инвентарём: Учёт физических и логических сетевых ресурсов
Терминология домена
- CDR (Call Detail Record): Запись метаданных каждого звонка, сессии данных или SMS
- Тарификация (Rating): Применение тарифных правил к CDR для расчёта начислений
- Медиация: Сбор и нормализация сырых данных использования от сетевых элементов
- Провижининг: Настройка сетевого оборудования для оказания услуг
- Перенос номера (MNP): Перенос телефонных номеров между операторами
Фокусные области тестирования телекома
Тестирование точности биллинга
Биллинг — двигатель доходов телекома:
Ключевые сценарии тестирования биллинга:
- Голосовые звонки: пиковые vs. внепиковые тарифы, минимальный заряд, посекундная vs. поминутная тарификация
- Использование данных: ступенчатые планы, пороги дросселирования, политики добросовестного использования
- SMS/MMS: списание из пакетов, международные тарифы, премиум-номера
- Роуминг: начисления посещаемой сети, наценка домашней сети, обработка TAP-файлов
Тестирование обработки CDR
CDR — сырьё телеком-биллинга. Тестировать обработку CDR на:
- Обнаружение и устранение дублей CDR
- Обработку повреждённых CDR (пропущенные поля, невалидные значения)
- Объёмную обработку (миллионы CDR в час)
- Точность временных меток в разных часовых поясах
- Корреляцию частичных CDR (установка + завершение вызова)
Тестирование протоколов
Телеком использует специализированные протоколы:
- SIP (Session Initiation Protocol): Установка и завершение VoIP-вызовов
- Diameter: Аутентификация, авторизация и учёт для сетей 4G/5G
- SS7: Legacy-протокол сигнализации для сетей с коммутацией каналов
- GTP: Туннелирование данных для мобильных пакетных сетей
Продвинутое тестирование телекома
Тестирование Network Slicing в 5G
5G вводит network slicing — создание виртуальных сетей на общей инфраструктуре:
- Тестирование изоляции слайсов: трафик одного слайса не должен влиять на другой
- Проверка гарантий QoS по слайсам (задержка, пропускная способность, надёжность)
- Тестирование жизненного цикла слайсов: создание, изменение, удаление
- Проверка биллинга по слайсам — разные слайсы могут иметь разные тарифные планы
Тестирование Revenue Assurance
Revenue assurance выявляет разрывы между использованными услугами и полученным доходом:
- Сравнение CDR, сгенерированных сетью, с CDR, обработанными биллингом
- Выявление неоплаченного использования (потерянные CDR, сбои медиации)
- Обнаружение переплат (дубли CDR, некорректные тарифы)
- Тестирование сверки между счётчиками сети и записями биллинга
Тестирование системы обнаружения фрода
Телеком-фрод обходится отрасли в миллиарды ежегодно:
- Фрод SIM-боксов: международные звонки через локальные SIM-карты
- Фрод подписки: получение услуг по ложной идентичности
- Фрод Wangiri: мошенничество с пропущенными звонками с премиум-номеров
- Тестирование правил обнаружения на известных паттернах фрода
Практическое задание
Разработайте тест-кейсы для системы мобильного биллинга:
- Тарификация голоса: Тестируйте пиковые vs. внепиковые тарифы, звонки, пересекающие тарифную границу
- Списание за данные: Тестируйте пороги ступенчатых планов, дросселирование при достижении лимита
- Надбавки роуминга: Тестируйте голос, данные и SMS с корректно применённой наценкой роуминга
- Скидки пакетов: Тестируйте списание минут и данных из пакета
- Точность счёта: Проверьте, что сумма всех тарифицированных CDR совпадает с итогом счёта
Руководство по решению
Тест тарифной границы:
- Звонок начинается в 17:59 (внепиковый период с 18:00), длительность 5 минут
- Первая минута по пиковому тарифу, оставшиеся 4 — по внепиковому
- Проверить корректное применение раздельной тарификации
Тест дросселирования данных:
- План: 5 ГБ на скорости 4G, затем дросселирование до 1 Мбит/с
- Сгенерировать ровно 5 ГБ использования, проверить дросселирование следующей сессии
- Проверить отправку уведомления о дросселировании абоненту
Советы из практики
- Точность биллинга нужно тестировать до уровня долей копейки — ошибки умножаются на миллионы абонентов
- Тестируйте с реалистичными объёмами CDR — пакетная обработка в масштабе выявляет другие баги
- Тестирование переноса номера должно покрывать всех операторов рынка
- Тестируйте обработку часовых поясов для звонков, пересекающих полночь или границы зон
- Проверяйте расчёты пропорционального списания при изменении плана посреди периода
Ключевые выводы
- Тестирование телекома сосредоточено на точности биллинга и обработке данных в масштабе
- Обработка CDR — основа доходов телекома — тестировать её значит тестировать бизнес
- Тестирование протоколов (SIP, Diameter) требует специализированных инструментов
- Тестирование на масштабе необходимо — телеком-системы обрабатывают миллиарды записей ежедневно