В этой презентации я рассказываю не только об автотестах, а о целом комплексе автоматических инструментов для обеспечения качества веб-сервиса на разных этапах разработки.
Как обеспечить проверку формата? Как поддерживать документацию в актуальном виде? Какую архитектуру выбрать для функциональных тестов?
Немного интересного про JSON-схемы и параметризованные тесты, про тестирование API методом чёрного ящика и про выбор исходных данных для тестирования.
Дело тестера боится: как в опытных руках могут заиграть Java и TestNgIT61
Вячеслав Марков, QA engineer в Weezlabs
Я расскажу о том, как в нашей фирме организовано тестирование бэкенда с помощью тестового фреймворка TestNG и Java. Расскажу о data-driven тестировании и о том, почему его удобно применять. Покажу и опишу разработанную нами структуру типового тестового проекта. Представлю применяемые нами способы сбора и документирования результатов, а так же их анализ в условиях CI.
В этой презентации я рассказываю не только об автотестах, а о целом комплексе автоматических инструментов для обеспечения качества веб-сервиса на разных этапах разработки.
Как обеспечить проверку формата? Как поддерживать документацию в актуальном виде? Какую архитектуру выбрать для функциональных тестов?
Немного интересного про JSON-схемы и параметризованные тесты, про тестирование API методом чёрного ящика и про выбор исходных данных для тестирования.
Дело тестера боится: как в опытных руках могут заиграть Java и TestNgIT61
Вячеслав Марков, QA engineer в Weezlabs
Я расскажу о том, как в нашей фирме организовано тестирование бэкенда с помощью тестового фреймворка TestNG и Java. Расскажу о data-driven тестировании и о том, почему его удобно применять. Покажу и опишу разработанную нами структуру типового тестового проекта. Представлю применяемые нами способы сбора и документирования результатов, а так же их анализ в условиях CI.
QA Fest 2017. Яна Кокряшкина. Интеграция автоматизированных тестов с инструме...QAFest
Как автоматически поставить тест кейсу статус "Pass", создать новый или зактрыть проверенный баг? Во время презентации расскажу как интегрировать автоматизированные тесты с инструментами для тестирования. Покажу рельные примеры совместной работы автоматизированных тестов для веб сайта, написаных на Java или Python, с YouTrack, TestRail и EasyQA.
В этом докладе вы услышите историю о том, как можно построить процесс автоматизированного тестирования и непрерывной интеграции за короткий период времени. Мы поговорим о точках роста, развития и внедрения автоматизированного тестирования на уже существующем проекте. Вы узнаете, что с чего начинать автоматизированное тестирование и как выбрать "работающую" стратегию. После доклада вы захотите избавиться или значительно сократить ручное тестирование и ручной труд у себя на проекте. Вы откроете для себя целую систему, элементы который можно будет внедрять у себя, и которые будут работать.
Доклад будет интересен всем тестировщикам, разработчикам и менеджерам проектов.
Тестируй это / Виктор Русакович (GP Solutions)Ontico
РИТ++ 2017, Frontend Сonf
Зал Дели + Калькутта, 5 июня, 18:00
Тезисы:
http://frontendconf.ru/2017/abstracts/2625.html
Как писать тесты?
Как запускать тесты?
Кто все сломал?
Все три вопроса рассмотрены в докладе. Также будет демо интеграции проекта, покрытого тестами, и cloud-based-сервиса по запуску этих тестов (github+travis).
Кроме того, расскажу об опыте по сокращению времени прогона тестов; о том, как добавить тесты в случае, если у вас уже есть большое приложение, но все еще без тестов.
QA Fest 2017. Яна Кокряшкина. Интеграция автоматизированных тестов с инструме...QAFest
Как автоматически поставить тест кейсу статус "Pass", создать новый или зактрыть проверенный баг? Во время презентации расскажу как интегрировать автоматизированные тесты с инструментами для тестирования. Покажу рельные примеры совместной работы автоматизированных тестов для веб сайта, написаных на Java или Python, с YouTrack, TestRail и EasyQA.
В этом докладе вы услышите историю о том, как можно построить процесс автоматизированного тестирования и непрерывной интеграции за короткий период времени. Мы поговорим о точках роста, развития и внедрения автоматизированного тестирования на уже существующем проекте. Вы узнаете, что с чего начинать автоматизированное тестирование и как выбрать "работающую" стратегию. После доклада вы захотите избавиться или значительно сократить ручное тестирование и ручной труд у себя на проекте. Вы откроете для себя целую систему, элементы который можно будет внедрять у себя, и которые будут работать.
Доклад будет интересен всем тестировщикам, разработчикам и менеджерам проектов.
Тестируй это / Виктор Русакович (GP Solutions)Ontico
РИТ++ 2017, Frontend Сonf
Зал Дели + Калькутта, 5 июня, 18:00
Тезисы:
http://frontendconf.ru/2017/abstracts/2625.html
Как писать тесты?
Как запускать тесты?
Кто все сломал?
Все три вопроса рассмотрены в докладе. Также будет демо интеграции проекта, покрытого тестами, и cloud-based-сервиса по запуску этих тестов (github+travis).
Кроме того, расскажу об опыте по сокращению времени прогона тестов; о том, как добавить тесты в случае, если у вас уже есть большое приложение, но все еще без тестов.
Практические основы тестирования на php Unit-test: понятия, тонкости, пути решения, вопросы для проработки.
PHPUnittest fast start
Разработано http://webgloss.ru
Доклад на конференции Selenium Camp 2012.
http://seleniumcamp.com/program/#parallel-testing
Видео: http://video.yandex.ru/users/xpinjection/view/105/#hq
Все разработчики автоматизированных тестов рано или поздно сталкиваются с проблемой - "то, что есть в тулзе, которую я юзаю, явно не достаточно и надо что-то делать".
Мы поговорим с чего начать и чем продолжить, так чтоб получить действительно хорошее решение для автоматизированного тестирования. Обсудим интеграцию с continues integration и реализации систем репортинга. За опорный пример возьму фреймворк на базе Selenium.
The development of Selenium 3 is officially discontinued. The next major version of Selenium 4 is being prepared for release. New commands that have been recently added to the W3C WebDriver standard will appear. A lot of legacy code will be removed, including the driver for “old” versions of Firefox. But the main changes will take place in Selenium Server and Selenium Grid. In short, the server will be completely redesigned, the new implementation is written from scratch. Yes, communication protocols will remain old, but the internal device will change beyond recognition. In particular, if earlier Selenium Grid consisted of two types of nodes (hub and end nodes), the new version will have four types of nodes. In my report, I will try to explain why we changed everything, who will get better from this, what will be the possibilities for customizing the grid in the new version and how to migrate from the old version to the new one.
Positive Hack Days. Гольцев. Мастер - класс: Уязвимости Web – сложные случаи.Positive Hack Days
Будут рассмотрены навыки обнаружения сложных уязвимостей Web-приложений, ручного анализа результатов работы сканеров защищенности Web-приложений, оценки эффективности специализированных средств защиты, таких как Web Application Firewall.
Бодрящий микс из Selenium и TestNG- регрессионное тестирование руками разрабо...Andrey Rebrov
Как-то так происходит, что “на 10 девчонок по статистике 9 ребят”, а точнее на группу из 5-7 разработчиков – 1 тестировщик. Или его нет совсем. Так что очень часто приходится и код писать, и тестировать, а дата релиза все ближе и ближе.
В тех случаях, когда мы пишем веб-приложение, помочь в нашей нелегкой судьбе может бодрящий микс из Selenium и TestNG... Как это сделали мы, какие потом получили выводы и результаты — все это я и хочу рассказать и показать
Многие из нас слышали, что при создании тестовых систем необходимо понимать из каких слоев они должны состоять. Но начинающим специалистам очень сложно четко понять за чем эти слои нужны и какие функции они выполняют. В своем докладе я хотел бы внести ясность по данному вопросу и ответить на все все вопросы.
Мир мобильных телефонов очень сильно изменил нашу жизнь. В наше время невозможно представить современного человека, без этого чудо устройства. На рынке появляется все больше устройств и приложений. И чтобы удобнее пользоваться этими приложениями пользователи выбирают “умные” телефоны, или как их еще принято называть смартфоны. В своем докладе я хочу поделиться своим опытом автоматизации приложений под Android и iOS. Я расскажу о том, какие инструменты автоматизации я использовал. Поговорим о недостатках этих инструментов и какие из них стоит использовать у себя на проекте.
5. Алексей Баранцев Software-Testing.Ru Selenium2.Ru facebook.com/groups/selenium.ru/ barancev@gmail.com skype:barancev
Серия стандартов 25000
• ГОСТ Р ИСО/МЭК 25010
– модель качества продукта
– модель качества
при использовании
• ГОСТ Р ИСО/МЭК 25012
– модель качества данных
16. Алексей Баранцев Software-Testing.Ru Selenium2.Ru facebook.com/groups/selenium.ru/ barancev@gmail.com skype:barancev
Уровень производительности
• Временные характеристики
• Использование ресурсов
• Потенциальные возможности
19. Алексей Баранцев Software-Testing.Ru Selenium2.Ru facebook.com/groups/selenium.ru/ barancev@gmail.com skype:barancev
Уровень производительности
• Временные характеристики
• Использование ресурсов
• Потенциальные возможности
25. Алексей Баранцев Software-Testing.Ru Selenium2.Ru facebook.com/groups/selenium.ru/ barancev@gmail.com skype:barancev
Failed to start up socket within 45000 ms
OpenQA.Selenium.WebDriverException: Failed to start up socket within 45000 ms
Result StackTrace:
at OpenQA.Selenium.Firefox.Internal.ExtensionConnection.ConnectToBrowser(TimeSpan timeToWait)
at OpenQA.Selenium.Firefox.Internal.ExtensionConnection.Start()
at OpenQA.Selenium.Firefox.FirefoxDriver.StartClient()
at OpenQA.Selenium.Remote.RemoteWebDriver..ctor(ICommandExecutor commandExecutor,
ICapabilities desiredCapabilities)
at OpenQA.Selenium.Firefox.FirefoxDriver..ctor(FirefoxBinary binary, FirefoxProfile profile)
at OpenQA.Selenium.Firefox.FirefoxDriver..ctor()
26. Алексей Баранцев Software-Testing.Ru Selenium2.Ru facebook.com/groups/selenium.ru/ barancev@gmail.com skype:barancev
Взаимодействие с баг-трекером
@Test
@Bug(12345)
public void testSomething() {
Assert.assertTrue(someOperationWithBug());
}
27. Алексей Баранцев Software-Testing.Ru Selenium2.Ru facebook.com/groups/selenium.ru/ barancev@gmail.com skype:barancev
TestNG и MantisBT
public class AssumeBugIsFixed implements IAnnotationTransformer {
public void transform(ITestAnnotation annotation, Class testClass,
Constructor testConstructor, Method testMethod) {
Bug bugAnnotation = testMethod.getAnnotation(Bug.class);
if (bugAnnotation != null) {
try {
MantisConnectLocator mcl = new MantisConnectLocator();
MantisConnectPortType mcp = mcl.getMantisConnectPort(
new URL("http://localhost/mantisbt-1.2.17/api/soap/mantisconnect.php"));
IssueData issue = mcp.mc_issue_get("administrator", "root",
BigInteger.valueOf(bugAnnotation.value()));
String status = issue.getStatus().getName();
if (! ("closed".equals(status) || "resolved".equals(status))) {
annotation.setEnabled(false);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
28. Алексей Баранцев Software-Testing.Ru Selenium2.Ru facebook.com/groups/selenium.ru/ barancev@gmail.com skype:barancev
Удобство использования
• Определимость пригодности
• Изучаемость
• Управляемость
• Защищенность от ошибки пользователя
• Эстетика пользовательского интерфейса
• Доступность
34. Алексей Баранцев Software-Testing.Ru Selenium2.Ru facebook.com/groups/selenium.ru/ barancev@gmail.com skype:barancev
Позаботься о себе сам
def test_delete_some_group(app, db):
if len(db.get_group_list()) == 0:
app.group.create(Group(name="test"))
group = random.choice(db.get_group_list())
app.group.delete_group_by_id(group.id)