import unittest import selenium from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.action_chains import ActionChains import unittest, time, re,datetime,os,sys class PythonOrgSearch(unittest.TestCase): def setUp(self): self.driver = webdriver.Firefox() def test_search_in_python_org(self): driver = self.driver driver.get("http://50.16.204.251/") inputElement = driver.find_element_by_id("username") inputElement.send_keys("moozee") time.sleep(1) inputElement1 = driver.find_element_by_id("password") inputElement1.send_keys("KARFAGEN") inputElement1.click() inputElement2 = driver.find_element_by_id("ext-gen31") inputElement2.click() time.sleep(15) i=0 while (i==0): try: if driver.find_element_by_id("ext-gen162"): time.sleep(3) inputElement4 = driver.find_element_by_id("ext-gen162") inputElement4.click() if self.driver.find_element_by_id("ext-comp-1004"): element = driver.find_element_by_id("ext-comp-1004"); element.click() print "Pop-up has been closed." print "You're succesfully logged on =)" i=1 break else: self.fail("time out"); break else: self.fail("SILENCE!!! I KILL U!! O.O"); except: if self.driver.find_element_by_id("ext-comp-1004"): element = driver.find_element_by_id("ext-comp-1004") element.click() print "You're succesfully logged on without pop-up window =P" else: self.fail("time out"); def tearDown(self): self.driver.close() if __name__ == "__main__": unittest.main()
![Фотография](https://secure.gravatar.com/avatar/d96615cd30adcd6b85fb52fc594ef812?s=100&d=https%3A%2F%2Fsoftware-testing.ru%2Fforum%2Fpublic%2Fstyle_images%2Fmaster%2Fprofile%2Fdefault_large.png)
вложенный цикл
Автор moozee, 20 фев 2012 12:09
Сообщений в теме: 5
#1
Отправлено 20 февраля 2012 - 12:09
Помогите пожалуйста, во вложенном цикле for в тесте необходимо сделать ряд условий: а именно 1- проверка наличия всплывающего окна, при его наличии мы его закрываем и проверям наличие переменной в окне, следом закрываем браузер. в противном случае просто проверяем наличие переменной и тоже закрываем браузер.привожу код, работающий верно, но не закрывает браузер. где допустил ошибку?
#2
Отправлено 20 февраля 2012 - 13:07
Поправьте отступы в коде. Нифига не понятно.
#3
Отправлено 20 февраля 2012 - 13:15
исправил отступы.. мне просто легче было ориентироваться так..Поправьте отступы в коде. Нифига не понятно.
#4
Отправлено 20 февраля 2012 - 14:54
А def в середине не лишний?
На первый взгляд, получается, что если нет фейлов, первый цикл заканчивается нормально, без break, и начинается второй.
... def tearDown(self): self.driver.close() ... def tearDown(self): self.driver.close()
На первый взгляд, получается, что если нет фейлов, первый цикл заканчивается нормально, без break, и начинается второй.
#5
Отправлено 22 февраля 2012 - 06:42
Он завершает цикл, закрывает тест, но не закрывается браузер, остается окно браузера с обновленной страницей. не пойму, что не так..
#6
Отправлено 22 февраля 2012 - 09:21
Вся беда в отступах. Метод tearDown у Вас не принадлежит к тесту и поэтому не выполняется. Добавьте отступ и будет Вам счастье.... class PythonOrgSearch(unittest.TestCase): def setUp(self): self.driver = webdriver.Firefox() ... def tearDown(self): self.driver.close() if __name__ == "__main__": unittest.main()
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных