Проблема решена, можно закрывать тему
- Форум тестировщиков
- → Публикации Deformator
10 публикаций создано Deformator (учитываются публикации только с 27 апреля 2023)
Отправлено автор: Deformator 22 июля 2015 - 06:31 в Автоматизированное тестирование
Проблема решена, можно закрывать тему
Отправлено автор: Deformator 21 июля 2015 - 16:30 в Автоматизированное тестирование
Добрый вечер форумчане. Возникла проблема - тесты запускаются по 2 раза, причем в 2 потока. Сначала запускается первый поток, затем через секунд 5 второй - http://prntscr.com/7vbf0a http://prntscr.com/7vbf76
Вот ссылка на проект на Gite https://github.com/Deformator/edrcTets. Может кто-то уже сталкивался или желает разобраться и помочь. Подозреваю что проблема в структуре, но никак не могу найти ошибку. Уже перечитывал мануал http://www.thucydides.info/docs/serenity/#_serenity_with_jbehave но проблему так и не нашел.
Причем если запускаю IDEхой то все ок, но как только дергаю мавеном - стабильно 2 раза каждый сценарий. Я подозреваю что возможно проблема в POMe но никак не могу найти где
Отправлено автор: Deformator 14 ноября 2014 - 14:02 в Тестирование производительности
Всем привет. У меня такой вопрос: как протестировать случай, если нужно запустить одновременно 150 пользователей? Условие: различные порты и сидят они через проксю.
Отправлено автор: Deformator 03 сентября 2014 - 06:24 в Selenium - Functional Testing
Отнаследуйте одну страницу от другой. Или заведите общий класс Page, и в него перенести этот метод.
1-й вариант не подходит. А насчет 2-го - я так понимаю туда можно выносить все Вебэлементы (вместе с xpath) и методы, которые используются на нескольких страницах? Ну а потом наследоваться от этой страницы? Корректно ли это будет со стороны правильного построения структуры? Интересуют мнения экспертов :)
Отправлено автор: Deformator 02 сентября 2014 - 12:01 в Selenium - Functional Testing
Ни один тестовый фреймворк не предоставляет возможность "приостановить первый тест, потом выполнить второй, потом вернуться и продолжить выполнение первого". Это как-то вообще противоестественно, потому что это фактически не два разных теста, а один составной. Подумайте над перепроектированием тестов.
Ну приостановить и продолжить думаю можно, если унаследовать классы тестов от Thread, а затем вызывать соответствующие методы в желаемых местах. Но как по мне это извращение. Проще залогировать все в файл, а затем парсить из него то, что тебе нужно. Думаю в рамках 1-го теста это все можно реализовать.
Отправлено автор: Deformator 02 сентября 2014 - 11:48 в Selenium - Functional Testing
Добрый день форумчане. Только недавно я начал изучать Page Object и PageFactory так что глупые вопросы присутствуют. Ситуация следующая - существует к примеру 2 страницы (Java классы). 1-я SignupPage и 2 -я AdminPage. На первой странице определены все поля, селекты и кнопки через @FindBy, также присутствуют методы (регистрация, регистрация только по обязательным полям и т.д.). 2-я страница представляет собой админку, однако в админке при нажатии CreateUser открывается та же форма, что и на SignUp, т.е. по сути нужно заполнить те же элементы. Что нужно сделать, что бы не переписывать снова все элементы? Ведь они уже расписаны на SignUpPage? Как их инициализировать для AdminPage?
Пример:
public class AdminPage { Driver driver; public AdminPage(Driver driver) { this.driver = driver; PageFactory.initElements(driver,SignupPage.class); } public String findH1() { return h1.getText(); } }
в данном случае h1 элемент определен в классе SignupPage и IDE репортит что не может реализовать символ h1 т.к. типа его нет в этом классе. Заранее спасибо )
Отправлено автор: Deformator 02 сентября 2014 - 11:27 в Selenium - Functional Testing
Спасибо за советы
Отправлено автор: Deformator 25 августа 2014 - 13:23 в Selenium - Functional Testing
Решил конечно через одно место проблему, но код сократил. Дописал в классе метод
//метод для возврата экземпляров класса для селектов private Select getPageSelectElement(WebElement select){ return new Select(select); }
Может есть, что-то оптимальней?
Отправлено автор: Deformator 25 августа 2014 - 12:20 в Selenium - Functional Testing
Большое спасибо за ответ. Не обратил конечно, спешил, выхватил кусок кода и зашел в тупик. Еще раз спасибо.
Отправлено автор: Deformator 25 августа 2014 - 11:47 в Selenium - Functional Testing
Столкнулся с такой проблемой. Постоянно выхватываю NullPointerException если использую такую интерпретацию:
@FindBy (xpath = "//*[@id=\"ddlProjectLabel\"]") private Select workTypeSelect;
в методе указываю
workTypeSelect.selectByVisibleText("Design");
Если же пишу
@FindBy private Select workTypeSelect;
и в методе
workTypeSelect = new Select(driver.findElement(By.xpath("//*[@id=\"ddlProjectLabel\"]"))); workTypeSelect.selectByVisibleText("Design");
то все отлично отрабатывает.
Объясните пожалуйста нубу, что не так? Ведь на всех форумах почему-то указан именно 1-й вариант, он конечно и более удобный.
http://internetka.in...fielddecorator/
http://habrahabr.ru/...ex/blog/158787/
PS: c полями для ввода, кнопками и т.д. все отлично работает. Я бы не задавал вопрос, с учетом того, что для селекта в отличии от элементов нужно создавать экземпляр класса, но почему на всех форумах пишут про 1-й вариант и почему же он не работает у меня. Заранее спасибо.
Community Forum Software by IP.Board Русификация от IBResource
Лицензия зарегистрирована на: Software-Testing.Ru