Перейти к содержимому

Логи как инструмент тестировщика
онлайн, начало 21 мая
Автоматизация функционального тестирования
онлайн, начало 25 мая
Управление требованиями
онлайн, начало 25 мая
Школа тест-менеджеров v. 2.0
онлайн, начало 23 мая
Фотография

Чтение SMS с USB-модема

QTP AT USB MSCOMM ActiveX

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1 kmdm229

kmdm229

    Новый участник

  • Members
  • Pip
  • 20 сообщений
  • ФИО:Шелехов Алексей


Отправлено 07 Апрель 2014 - 17:54

Выкладываю функцию чтения смс с помощью QTP и AT-комманд напрямую из USB-модема. Может быть кому-то пригодится.

Function getSMS(timeout)
  getSMS = false
    Set oComm = CreateObject("MSCOMMLib.MSComm")
    oComm.CommPort = 7
    oComm.Settings = "9600,n,8,1"
    oComm.PortOpen = True
    oComm.InputMode = comInputModeText
    oComm.InputLen = 0
    oComm.Output ="AT+CMGF = 1" & vbCrLf
    oComm.Output = "AT+CNMI=1,2,0,0,0" & vbCrLf
    wait 0,500
   For i = 0 to timeout
            out = oComm.Input
            If полученная смс содержит "CMT" Then
                getSMS = out
                Exit for
            End If
            wait 1
            i = i+1
    Next
oComm.PortOpen = False
set oComm = nothing
End Function

Этот код можно по желанию разбить на отдельные функции и сделать класс для работы с COM-портом. Также можно доделать проверку подключения модема.

Извиняюсь за возможные ошибки и форматирование, т.к. писал на коленке.


  • 1

#2 ch_ip

ch_ip

    Гуру

  • Members
  • PipPipPipPipPipPip
  • 1 092 сообщений
  • ФИО:Павел Абдюшев
  • Город:Москва


Отправлено 07 Апрель 2014 - 20:47

Круто, спасибо!
Ошибок явных не нашел, разве что мне не нравится, что функция возвращает или булевское значение, или строку. Я бы предпочел, чтобы тип данных всегда был один, например, получить пустую строку, если смс не пришло.
  • 0

#3 QA*

QA*

    Активный участник

  • Members
  • PipPip
  • 101 сообщений
  • Город:Москва

Отправлено 08 Апрель 2015 - 05:15

MSCOMMLib.MSComm с сайта Microsoft можно скачать? А то мой qtp жалуется на её отсутствие.
  • 0


Программирование на С# для тестировщиков
онлайн, начало 1 июня
Эффективное использование TestNG и JUnit
онлайн, начало 25 мая
Selenium WebDriver: полное руководство
онлайн, начало 15 июня
Автоматизированное тестирование Android-приложений
онлайн, начало 13 июня




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Яндекс.Метрика
Реклама на портале