Size: a a a

QA — Автоматизация

2020 March 18

LY

Lev Yarushin in QA — Автоматизация
Нужно линковать контейнеры с браузерами в общую сеть с машиной/контейнером где работают тесты, чтобы браузеры через прокси работали
источник

Ю

Юлиана in QA — Автоматизация
Lev Yarushin
Нужно линковать контейнеры с браузерами в общую сеть с машиной/контейнером где работают тесты, чтобы браузеры через прокси работали
правильно пишешь
источник

SP

Sergey Petrov in QA — Автоматизация
Mikhail
Посоветуйте либу для апи тестов на go
А вы пробовали гуглить? Или спросить в чате проще?
Первая же ссылка "golang unit testing" = https://blog.alexellis.io/golang-writing-unit-tests/amp/
источник

ПБ

Павел Бобров in QA — Автоматизация
Пытаюсь ввести в инпут текст "4242424242424242", но при каждом вводе порядок символов почему-то отличается. Нагуглил такое решение. Подскажите, насколько правильно или не правильно использовать это:
protected void sendKeys(final WebElement element, final String keys) {
   for (int i = 0; i < keys.length(); i++){
       element.sendKeys(Character.toString(keys.charAt(i)));
       waitUntil(attributeContains(element, "value", keys.substring(0, i)));
   }
}
источник

AK

Andrey K in QA — Автоматизация
Павел Бобров
Пытаюсь ввести в инпут текст "4242424242424242", но при каждом вводе порядок символов почему-то отличается. Нагуглил такое решение. Подскажите, насколько правильно или не правильно использовать это:
protected void sendKeys(final WebElement element, final String keys) {
   for (int i = 0; i < keys.length(); i++){
       element.sendKeys(Character.toString(keys.charAt(i)));
       waitUntil(attributeContains(element, "value", keys.substring(0, i)));
   }
}
эм... как это порядок отличается?Оо Т.е. в отправляете что-то типа
driver.FindElement(locator).SendKeys("123");

Но видите, что текст в поле "321"?
источник

ПБ

Павел Бобров in QA — Автоматизация
Andrey K
эм... как это порядок отличается?Оо Т.е. в отправляете что-то типа
driver.FindElement(locator).SendKeys("123");

Но видите, что текст в поле "321"?
Да, именно так
источник

MA

Maksim Andryushchenkov in QA — Автоматизация
Павел Бобров
Пытаюсь ввести в инпут текст "4242424242424242", но при каждом вводе порядок символов почему-то отличается. Нагуглил такое решение. Подскажите, насколько правильно или не правильно использовать это:
protected void sendKeys(final WebElement element, final String keys) {
   for (int i = 0; i < keys.length(); i++){
       element.sendKeys(Character.toString(keys.charAt(i)));
       waitUntil(attributeContains(element, "value", keys.substring(0, i)));
   }
}
Это скорее всего тестовая карта вводится в поле с валидацией и уже такое вроде как то было. Попробуйте каждый символ ввести в цикле отдельно. Я не знаю как, но это помогало.
источник

ПБ

Павел Бобров in QA — Автоматизация
Maksim Andryushchenkov
Это скорее всего тестовая карта вводится в поле с валидацией и уже такое вроде как то было. Попробуйте каждый символ ввести в цикле отдельно. Я не знаю как, но это помогало.
Тестовая карта и поле с валидацией от stripe.
Спасибо, попробую
источник

MA

Maksim Andryushchenkov in QA — Автоматизация
Павел Бобров
Тестовая карта и поле с валидацией от stripe.
Спасибо, попробую
Если не поможет, то попробуйте кликнуть в него сначала)
источник

YO

Yaroslav Osmyslitelny in QA — Автоматизация
тулы - Java. JaCoCo -> sonar. pitest.
проблема - не совсем удобно работает со стримами, кто имеет решение по этому вопросу (можно в личку).
примерный кейс: list.stream().anyActions().distinct().anyActions().lastAction()
если написать 1 тест доходящий до lastAction, то jacoco скажет кавередж 100%. (Хотя логика для distinct будет не покрыта) Взял посмотреть pitest чтоб он мне сказал "все ок, но к distinct привязки тестовой нет". Запускал N раз. pitest мутировал мне что-то только в anyActions первом, но не дальше.
из вариантов пруфы к которым не нашел:
1) со стримами впринципе слабая логика работы у всех тулов
2) когда в стримах слишком сложная логика - она скипается, но для простой работает хорошо
3) есть какое-то доп. настройки для "жесткости" мутаций
источник

O

Oleg in QA — Автоматизация
голосую за первый пункт, но лучше переспроси в pro.jvm
источник

LY

Lev Yarushin in QA — Автоматизация
Павел Бобров
Пытаюсь ввести в инпут текст "4242424242424242", но при каждом вводе порядок символов почему-то отличается. Нагуглил такое решение. Подскажите, насколько правильно или не правильно использовать это:
protected void sendKeys(final WebElement element, final String keys) {
   for (int i = 0; i < keys.length(); i++){
       element.sendKeys(Character.toString(keys.charAt(i)));
       waitUntil(attributeContains(element, "value", keys.substring(0, i)));
   }
}
Вместо ожидания наличия подстроки, лучше просто задержку в цикле сделайте. Иначе при наличии повторяющихся символов возможны проблемы.
источник

SS

Stanislav Shulga in QA — Автоматизация
Павел Бобров
Пытаюсь ввести в инпут текст "4242424242424242", но при каждом вводе порядок символов почему-то отличается. Нагуглил такое решение. Подскажите, насколько правильно или не правильно использовать это:
protected void sendKeys(final WebElement element, final String keys) {
   for (int i = 0; i < keys.length(); i++){
       element.sendKeys(Character.toString(keys.charAt(i)));
       waitUntil(attributeContains(element, "value", keys.substring(0, i)));
   }
}
решал циклом с time.sleep после каждой цифры, работало без проблем
источник

M

Merg in QA — Автоматизация
Stanislav Shulga
решал циклом с time.sleep после каждой цифры, работало без проблем
каеф
источник

ПБ

Павел Бобров in QA — Автоматизация
Maksim Andryushchenkov
Если не поможет, то попробуйте кликнуть в него сначала)
В общем, эффект тот же(
def safe_send_keys(self, value):
       action = ActionChains(self.driver)
       element = self.driver.find_element(*self.locator)
       element.clear()
       element.click()
       for i in value:
           action.send_keys(i).perform()
источник

MA

Maksim Andryushchenkov in QA — Автоматизация
Павел Бобров
В общем, эффект тот же(
def safe_send_keys(self, value):
       action = ActionChains(self.driver)
       element = self.driver.find_element(*self.locator)
       element.clear()
       element.click()
       for i in value:
           action.send_keys(i).perform()
а если element.send_keys вместо ActionChains
источник

MA

Maksim Andryushchenkov in QA — Автоматизация
зачем вы его вообще сюда впихнули?
источник

MA

Maksim Andryushchenkov in QA — Автоматизация
он для немного других действий
источник

ПБ

Павел Бобров in QA — Автоматизация
Maksim Andryushchenkov
а если element.send_keys вместо ActionChains
Да, так работает, спасибо
источник

ПБ

Павел Бобров in QA — Автоматизация
Maksim Andryushchenkov
зачем вы его вообще сюда впихнули?
Я уже всё перепробовал просто, даже до робота дошел
источник