среда, 5 июля 2023 г.

Как убрать конфликтующие зависимости в maven

 

  1. Например, имеем ошибку при сборке и запуске тестов: Ошибка - Unsupported version of junit:junit: 4.11.

  2. Хотя на проекте используется другая версия junit. Значит подтягивается другая версия из зависимостей.

  3. Чтобы просмотреть древо зависимостей в Intelllij Idea:
    • Нажимаем справа вкладку Maven 
    • -> Нажимаем букву m 
    • -> В появившемся окне Run Anything вводим команду с фильтром конкретной библиотеки - mvn dependency:tree -Dincludes=junit
    • Ищем в древе (после завершения загрузки зависимостей) в нашем случае - 4.11, и находим, что это какая-нибудь из подключаемых библиотек, допустим - xxx-api-rest-client

  4. Открываем основной файл Pom.xml, и находим нужную зависимость -  xxx-api-rest-client, и далее добавляем исключение в данную зависимость:
<dependency>
<groupId>ru.xxx.integration.test</groupId>
<artifactId>xxx-api-rest-client</artifactId>
<version>${xxx-api-rest-client.version}</version>
<exclusions>
<exclusion>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</exclusion>
</exclusions>
</dependency>

Итог:

  • Исправлена Ошибка - Unsupported version of junit:junit: 4.11 

вторник, 26 ноября 2019 г.

понедельник, 25 ноября 2019 г.

Как установить TestNG плагин в eclipse

Раньше TestNG плагин можно было найти прямо в Markrtplace. Сейчас его там почему-то нет, поэтому чтобы его установить нужно вручную добавить репозиторий через меню Help > Install New Software > Add
Name может быть любой
Location http://beust.com/eclipse

Далее ждем пока эклипс подгрузит список, выбираем нужные пункты, пару раз нажимаем Next, перезапускаем эклипс, если потребуется, и готово.



четверг, 6 августа 2015 г.

Как скопировать файлы с виртуальной машины/удаленного компьютера

При необходимости копирования файлов в виртуальную машину или с неё можно удобнее всего пользоваться клавишами ctrl+c ctrl+v

Если эта возможность не настроена и доступа к управлению виртуальной машиной нет, то можно воспользоваться следующей возможностью.

1) Присоединямся к удаленной машине через RDP
Для этого нажимаем win+R
Вводим mstsc
Нажимаем OK

2) Откроется Remote Desktop Connection
Пишем IP машины
Кликаем на Show Options

 3) Открываем вкладку Local Resources
Кликаем на More...
 4) Открываем пункт Drivers, покажутся все диски на Вашем компьютере
 5) Выбираем нужный диск и нажимаем ОК
 6) Нажимаем на Connect и соглашаемся с предупреждением
 7) Попадаем на удаленную машину, заходим в Мой Компьютер и видим добавленный диск

Диск будет доступен только в течение одного подключения.
Если данные на нём недоступны или скопировать на него не получается, возможно он защищен или зашифрован, попробуйте в этом случае подключить к локальному компьютеру флэшку и подсоединить к rdp её.

среда, 8 июля 2015 г.

Отключение блокировки всплывающих окон (popup) в Firefox

Если вдруг Ваше веб-приложение по какой-то причине изобилует всплывающими окнами, а тестовый сценарий включает много шагов с этими самыми попапами, то в какой-то момент Вы можете столкнуться с такой проблемой:
Firefox prevented this site from opening pop-up window.


Причем, даже если в настройках Firefox "Block pop-up windows"  не выбрано, начиная с какого-то момента он их все равно будет блокировать.


Это проблема.

Теперь о решении. 

Откройте в firefox about:config.


Свойство dom.popup_maximum и определяет количество окон, после открытия которого браузер начинает блокирование новых. Установив это значение можно корректировать поведения браузера.

Для использования при запуске браузера selenium в папке используемого профайла нужно найти файл prefs.js  и добавить (или отредактировать, если такое свойство уже есть) строку 
user_pref("dom.popup_maximum", 200);


вторник, 5 мая 2015 г.

Как выполнить xpath запрос в браузере

В процессе автоматизации тестирования бывает необходимо проверить результат выполнения  xpath. Конечно, есть плагины для браузеров и другие инструменты, но можно это сделать и имея под рукой только браузер.
Итак:
1. Открываем консоль браузера (F12)
2. Вставляем в консоль javascript:
function getElementByXpath(path) {
  return document.evaluate(path, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
}

console.log( getElementByXpath("//table[@id='FieldsTable']/tbody/tr/td/select[0]") );

Заменяем выделенный текст на свой xpath и нажимаем Enter

Результат выполнения появится в консоли


или все то же самое, но без использования функции

 document.evaluate("//table[@id='FieldsTable']/tbody/tr/td/select[0]", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;


четверг, 15 января 2015 г.

Selenium tests: Page Object Generator

When you need to automate tests for web-application with a lot of pages, it is hard to describe page objects for all pages manually.
There are free, easy, fast and user friendly service for page object generation automation
http://whispering-retreat-7160.herokuapp.com/generator

This web-application can generate Selenium Page Objects from html code or by link to web-page.
Generator supports following languages: Java, C#, PHP, Ruby.

How to generate page object:
1. Copy-paste html code
2. Select language: Java, C#, PHP or Ruby

3. Write selectors you need, e.g.  //a;//input
4. Click on Generate


5. After that Page Object will be generated:
public class CustomPage {

 @FindBy(id="paramField")
 private WebElement paramField;

 @FindBy(id="code")
 private WebElement code;

 @FindBy(id="description")
 private WebElement description;

}

It is about all, you can copy the page object in your project, rename and do any changes you need.