У меня есть базовое c приложение, которое просто имеет несколько кнопок, и каждая кнопка загружает видео или игру на внутренний веб-сервер. При тестировании приложения, которое полностью перенаправляет вас в сафари, я должен настроить таргетинг на сафари, переключив свой комплект приложений следующим образом: XCUIApplication(bundleIdentifier: "com.apple.mobilesafari")
Мы не перенаправляем за пределы приложения с помощью этой инфраструктуры, и у нас просто есть локальная сеть на сервере, размещенном на localhost:7878
, изменение идентификатора пакета для локального хоста, похоже, не работает. Я видел только нативные iOS приложения, работающие с переключателем bundleIdentifier.
Ниже приводится описание debugDescription после запуска внутреннего веб-сервера:
Attributes: Application, pid: 91571, label: 'Sample_MP'
Element subtree:
→Application, 0x6000004bef40, pid: 91571, label: 'Sample_MP'
Window (Main), 0x6000004bf020, {{0.0, 0.0}, {1366.0, 1024.0}}
Other, 0x6000004bf100, {{0.0, 0.0}, {1366.0, 1024.0}}
Other, 0x6000004bf1e0, {{0.0, 0.0}, {1366.0, 1024.0}}
WebView, 0x6000004bf2c0, {{0.0, 0.0}, {1366.0, 1024.0}}
Other, 0x6000004bf3a0, {{0.0, 0.0}, {1366.0, 1024.0}}
Other, 0x6000004bf480, {{0.0, 0.0}, {0.0, 0.0}}
Other, 0x6000004bf560, {{0.0, 0.0}, {0.0, 0.0}}
Other, 0x6000004bf640, {{0.0, 24.0}, {1905.0, 1428.0}}
Other, 0x6000004bf720, {{0.0, 24.0}, {1367.0, 980.0}}, label: 'Manuscript Player'
Button, 0x6000004bf800, {{0.0, -1362.0}, {32.0, 18.0}}, label: 'HOOK DIV'
Window, 0x6000004bf8e0, {{0.0, 0.0}, {1366.0, 1024.0}}
Other, 0x6000004bf9c0, {{0.0, 0.0}, {1366.0, 1024.0}}
Window, 0x6000004b17a0, {{0.0, 0.0}, {1366.0, 1024.0}}
StatusBar, 0x6000004b2680, {{0.0, 0.0}, {1366.0, 24.0}}
Other, 0x6000004b2760, {{0.0, 0.0}, {1366.0, 24.0}}
Other, 0x6000004b2840, {{0.0, 0.0}, {1366.0, 24.0}}
Other, 0x6000004b2920, {{6.0, 5.5}, {673.5, 10.5}}
StaticText, 0x6000004b2a00, {{16.0, 4.5}, {53.0, 14.5}}, label: '11:35 AM'
StaticText, 0x6000004b2ae0, {{79.0, 4.5}, {65.0, 14.5}}, label: 'Thu Feb 27'
Other, 0x6000004b2bc0, {{687.5, 5.5}, {673.5, 10.5}}
Other, 0x6000004b2ca0, {{1276.5, 7.0}, {14.0, 10.0}}, identifier: '3 of 3 Wi-Fi bars'
StaticText, 0x6000004b2d80, {{1295.5, 4.5}, {26.0, 14.5}}, label: '62%'
Other, 0x6000004b2e60, {{1324.5, 6.0}, {26.5, 12.0}}, label: '62% battery power'
Path to element:
→Application, 0x6000004bef40, pid: 91571, label: 'Sample_MP'
Query chain:
→Find: Target Application 'com.Learning.Sample-MP'
Output: {
Application, pid: 91571, label: 'Sample_MP'
}
Из того, что я заметил, iOS 13 больше не взаимодействует с WebView, но если я должны были go вернуться к iOS 12 или раньше, чем мои тесты обычно работали. Этого не произошло с внутренним веб-сервером.