Настройка 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