Я реализую тестовые случаи автоматизации для одного приложения. Я хотел обобщить некоторые тестовые случаи, чтобы запускать их на каждом устройстве в зависимости от некоторых условий. Итак, для этого мне нужно получить имя устройства, используя некоторый код. Я не могу получить код для проверки имени устройства. Любая помощь приветствуется!!!




При настройке возможностей appium вы также должны указать имя устройства. Вы можете использовать тот же
где вы запускаете эти автоматические тесты? На облачных платформах, таких как лаборатории соусов, или в вашей локальной системе?
Попробуйте детали сеанса, чтобы получить подключенное устройство name или udid
String connectedDeviceName = driver.getSessionDetail("deviceName").toString();
String connectedDeviceUdid = driver.getSessionDetail("deviceUDID").toString();
Конструктор класса AndroidDriver требует возможностей в качестве параметра, поэтому в этом объекте возможностей мы должны указать все, что касается устройства. Я этого не хочу. При запуске тестовых случаев я хочу проверить, какое устройство подключено. У меня есть 2 тестовых случая, из которых один тестовый пример должен быть запущен на первом устройстве, а второй тестовый пример должен быть запущен на втором устройстве.
Что вы можете сделать, так это использовать несколько устройств для запуска тестов автоматизации, таким образом, вы можете дать определенный udid устройства определенному классу, содержащему ваши тестовые наборы, и эти тестовые наборы будут выполняться только на этом устройстве.
Кроме того, вы можете использовать аннотации с помощью TestNG, например, @Beforesuite. Это будет запускать только определенный класс, поэтому будут запускаться только ограниченные тестовые случаи.
Вы можете использовать любой из следующих методов, чтобы получить устройство ты делал. Все следующие методы дадут тот же результат.
driver.getSessionDetail("deviceName");
driver.getSessionDetail("udid");
driver.getSessionDetail("deviceUDID");
driver.getCapabilities().getCapability("deviceName");
driver.getCapabilities().getCapability("udid");
driver.getCapabilities().getCapability("deviceUDID");
You can use device udid instead of device name
Спасибо за ваше предложение. На самом деле я знаю, как получить имя устройства, используя возможности. Меня беспокоит, когда я подключаю свое устройство к Appium. Мне нужно проверить, какое устройство подключено прямо сейчас. Потому что я хочу запускать разные тестовые случаи для разных устройств. Можете ли вы помочь в этом?