Developer Hub / Испытательный адаптер

Тестирование без устройства

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

Стандарт публикацииРазработчикам

Подключите и проверьте приложение на целевом оборудовании.

Тесты бизнес-логики, которые не требуют Android устройство, сканер или бинарный поставщик.

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

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

Сопоставимые данные об устройствах с методикой, версией и ограничениями.

Материалы для разработчиковИспытательный адаптер
Испытательная лаборатория RuggedLayerНачинающий
Технические руководства, сведения об SDK, примеры и совместимость защищенных Android-устройств.Команды, которым нужны быстрые единичные тесты и чистая граница между правилами рабочего процесса и аппаратными вызовами.
  • Функция домена, потребляющая нормализованное событие захвата.
  • Система тестирования, уже запущенная в проекте.
  • Четкое правило того, что должно происходить с дублирующими, пустыми и недействительными значениями.

Стандарт публикации

Создавайте и проверяйте Android-интеграции на основе версионируемых данных.

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

  1. 01

    В зависимости от вашего порта, а не класса устройства

    Приемный рабочий процесс должен знать о CaptureEvent и CapturePort. Он не должен импортировать менеджер сканера, транслировать постоянный или тип модели.

  2. 02

    Детерминированные события

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

  3. 03

    Утверждение бизнес-результатов

    Проверяйте движение акций, сообщения валидации и обработку дубликатов. Не утверждайте, что отзыв поставщика был вызван из бизнес-теста; это относится к тесту аппаратного адаптера.

  4. 04

    Держите аппаратный тест маленьким

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

Примеры приложений / Kotlin

Шаблоны SDK и API

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

fake-capture-port-test.kt

class FakeCapturePort : CapturePort {
  private var listener: ((CaptureEvent) -> Unit)? = null

  override fun open() = Unit
  override fun start() = Unit
  override fun stop() = Unit
  override fun close() = Unit

  override fun setListener(listener: (CaptureEvent) -> Unit) {
    this.listener = listener
  }

  fun emit(value: String, symbology: String? = "test") {
    listener?.invoke(CaptureEvent(value, symbology, Instant.now()))
  }
}

@Test
fun receiving_a_valid_barcode_updates_stock() {
  val scanner = FakeCapturePort()
  val workflow = ReceivingWorkflow(scanner)

  workflow.start()
  scanner.emit("SKU-001")

  assertEquals(ReceivingState.Accepted("SKU-001"), workflow.state)
}
Бинарные файлы, API, прошивки и примеры производителя публикуются только после фиксации разрешения и поддерживаемой области.

Распространение SDK

Условия публикации

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

Тест требует реального устройства для запуска

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

Один и тот же скан принимается дважды.

Добавьте явное дублирующее событие и утвердите переход состояния один раз.

Пустое значение достигает хранилища

Отклонить на границе нормализации и обнажить восстанавливаемое пользователем состояние.

Как читать справочные данные

Сопоставимые данные об устройствах с методикой, версией и ограничениями.

  1. 01

    Проведите поддельные тесты на каждый адаптер CI строить.

  2. 02

    Прикрыть действительные, пустые, дублирующие, негабаритные и транспортные случаи.

  3. 03

    Держите адаптер для конкретного устройства за одной границей пакета.

  4. 04

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

Подключите и проверьте приложение на целевом оборудовании. Подключите одобренный сканер SDK CapturePort без изменения процесса приема.

Материалы

Шаблоны SDK и API

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

Подключите и проверьте приложение на целевом оборудовании.

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

Подключить и проверить приложение