Настройка appium для автоматизации тестирования приложений для iOS

Взгляд далеко и широко для пошагового руководства для настройки автоматизации тестирования iOS с помощью appium со сценариями на Java (без рубина и/или огурца).

Примечание. Вики appium также не помогают.

Ответ 1

Для запуска тестов iOS вы можете выполнить следующие действия:

( Примечание. Я использую Java-язык здесь, в среде Eclipse IDE и с помощью приложения Appium):

  • Создайте новый проект java в Eclipse.
  • Импорт файлов jar: версия Selenium Server (ранее Selenium RC Server) и требуемый клиентский драйвер (в соответствии с вашим выбором языка), который можно загрузить здесь. (Для импорта: щелкните правой кнопкой мыши по вашему проекту → Свойства → Библиотеки → Добавить внешние JAR. Добавьте сюда все три файла selenium jar.)
  • Download Appium app и запуск.
  • Вы можете запускать тестовые скрипты либо в симуляторе, либо на реальном устройстве. Для запуска сценариев на реальном устройстве iOS вам понадобятся "deviceName", "platformVersion", "UDID" (идентификатор устройства) и "Bundle ID" (идентификатор пакета приложений) и абсолютный путь к .ipa.
  • Для запуска скриптов на iOS-симуляторе вам понадобятся "deviceName", "platformVersion", путь к .app и "Bundle ID" вашего приложения.
  • Выберите capabilties в приложении Appium и укажите то же самое в своем script на основе того, тестируете ли вы симулятор или устройство.
  • Запустите Appium-сервер, а затем запустите script.

Все возможности сервера Appium, которые можно использовать, можно найти здесь.

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

Ответ 2

Я нашел это очень полезным.

http://seleniumworks.blogspot.co.uk/2013/12/appium-native-ios-app-testing-webdriver.html

Обратите внимание, что вам нужно получить .app вашего проекта, чтобы он работал, а не .ipa

Appium Native iOS App Testing | WebDriver Appium - это инструмент для кросс-платформенной автоматизации тестирования для родных, гибридных и мобильных веб-приложений. Тесты Appium могут быть записаны на вашем любимом языке, совместимом с Webdriver.

Требования и установка

1 | MAC OS X 10.7 (требуется минимальная версия) 2 | Обновленная версия Xcode (предпочитаем) 3 | Node.js 4 | Appium.app 5 | Eclipse Kepler (предпочитают) 6 | Структура TestNG

Настройка Pre-Appium

Файл iOS.app достаточно для проверки элементов. В этом примере я использовал проект "InternationalMountains" с сайта Apple DEV.

1 | Загрузите проект "InternationalMountains" 2 | Дважды щелкните и извлеките его 3 | Импортируйте его в Xcode, открыв файл Xcode 4 | Запустить проект 5 | Убедитесь, что симулятор открыт с помощью приложения 6 | Откройте терминал и перейдите в папку проекта 7 | Выполните следующую команду для создания файла .app

`xcodebuild -sdk iphonesimulator6.1`

8 | Он будет создавать приложение и генерировать файл, "InternationalMountains.app" в /InternationalMountains/Build/Products/Release -iphonesimulator/

Настройка iOS Appium

1 | Загрузите и установите Node.js //npm представляет, что Node.js Менеджер пакетов   $ sudo npm install wd

2 | Запустите сервер Appium с помощью node.js; Есть несколько способов сделать это.

1 Используя Node.js

//установить Appium   $ npm install -g appium (or) $ sudo npm install appium -g // запуск сервера Appium  $ appium &

2 Использование приложения

Загрузите Appium, установите и запустите его

3 | Теперь сервер Appium запускается в

default port 4723 and IP Address 0.0.0.0

Инспектор Appium

Инспектор Appium - это инструмент для записи и воспроизведения, такой как Selenium IDE для Интернета.

1 | Открыть Appium

2 | Измените IP-адрес по умолчанию на 127.0.0.1 and port 4725

3 | Теперь включите флажок "Путь к приложению", 4 | Нажмите кнопку "Выбрать" и найдите локальный каталог .app. то есть, InternationalMountains.app

5 | Нажмите кнопку "Запуск" [запущен сервер Appium] 6 | Теперь значок синего цвета, расположенный рядом с кнопкой "Запуск", включен 7 | Нажатие на значок синего цвета открывает инспектора Appium с помощью Simulator 8 | Теперь нажмите кнопку "Запись" в инспекторе Appium 9 | Каждое действие будет генерировать script в нижней части инспектора Appium

Запустите script в Eclipse IDE

package packagename;

import java.io.File;
import java.net.URL;
import java.util.List;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.Assert;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;

public class AppiumTest {
public WebDriver driver = null;

@BeforeMethod
public void setUp() throws Exception {
// set up appium
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(CapabilityType.BROWSER_NAME, "iOS");
capabilities.setCapability(CapabilityType.VERSION, "6.1");
capabilities.setCapability(CapabilityType.PLATFORM, "Mac");
capabilities.setCapability("app","/Users/username/Downloads/InternationalMountains   /build/Release-iphonesimulator/InternationalMountains.app");
driver = new RemoteWebDriver(new URL("http://127.0.0.1:4725/wd/hub"), capabilities);
}

@AfterMethod
public void tearDown() throws Exception {
driver.quit();
}

@Test
public void test01() throws InterruptedException {
driver.findElement(By.xpath("//window[1]/tableview[1]/cell[2]")).click();
driver.findElement(By.xpath("//window[1]/navigationBar[1]/button[1]")).click();
driver.findElement(By.xpath("//window[1]/tableview[1]/cell[7]/text[1]")).click();
}
}

Примечание: 1 | В настоящее время нет поддержки инспектора Appium для Windows

Ответ 3

Я получаю сообщение об ошибке на шаге 6 -

Не удалось запустить новый сеанс

Убедитесь, что сервер Appium работает с приложением, открытым с помощью параметра "Путь к приложению" в Appium.app(вместе с пакетом и активностью для Android) или путем соединения с клиентом селена и предоставления его в желаемом объекте возможностей.

Ответ 4

Я загрузил проект java eclipse на github

https://github.com/boobalaninfo/javaworkspace.git

Требование:

  • Appium должен работать и работать на компьютере Mac.
  • Eclipse для разработки и запуска тестовых примеров Java