Перейти к содержимому

Публикации zolkin

16 публикаций создано zolkin (учитываются публикации только с 20 апреля 2023)


#148306 Python + Selenium webdriver +Page object + я новенький + Ожидания

Отправлено автор: zolkin 03 февраля 2016 - 07:59 в Selenium - Functional Testing

Спасибо всем за советы!Вроде все заработало.




#148177 Python + Selenium webdriver +Page object + я новенький + Ожидания

Отправлено автор: zolkin 28 января 2016 - 13:01 в Selenium - Functional Testing

 

А подскажите пожалуйста, как нибудь можно запустить в консоле мой файл test.py(в котором написаны мои тесты)...Я создал проект в Pycharm там создал 3 файла.Перехожу в директорию где лежат файлы пытаюсь запустить  test.py и там тишина...Просто ничего не происходит

ты имеешь ввиду в терминале ?

python test.py

в директории , где лежит тест

Просто тишина ...я дописал в файле !#/usr/bin/env python в среде если жать run тесты запускаются.в терминале ничего просто тишина 




#148175 Python + Selenium webdriver +Page object + я новенький + Ожидания

Отправлено автор: zolkin 28 января 2016 - 12:51 в Selenium - Functional Testing

 

 

 

 

Попробуй этой функцией дожидаться элемента

def waitForElementPresent(self,xpath,timer=10):
		drv=self.DRV
		WebDriverWait(drv,timer).until(EC.presence_of_element_located((By.XPATH,xpath)))

Спасибо большое попробую

 

 

Попробовал не помогло(( то запускается то нет.... 

 

какую ошибку выдает ?

 

Ой прошу прощения я же писал ошибку  StateElementReferenceException:Element no found in the cash perhaps the page has changed since it was look up




#148174 Python + Selenium webdriver +Page object + я новенький + Ожидания

Отправлено автор: zolkin 28 января 2016 - 12:48 в Selenium - Functional Testing

А подскажите пожалуйста, как нибудь можно запустить в консоле мой файл test.py(в котором написаны мои тесты)...Я создал проект в Pycharm там создал 3 файла.Перехожу в директорию где лежат файлы пытаюсь запустить  test.py и там тишина...Просто ничего не происходит




#148172 Python + Selenium webdriver +Page object + я новенький + Ожидания

Отправлено автор: zolkin 28 января 2016 - 12:42 в Selenium - Functional Testing

 

 

Попробуй этой функцией дожидаться элемента

def waitForElementPresent(self,xpath,timer=10):
		drv=self.DRV
		WebDriverWait(drv,timer).until(EC.presence_of_element_located((By.XPATH,xpath)))

Спасибо большое попробую

 

 

Попробовал не помогло(( то запускается то нет.... 




#148158 Python + Selenium webdriver +Page object + я новенький + Ожидания

Отправлено автор: zolkin 28 января 2016 - 09:53 в Selenium - Functional Testing

 

Попробуй этой функцией дожидаться элемента

def waitForElementPresent(self,xpath,timer=10):
		drv=self.DRV
		WebDriverWait(drv,timer).until(EC.presence_of_element_located((By.XPATH,xpath)))

Спасибо большое попробую

 




#148154 Python + Selenium webdriver +Page object + я новенький + Ожидания

Отправлено автор: zolkin 28 января 2016 - 09:39 в Selenium - Functional Testing

 


     self.driver.implisetly_wait(10) ---- не работает тут тоже указал ждать

 

self.driver.implicitly_wait(10)

 

ну ошибки кода могут быть я не вставлял из рабочего кода....Код то запускается проблема не в этом(( ну в смысле не в синтаксисе....




#148153 Python + Selenium webdriver +Page object + я новенький + Ожидания

Отправлено автор: zolkin 28 января 2016 - 09:37 в Selenium - Functional Testing

тоже считаю, что не стоит бросать, тяжело только в начале, потом и переменным значения сможете без волнения и обмороков присваивать.

а что неправильно пример был взят из интернета.Какая разница как я переменным значения присваиваю???




#148137 Python + Selenium webdriver +Page object + я новенький + Ожидания

Отправлено автор: zolkin 28 января 2016 - 08:52 в Selenium - Functional Testing

Подскажите пожалуйста.

Использую selenium неделю.

В программировании, тоже особо не селен знаю азы.

Создаю 3 файла.

1.Файл,где я храню локаторы (lokators.py)

В нем я пишу следующее:

 

class MainPageLocators(object):

TITLE_19_1 = (By.Xpath, '//treeitem/ul/li[1]'/div/span)

TITLE_19_1 = (By.Xpath, '//treeitem/ul/li[2]'/div/span)

 

ну и тд

2.Файл(page), где как я понял я храню класс страницы в котором описываю действия над элементами из файла lokators.py

В нем я пишу что то типа 

 

class BasePage(object):

def __init__(self, driver):

   self.driver = driver

 

 

class MainPage(BasePage):

 

определяю методы,которые ждет появления элемента на странице и жмет на него вот таким образом

 

def click_button(self, by , btn)

 wait = WebDriverWait(self.driver, 10)

 try:

     element = wait.until(lamda driver: self.driver.find_element(by, btn)).click()

 expect TimeoutException:

print "что то"

 

 

def click_to_type_ref(self, by , ref)

 wait = WebDriverWait(self.driver, 10) ----не работает как задумано или я что то не понимаю

 try:

     element = wait.until(lamda driver: self.driver.find_element(by, ref)).click()

 expect TimeoutException:

 

 

3.Собственно файл где я пишу тесты использую Unittest

 

class SimpleTestCase(unittest.TestCase):

 

def setUp(self):

     self.driver =webdriver.Firefox() 

     self.driver.get("")

     self.driver.implisetly_wait(10) ---- не работает тут тоже указал ждать

 

Собственно тест

def create_19_1_form(self):

main_page =page.MainPage(self.driver)

main_page.click_donos_link() ## Метод не описал но он просто жмет на ссылку

self.driver.self.driver.impliсetly_wait(10)              !!!!!!Если удалить эту строчку кода тесты не выполняются!!!!!!!

main_page.click_button(*MainPageLocators.ADD_BUTTON)

self.driver.self.driver.implisetly_wait(10)  !!!! Иногда сюда приходиться дописывать

main_page.click_to_type_ref(*MainPageLocators.TITLE_19_1)

assert "Текст" in "Какой то текст"

 

 

 

Подскажите пожалуйста, почему в тесте если убрать строчку ожидания все ломается!!(Выдается ошибка StateElementReferenceException:Element no found in the cash)???? Причем не постоянно,то проходят все тесты то падает все...Если оставить ожидания именно перед теми строчками, что иногда ломаются() в самом тесте процентов 99% тесты проходят Может ли быть проблема в браузере FIREFOX 29 версии другую использовать никак не могу((((




#146782 Анализ граничных значений

Отправлено автор: zolkin 03 декабря 2015 - 12:08 в Тест-дизайн и ручное тестирование

А почему не стоит вводить значение 2047 оно же на 1 меньше, чем граница??



#146766 Анализ граничных значений

Отправлено автор: zolkin 03 декабря 2015 - 09:53 в Тест-дизайн и ручное тестирование

После того как я проверю... Точнее мне нужно написать так называемый тест план с тест кейсами... Потом уже предлагать валидность полей по смыслу (отрицательные числа в кол вечером людей строки в номерах телефонов и тд)



#146760 Анализ граничных значений

Отправлено автор: zolkin 03 декабря 2015 - 09:44 в Тест-дизайн и ручное тестирование

Не я выбираю типы данных в базе и ограничения на поля



#146754 Анализ граничных значений

Отправлено автор: zolkin 03 декабря 2015 - 08:31 в Тест-дизайн и ручное тестирование

Подскажите пожалуйста! 

Раньше как то не пользовался никакими техниками,была документация и тесты выполнялись строго по ней.

Есть веб приложение написанное на python(как я понимаю при помощи фреймворка pyramid)

Есть база данных на Postgresql

Есть структура базы данных(набор таблиц связи и тд)

Связь с базой, если я правильно понимаю происходит средствами sqlalchimy.Немного почитав, как я понял, на каждую таблицу пишется отдельный отдельный класс на python, потом класс как то "Мапится" с самой таблицей и мы получаем связь таблицы из базы с классом на python и можем работать с объектами данного класса.

В браузере есть формы, которые пользователь заполняет и потом сохраняет это в базу.

Приложение разбирает формы и кладет в соответствующие поля в таблицы значения из форм.

 

Вопрос:

Стоит ли проверять такие значения:

Есть поле "Тип мероприятия"(форма в браузере с таким названием) я знаю, что в базу значение этого поля положится в определенное поле тип которого varchar(2048).Стоит ли при тестировании вводить в поля значения 2047 2048 и 2049 символов.

Так же вопрос поле "количество людей" тип имеет Integr стоит ли проверять ввод в него -2147483648,-2147483647,-2147483649

 

 

И какие вообще подскажите варианты тестирование данного приложения.




#139809 Не переходит на по @base_url

Отправлено автор: zolkin 09 марта 2015 - 13:24 в Selenium - Functional Testing

Да кстати...скажите версию webdriver и firefox. Попробуйте запустить под 31 esr.

firefox версия 36.0.1 версия webdriver как я понимаю из своего же скриншота 2.25...

Версия chrome 40

 

При попытке запустить через хром тоже ошибка. Я сделал следующее:

1.скачал chromedriver

2.Положил его в C:\browsers

3.Дописал в скрипт на Ruby 

 

chromedriver_path = File.join(File.absolute_path('../..', File.dirname(__FILE__)),"browsers","chromedriver.exe")
Selenium::WebDriver::Chrome.driver_path = chromedriver_path
 
И заменил соответственно строку 
 @driver = Selenium::WebDriver.for :firefox
на 
 @driver = Selenium::WebDriver.for :chrome
 
При запуске хром драйвера так же открывается окно браузера но не срабатывает driver.get

Прикрепленные изображения

  • test-unit-chrome.png



#139803 Не переходит на по @base_url

Отправлено автор: zolkin 09 марта 2015 - 08:40 в Selenium - Functional Testing

Сделай так:

@base_url = "https://code.google.com"

да лишний слеш я конечно не заметил((,но не помогло открывается просто браузер и все

 

Попробовал ввести в irb :

require "selenium-webdriver"

driver = Selenium::WebDriver.for :firefox

 

выдается та же самая ошибка..

irb(main):002:0> driver = Selenium::WebDriver.for :firefox

Selenium::WebDriver::Error::WebDriverError: unable to obtain stable firefox connection in 60 seconds (127.0.0.1:7055)



#139801 Не переходит на по @base_url

Отправлено автор: zolkin 09 марта 2015 - 07:21 в Selenium - Functional Testing

Только начал изучать Ruby + Webdriver.Записал простой тест через Selenium IDE,экспортировал в Ruby + Test::Unit.

При попытке запуска из командной строки открывается браузер, но переход по base_url не происходит.Ну и как я понимаю следующие ошибки уже выдает драйвер, в течении 60 секунд не была загружена страничка.

 

require "json"
require "selenium-webdriver"
gem "test-unit"
require "test/unit"
 
class FirstTest < Test::Unit::TestCase
 
  def setup
    @driver = Selenium::WebDriver.for :firefox
    @base_url = "http://code.google.com"
    @accept_next_alert = true
    @driver.manage.timeouts.implicit_wait = 30
    @verification_errors = []
  end
  
  def teardown
    @driver.quit
    assert_equal [], @verification_errors
  end
  
  def test_first
    @driver.get(@base_url + "/p/selenium/issues/list?can=2&q=&sort=summary&colspec=ID%20Stars%20Type%20Status%20Priority%20Milestone%20Owner%20Summary")
    @driver.find_element(:link, "Wiki").click
    @driver.find_element(:link, "Downloads").click
  end

Прикрепленные изображения

  • selenium.png