Привет, всем!
Вот и наступает новый год, значит пора делать последнюю серию сезона про Jira и его кастомизации.
В первые минуты митапа будет короткая сцена про мониторинг Jira, или сказ о плагине для мониторинга.
А именно Андрей Маркелов расскажет о том, что можно, что нельзя и что не нужно кастомизировать. Поскольку Андрей со своим набором плагинов, много получил обратной связи и желаний от разных заказчиков о различных запросах кастомизации.
Анатолий Бородин (Петер-Сервис) поделится своими шишками и маленькими хитростями по миграции и интеграции с заказчиком Atlassian систем (Jira и Confluence), где более детально расскажет о трудностях с которыми можно столкнуться при экспорте данных заказчику. Краткий экскурс в возможности интеграции двух систем JIRA.
С уважением,
Atlassian User Group
Тестирование графического интерфейса пользователя является одним из основных видов тестирования графических приложений. В докладе будут рассмотрены задачи и особенности такого тестирования.
Далее будут рассмотрены плюсы и минусы использования стандартной Qt библиотеки QTest, и представлен проект QSpec, как альтернатива QTest. Также будут представлены примеры использования QSpec и дальнейшие планы по развитию этого проекта.
Адрес проекта: https://github.com/ugeneunipro/QSpec
Подробная статья по докладу: https://habrahabr.ru/company/mobileup/blog/314838/
Team Lead MobileUp Константин Цховребов выступил в Новосибирске на IT-конференций DevFest.
Поделиться азами гибкой простой и функциональной навигации по экранам при использовании MVP в Android. Рассказал, как сделать код навигации чистым и lifecycle-безопасным, а любую, даже самую навороченную цепочку переходов по экранам – делом пары строк.
Привет, всем!
Вот и наступает новый год, значит пора делать последнюю серию сезона про Jira и его кастомизации.
В первые минуты митапа будет короткая сцена про мониторинг Jira, или сказ о плагине для мониторинга.
А именно Андрей Маркелов расскажет о том, что можно, что нельзя и что не нужно кастомизировать. Поскольку Андрей со своим набором плагинов, много получил обратной связи и желаний от разных заказчиков о различных запросах кастомизации.
Анатолий Бородин (Петер-Сервис) поделится своими шишками и маленькими хитростями по миграции и интеграции с заказчиком Atlassian систем (Jira и Confluence), где более детально расскажет о трудностях с которыми можно столкнуться при экспорте данных заказчику. Краткий экскурс в возможности интеграции двух систем JIRA.
С уважением,
Atlassian User Group
Тестирование графического интерфейса пользователя является одним из основных видов тестирования графических приложений. В докладе будут рассмотрены задачи и особенности такого тестирования.
Далее будут рассмотрены плюсы и минусы использования стандартной Qt библиотеки QTest, и представлен проект QSpec, как альтернатива QTest. Также будут представлены примеры использования QSpec и дальнейшие планы по развитию этого проекта.
Адрес проекта: https://github.com/ugeneunipro/QSpec
Подробная статья по докладу: https://habrahabr.ru/company/mobileup/blog/314838/
Team Lead MobileUp Константин Цховребов выступил в Новосибирске на IT-конференций DevFest.
Поделиться азами гибкой простой и функциональной навигации по экранам при использовании MVP в Android. Рассказал, как сделать код навигации чистым и lifecycle-безопасным, а любую, даже самую навороченную цепочку переходов по экранам – делом пары строк.
Mambility. Cтрах и ненависть к фрагментамOlga Golovach
Основные сложности при использовании фрагментов в нагруженном проекте. Разберем, что из этого, по-сути, является мифами, а что типовыми задачами разработчика. Подробно рассказываем, как мы работаем со "сложным" жизненным циклом Фрагментов и извлекаем пользу из retain-свойства.
The talk reviews the most significant elements of organization of automation for a project. It might help you decide whether automation is needed on your project.
Report reviews the possible strategies of implementing the automation into life, touches upon the planning of the automation process and how can the profit acquired from automation be estimated by providing the return of investment calculation.
Наталья Чуфырина, Mail.Ru Group, «Как создать команду по автоматизации тестир...Mail.ru Group
Существует мнение, что от разработчиков системы автоматизированных тестов требуется высокая квалификация в области разработки программного обеспечения и солидный багаж знаний. Обычно таких людей в команде тестирования не много. Но можно начать работы по качественной автоматизации тестирования, даже не имея такого опыта. В докладе речь пойдет о:
отборе рекрутов в программу обучения автоматизации тестирования;
первичном пороге для вхождения в рекруты;
составлении учебной программы;
промежуточном контроле и испытаниях;
начале работы над реальными проектами;
подводных камнях и ошибках, которые можно допустить.
Применение этих знаний на собственном опыте позволило компании получить высокое покрытие проекта тестами и достичь результатов, когда каждый из команды разрабатывает и поддерживает автотесты, а также самостоятельно автоматизирует новые проекты.
Алексей Петров, Mail.Ru Group, "Организация конвейера автоматизации тестирова...Mail.ru Group
Доклад о том, с чего начать выстраивать конвейер автоматизации тестирования. Как не утопить автоматизацию в мнимых штампах и стереотипах, построив по-настоящему эффективный процесс автоматизации тестирования.
Поделюсь опытом и расскажу:
- о том, с чего начать автоматизацию тестирования;
- о том, что делает автоматизированные тесты выгодными;
- как научить "зарабатывать" автотесты;
- о том, как превратить точечное написание автоматизирвоанных тестов в стройный конвейер с отлаженными процессами;
- о популярных ошибках и заблуждениях автоматизации тестирования и о том, как их избегать;
- о сопутствующих инструментах и лайфхаках из практики.
Доклад содержит полезные советы, как для тех, кто только думает внедрить автоматизацию тестирования, так и для тех, кто уже вовсю автоматизирует, но сталкивается с проблемами их эффективной работы или желает сделать автотесты еще более полезными.
Mambility. Cтрах и ненависть к фрагментамOlga Golovach
Основные сложности при использовании фрагментов в нагруженном проекте. Разберем, что из этого, по-сути, является мифами, а что типовыми задачами разработчика. Подробно рассказываем, как мы работаем со "сложным" жизненным циклом Фрагментов и извлекаем пользу из retain-свойства.
The talk reviews the most significant elements of organization of automation for a project. It might help you decide whether automation is needed on your project.
Report reviews the possible strategies of implementing the automation into life, touches upon the planning of the automation process and how can the profit acquired from automation be estimated by providing the return of investment calculation.
Наталья Чуфырина, Mail.Ru Group, «Как создать команду по автоматизации тестир...Mail.ru Group
Существует мнение, что от разработчиков системы автоматизированных тестов требуется высокая квалификация в области разработки программного обеспечения и солидный багаж знаний. Обычно таких людей в команде тестирования не много. Но можно начать работы по качественной автоматизации тестирования, даже не имея такого опыта. В докладе речь пойдет о:
отборе рекрутов в программу обучения автоматизации тестирования;
первичном пороге для вхождения в рекруты;
составлении учебной программы;
промежуточном контроле и испытаниях;
начале работы над реальными проектами;
подводных камнях и ошибках, которые можно допустить.
Применение этих знаний на собственном опыте позволило компании получить высокое покрытие проекта тестами и достичь результатов, когда каждый из команды разрабатывает и поддерживает автотесты, а также самостоятельно автоматизирует новые проекты.
Алексей Петров, Mail.Ru Group, "Организация конвейера автоматизации тестирова...Mail.ru Group
Доклад о том, с чего начать выстраивать конвейер автоматизации тестирования. Как не утопить автоматизацию в мнимых штампах и стереотипах, построив по-настоящему эффективный процесс автоматизации тестирования.
Поделюсь опытом и расскажу:
- о том, с чего начать автоматизацию тестирования;
- о том, что делает автоматизированные тесты выгодными;
- как научить "зарабатывать" автотесты;
- о том, как превратить точечное написание автоматизирвоанных тестов в стройный конвейер с отлаженными процессами;
- о популярных ошибках и заблуждениях автоматизации тестирования и о том, как их избегать;
- о сопутствующих инструментах и лайфхаках из практики.
Доклад содержит полезные советы, как для тех, кто только думает внедрить автоматизацию тестирования, так и для тех, кто уже вовсю автоматизирует, но сталкивается с проблемами их эффективной работы или желает сделать автотесты еще более полезными.
Windbg: когда у нас не воспроизводится. Александр Головач ➠ CoreHard Autumn ...corehard_by
На практике возникают проблемы, которые невозможно воспроизвести и исследовать на стороне разработчика. В таких ситуациях порой бывает невозможно даже организовать удаленный доступ к машине. Во время доклада будут рассмотрены и даны советы по отладке типовых задач таких как аварийное завершение, утечка ресурсов и ошибки синхронизации в многопоточных приложениях. Мы будем использовать отладчик Windbg. Доклад будет интересен в первую очередь начинающим разработчикам, работающим с платформой Windows.
Андрей Зайцев - TDD в кровавом энтерпрайзеElias Fofanov
Поговорим о том, когда, как и для чего писать тесты, а так же научимся проходить интервью на позицию junior test automation engineer. Подумаем над тем, почему TDD не взлетает, и может ли что-то быть хуже. Рассмотрим на примере использование таких инструментов, как NUnit, FluentAssertions, Moq, HttpMock.
C++ CoreHard Autumn 2018. Что не умеет оптимизировать компилятор - Александр ...corehard_by
Все мы знаем, что компиляторы в настоящее время достаточно умные. И нам как программистам зачастую не нужно думать о каких-то незначительных оптимизациях - мы полагаемся на оптимизации компилятора. Что ж, настало время выяснить, действительно ли настолько компиляторы умны и узнать, в каких местах программист всё же (может быть) умнее.
Презентация на комплексную тему Continious integration-Automated Testing-Agile, показывается связи между этими темам, обоснование автоматического тестирования , и вложения ресурсов для развертывания автоматического тестирования и непрерываной интеграциия. Все темы тесно связаны между собой , хотя бы появились независимос друг от друга.
Так бывает, что иногда ваше приложение начинает долго выполнять казалось бы обыденные задачи и потреблять большое количество оперативной памяти. А вы как разработчик и понятия не имеете, почему же так происходит (но вам интересно). В ходе доклада поговорим о средствах, которые могут нам понять причины странного поведения наших программ. Если не боитесь таких слов как Valgrind, gprof, gperftools и многих других - добро пожаловать!
AgileDays'14 - современная разработка под iOSAnton Katkov
Вы занимаетесь разработкой мобильного продукта или проекта? Тогда этот доклад для вас.
За 15 минут я расскажу о том
- как избавиться от рутинной работы, которую командам приходиться выполнять повседневно
- как снизить сроки разработки за счёт сокращения сроков цикла обратной связи?
- как снизить риски в мобильной разработке?
После этого доклада вы будете знать о том, как внедрить практику Continuous Delivery для вашей мобильной разработки.
AgileDays'14 - Lean Startup, Metrics Driven Development и финансы - смешать, ...Anton Katkov
И так, вы или ваша компания решили сделать новый продукт. И сразу же возникает миллион вопросов:
- С чего же начать?
- Как понять насколько далеки мы от цели? Ведь цель может меняться из-за изменения нашего понимания рынка...
- Как избежать создания продукта, который никому не нужен?
- Как создать продукт, который сможет заработать для вас денег, не просто тратить ваши сбережения?
Эти и многие другие вопросы посещают тех людей, кто создаёт новый продукт. И не важно, являетесь ли вы startup или командой внутри компании. Вопросы в итоге одни и те же.
Именно ответом на эти вопросы я хочу заняться в своём докладе. Но не с теоретической точки зрения как в книгах, а с практической точки зрения на примере реальных продуктов, показывая реальные документы, цифры и всё, что с этим связано.
Я хочу поделиться тем, какой конкретно инструментарий и каким образом можно использовать для того, чтобы сделать создание нового продукта управляемым процессом, а не попыткой выстрелить в рынок наугад.
Приведу пример успеха, которого можно достичь с помощью инструментария, о котором я хочу рассказать. Это пример из моего стартапа MacBuildServer. За две недели мы привлекли на наш сайт более 500 000 человек из нашей целевой аудитории со всего мира, хотя до этого момента о нас знало всего несколько сотен человек. При этом нам не потребовалось тратить ни рубля на рекламу, проплаченные посты или платный трафик. Что ещё интереснее, многие из этих людей стали лояльными нам пользователями и стали о нас писать в интеренете и поддерживать нас.
Идея этого доклада родилась у меня за последний год, так как я проконсультировал несколько десятков команд, занимающихся разными продуктами и увидел, что проблемы у всех очень схожие. При этом достаточно простые действия позволяют этим командам найти ответы на свои вопросы. Именно этими "простыми шагами" я и хочу поделится с вами.
AgileCamp'11 Новосибирск - введение в инженерные практики
XP.Party (iOS) - unit tests frameworks overview
1. Test Frameworks
overview
Инженерные практики в iOS: Unit Tests
2. О нас
● Виталий Ружников
○ iOS-фрилансер
○ Руководитель разработки мобильных проектов
● Антон Катков
○ Тренер по инженерным практикам
○ Директор, руководитель проектов, iOS-
разработчик
3. Roadmap
● Unit Tests
● OCUnit
● Google Toolbox for Mac (GTM)
● GHUnit
● Рекоммендации
4. Unit Test
● Проверка компонента, что он ведет себя
так, как ожидает этого программист;
● Компонентом может быть функция или
класс.
5. Unit Test
● Не обращается к базе данных
● Не лезет в сеть
● Не обращается к файловой системе
● Для их выполнения приходится
специально настраивать среду,
например, править конфигурационные
файлы.
● Выполняются быстро(очень очень
быстро, тест, выполняющийся 1/10 сек,
медленный тест)
7. Критерии
● Легкость подключения, написания и
запуска тестов;
● Сообщения об ошибках в тестах;
● Возможность отладки;
● Интеграция с IDE(XCode 4.x, XCode 3.x,
AppCode);
● Запуск тестов из коммандой строки(для
регулярного прогона на сервере
непрерывной интеграции);
8. OCUnit - Подключение
● Из коробки (галочку поставить при
создании проекта);
● Либо добавить unit test target к
существующему проекту;
10. OCUnit - Запуск, товарищи!
● Logic tests запускаются только на
симуляторе
○ XCode 4 - Схема 'Test' для запуска
○ XCode 3 - выбрать таргет тестов
○ Можно редактировать какие тесты запускать,
отредактировав схему
● Application tests - и на девайсе и на
симуляторе
○ Использовать 'Run' scheme для запуска
○ Прогоняются все тесты
12. OCUnit - Сообщение об ошибках
● Номера строчек в коде и сообщения об
ошибке
● Есть возможность генерации JUnit-
подобных отчетов:
○ https://github.
com/hborders/BPOCUnitXMLReporter
13. OCUnit - Отладка
● XCode 4 - Добавляем брейкпойнт и
вперед
● XCode 3 - Излазить гугл и пройти
нетривиальную инструкцию
14. OCUnit - Поддержка в IDE
● Свалившиеся тесты представлены в issue
навигаторе.
● Application Tests - только сообщения в
консоли.
16. GTM Подключение
● Проходим инструкцию http://code.google.
com/p/google-toolbox-for-mac/wiki/iPhoneUnitTesting
● Тесты по существу запускаются из
коммандной строки
● Нет искусственного разграничения на
logic и application тесты
17. GTM - Пишем тесты
● Наследуемся от GTMTestCase
● -(void)testMyTestNameGoesHere {}
● Assertations совместимы с теми, что в
OCUnit!
● STAssertEqualStrings
18. GTM - Запуск
● И на девайсе и на симуляторе
● Нельзя выборочный запуск тестов делать
19. GTM - Сообщения об ошибках
● Практически такое же как в OCUnit;
● Нет информации о возможности
генерации JUnit подобных отчетов;
20. GTM - Debugging
● Включаем галочку 'Run script only when
installing'
○ Если не включить, то запуск тестов будет
проводиться на этапе компиляции
● Ставим брейкпойнт и запускаем тестовый
таргет
21. GTM - XCode Integration
● На этапе компиляции ошибки видны в
issue навигаторе и редакторе кода
● При пригоне после установки на
симуляторе ищем сообщения об
ошибках в консоли
22. GTM - Запуск из командной строки
● Ничем не отличается от OCUnit, но не
забываем снять галочку с "Run script only
when installing"
23. GHUnit - Плюшки
● Асинхронные тест кейсы
● Ассерты с картинками вьюшек
● Выбор отдельных тестов
● Мокирование NSUrlConnection
24. GHUnit - Подлючение
● Проходим по шагам инструкцию
http://gabriel.github.com/gh-
unit/docs/appledoc_include/guide_install_ios_4.html
● Нужен отдельный таргет
● Тесты запускаются в отдельном
приложении
25. GHUnit - Пишем тесты
● Наследуемся от GHTestCase
● -(void)testMyTestNameGoesHere { }
● Assertations практически теже самые,
только префикс GH(GHAssertTrue...).
26. GHUnit - Запуск
● Запуск на девайсе и в симуляторе(после
некоторых махинаций)
● Тесты запускаются внутри отдельного ios
приложения
● Можно выбирать какие тесты запускать
● Приложение может упасть, если будет
unexpected exception
27. GHUnit - Отчеты об ошибках
● Стек трейсы, номера строк, текстовое
описание ошибки
● Отчеты об ошибках могут быть
представлены в junit формате
○ WRITE_JUNIT_XML=YES
30. GHUnit - Command Line
● Проходим инструкцию http://gabriel.github.
com/gh-unit/docs/appledoc_include/guide_command_line.html
● Для тех кому лень:
○ xcodebuild -target Tests -configuration Debug -sdk
iphonesimulator5.0 clean build GHUNIT_CLI=1
WRITE_JUNIT_XML=1
31. Best Practices
● Отдельный таргет на юнит тесты;
● Отдельный таргет на интеграционные
тесты;
● Отдельный на медленные;
● Отдельный на performance...
32. Final Recommendations
● Unit Tests XCode 4 - OCUnit
● Unit Tests XCode 3 - GTM
● GHUnit - для интеграционных тестов