[SOLVED] C# Как правильно инициализировать класс?

lybimiy86

Client
Регистрация
29.10.2016
Сообщения
97
Благодарностей
187
Баллы
33
Библиотеки добавлены, пространства имен вписаны. (по следам этой темы)
Как правильно инициализировать класс TouchActions с методом DoubleTap ссылка на описание
Остановился на
TouchAction DoubleTap = new
И еще этот класс с методом интересуют RemoteWebElement. Coordinates
 

SHELBY

Client
Регистрация
09.09.2016
Сообщения
237
Благодарностей
291
Баллы
63
По идее вот так:
Код:
TouchActions zts = new TouchActions(driver); // Инициализируем класс
zts.DoubleClick(); // Вызываем метод
При инициализации класса в конструктор нужно передать какой-то Web Driver

Код:
AndroidDriver<IWebElement> driver = new AndroidDriver<IWebElement>(new Uri("http://127.0.0.1:4723/wd/hub"), cap); // инициализируем экземпляр класса драйвера с настроечками
Как я понял это и есть тот драйвер для подключения (к чему, серверу?)

Во всю тему не вникал, просмотрел бегло. Получился примерно вот такой код:
Код:
DesiredCapabilities cap = new DesiredCapabilities(); // экземпляр класса настроек
cap.SetCapability("deviceName", "Insta"); // имя девайся (абсолютно любое)
cap.SetCapability("platformVersion", "4.0.3");// версия платформы (тоже любая)
cap.SetCapability("platformName", "Android");//имя платформы
cap.SetCapability("appPackage", "com.instagram.android"); // пространство имен используемое приложением
cap.SetCapability("appActivity", ".activity.MainTabActivity"); // активное окно
           
AndroidDriver<IWebElement> driver = new AndroidDriver<IWebElement>(new Uri("http://127.0.0.1:4723/wd/hub"), cap); // инициализируем экземпляр класса драйвера с настроечками
           
TouchActions zts = new TouchActions(driver); // Инициализируем класс
zts.DoubleClick(); // Вызываем метод
 
  • Спасибо
Реакции: lybimiy86

SHELBY

Client
Регистрация
09.09.2016
Сообщения
237
Благодарностей
291
Баллы
63
И еще этот класс с методом интересуют RemoteWebElement. Coordinates
Это вроде не метод, а свойство
Код:
RemoteWebElement zts_zenno = new RemoteWebElement(driver, id); // Инициализация класса
var coord = zts_zenno.Coordinates; // Получение значение этого свойства в произвольную переменную
В конструктор RemoteWebElement передаются 2 параметра: тот драйвер, и какое-то строковое значение id.
Что за id не знаю, нужно изучать документацию
 
  • Спасибо
Реакции: lybimiy86

lybimiy86

Client
Регистрация
29.10.2016
Сообщения
97
Благодарностей
187
Баллы
33
Код:
DesiredCapabilities cap = new DesiredCapabilities(); // экземпляр класса настроек
cap.SetCapability("deviceName", "Insta"); // имя девайся (абсолютно любое)
cap.SetCapability("platformVersion", "4.0.3");// версия платформы (тоже любая)
cap.SetCapability("platformName", "Android");//имя платформы
cap.SetCapability("appPackage", "com.instagram.android"); // пространство имен используемое приложением
cap.SetCapability("appActivity", ".activity.MainTabActivity"); // активное окно
        
AndroidDriver<IWebElement> driver = new AndroidDriver<IWebElement>(new Uri("http://127.0.0.1:4723/wd/hub"), cap); // инициализируем экземпляр класса драйвера с настроечками
        
TouchActions zts = new TouchActions(driver); // Инициализируем класс
zts.DoubleClick(); // Вызываем метод
Так пробовал, выдает:
Код:
Тип    Время    Сообщение
    20:22:58    Компиляция кода  Ошибка в действии "CS0246" "Не удалось найти имя типа или пространства имен "TouchActions" (пропущена директива using или ссылка на сборку?)". [Строка: 49; Cтолбец: 1]
Код:
Тип    Время    Сообщение
    20:22:58    Компиляция кода  Ошибка в действии "CS0246" "Не удалось найти имя типа или пространства имен "TouchActions" (пропущена директива using или ссылка на сборку?)". [Строка: 49; Cтолбец: 24]
 

SHELBY

Client
Регистрация
09.09.2016
Сообщения
237
Благодарностей
291
Баллы
63
Код:
DesiredCapabilities cap = new DesiredCapabilities(); // экземпляр класса настроек
cap.SetCapability("deviceName", "Insta"); // имя девайся (абсолютно любое)
cap.SetCapability("platformVersion", "4.0.3");// версия платформы (тоже любая)
cap.SetCapability("platformName", "Android");//имя платформы
cap.SetCapability("appPackage", "com.instagram.android"); // пространство имен используемое приложением
cap.SetCapability("appActivity", ".activity.MainTabActivity"); // активное окно
     
AndroidDriver<IWebElement> driver = new AndroidDriver<IWebElement>(new Uri("http://127.0.0.1:4723/wd/hub"), cap); // инициализируем экземпляр класса драйвера с настроечками
     
TouchActions zts = new TouchActions(driver); // Инициализируем класс
zts.DoubleClick(); // Вызываем метод
Так пробовал, выдает:
Код:
Тип    Время    Сообщение
    20:22:58    Компиляция кода  Ошибка в действии "CS0246" "Не удалось найти имя типа или пространства имен "TouchActions" (пропущена директива using или ссылка на сборку?)". [Строка: 49; Cтолбец: 1]
Код:
Тип    Время    Сообщение
    20:22:58    Компиляция кода  Ошибка в действии "CS0246" "Не удалось найти имя типа или пространства имен "TouchActions" (пропущена директива using или ссылка на сборку?)". [Строка: 49; Cтолбец: 24]
Значит, у вас отсутствуют директивы using (пространства имен)
Добавьте их

Код:
using OpenQA.Selenium.Appium.Android;
using OpenQA.Selenium.Appium;
using OpenQA.Selenium;
using OpenQA.Selenium.Remote;
using OpenQA.Selenium.Interactions;
using OpenQA.Selenium.Support.UI;
using OpenQA.Selenium.Remote;
 
  • Спасибо
Реакции: lybimiy86

lybimiy86

Client
Регистрация
29.10.2016
Сообщения
97
Благодарностей
187
Баллы
33
Значит, у вас отсутствуют директивы using (пространства имен)
Добавьте их

Код:
using OpenQA.Selenium.Appium.Android;
using OpenQA.Selenium.Appium;
using OpenQA.Selenium;
using OpenQA.Selenium.Remote;
using OpenQA.Selenium.Interactions;
using OpenQA.Selenium.Support.UI;
using OpenQA.Selenium.Remote;
Спасибо, была не добавлена
Код:
using OpenQA.Selenium.Interactions;
 
  • Спасибо
Реакции: SHELBY

lybimiy86

Client
Регистрация
29.10.2016
Сообщения
97
Благодарностей
187
Баллы
33
Код:
DesiredCapabilities cap = new DesiredCapabilities(); // экземпляр класса настроек
cap.SetCapability("deviceName", "Insta"); // имя девайся (абсолютно любое)
cap.SetCapability("platformVersion", "4.0.3");// версия платформы (тоже любая)
cap.SetCapability("platformName", "Android");//имя платформы
cap.SetCapability("appPackage", "com.instagram.android"); // пространство имен используемое приложением
cap.SetCapability("appActivity", ".activity.MainTabActivity"); // активное окно
         
AndroidDriver<IWebElement> driver = new AndroidDriver<IWebElement>(new Uri("http://127.0.0.1:4723/wd/hub"), cap); // инициализируем экземпляр класса драйвера с настроечками
         
TouchActions zts = new TouchActions(driver); // Инициализируем класс
zts.DoubleClick(); // Вызываем метод
Компиляция проекта проходит успешно, но когда доходит до этого места, то ошибка возникает
Код:
Тип    Время    Сообщение
    20:50:56    "Выполнение действия CSharp OwnCode The IWebDriver object must implement or wrap a driver that implements IHasTouchScreen.
Имя параметра: driver"
 

SHELBY

Client
Регистрация
09.09.2016
Сообщения
237
Благодарностей
291
Баллы
63
Компиляция проекта проходит успешно, но когда доходит до этого места, то ошибка возникает
Код:
Тип    Время    Сообщение
    20:50:56    "Выполнение действия CSharp OwnCode The IWebDriver object must implement or wrap a driver that implements IHasTouchScreen.
Имя параметра: driver"
На этом мои познания в c# закончились и нет опыта работы с данной библиотекой
Вам лучше попросить совета у того, кто знаком с библиотекой (по следам той же темы)

Возможно, кто нибудь отпишется тут еще :-)
 

lzlmrf

Client
Регистрация
14.08.2015
Сообщения
488
Благодарностей
149
Баллы
43
Компиляция проекта проходит успешно, но когда доходит до этого места, то ошибка возникает
Код:
Тип    Время    Сообщение
    20:50:56    "Выполнение действия CSharp OwnCode The IWebDriver object must implement or wrap a driver that implements IHasTouchScreen.
Имя параметра: driver"
получилось решить?
 

lybimiy86

Client
Регистрация
29.10.2016
Сообщения
97
Благодарностей
187
Баллы
33
Последнее редактирование:
  • Спасибо
Реакции: Assassin и lzlmrf

lzlmrf

Client
Регистрация
14.08.2015
Сообщения
488
Благодарностей
149
Баллы
43
спасибо
 
Последнее редактирование:

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)