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

Igor_N

Регистрация: 30 мар 2020
Offline Активность: 16 апр 2020 18:23
-----

Мои темы

как в блоке try сделать проверку или как обойти assert ?

14 апреля 2020 - 15:10

Проблема (Вопрос) заключается в том, что я делаю тест для мониторинга и я пытаюсь сделать логику так, что при недоступности адреса https:/dixy.ru/ тест все равно писал в базу 0.0

тест работает если убрать проверки, но если убрать проверки зачем такой тест.
как обойти assert, или можно проверку как то по другому сделать?
Что я делаю не так подскажите пожалуйста:

------------------------

def test_1(self):
driver = self.driver
try:
start = time.time()
# print(start)
driver.get("https:/dixy.ru/")
assert "Поиск" in driver.page_source
end = time.time()
# print(end)
download_page = end - start
print(download_page)
try:
start2 = time.time()
# print(start2)
driver.find_element_by_xpath("/html/body/header/div/div/ul[2]/li[1]/a/p").click()
assert "по скидке" in driver.page_source
end2 = time.time()
# print(end2)
katalog_tovarov = end2 - start2
print(katalog_tovarov)
except:
katalog_tovarov = 0.0
print(traceback.format_exc())
except:
download_page = 0.0
print(traceback.format_exc())
finally:
client = InfluxDBClient(host='..', port=..., username='', password='', ssl=False, verify_ssl=False)
client.switch_database('test')

json_body = [
{
"measurement": "dixy_synth",
"tags": {
"it_service": "dixy",
"source": "CHROME",
},
"time": datetime.utcnow(),
"fields": {
"value1": download_page,
"value2": katalog_tovarov
}
}
]

print(json_body)
client.write_points(json_body)
client.close()
-----------------------

 


Selenium + python очень долго отрабатывает функция send_keys()

30 марта 2020 - 09:00

Коллеги, добрый день.

 

Пишу тесты Selenium + python + IE.

 

def init_browser():
    return webdriver.Ie("C:\IEDriverServer_x64_3.150.1\IEDriverServer.exe")
 
def lookup(browser):
    browser.get("http://....")
    user = browser.find_element_by_name("USER")
    password = browser.find_element_by_name("PASSWORD")
    user.clear()
    login = "worker"
    user.send_keys(login)
    password.clear()
    password.send_keys("worker")
    start = time.perf_counter()
    browser.find_element_by_name('CONNECT').click()
    return start
 
Код работает. Но логин и пароль вводятся по 1 букве в течении 1 минуты 12 секунд.
Как я понял библиотека парсит строку в typle и циклом проходится по всему слову и вводит по 1 букве.
Как это обойти или увеличить скорость ввода пароля?
 
Я новичок в тестировании, подскажите пожалуйста.