Возвращение знаменитого бестселлера. Изящный, гибкий и понятный код, который легко модифицировать, который корректно работает и который не подкидывает своим создателям неприятных сюрпризов. Неужели подобное возможно? Чтобы достичь цели, попробуйте тестировать программу еще до того, как она написана. Именно такая парадоксальная идея положена в основу методики TDD (Test-Driven-Development — разработка, основанная на тестировании). Бессмыслица? Не спешите делать скороспелые выводы. Рассматривая применение TDD на примере разработки реального программного кода, автор демонстрирует простоту и мощь этой методики. В книге приведены два программных проекта, целиком и полностью реализованных с использованием TDD. За рассмотрением примеров следует обширный каталог приемов работы в стиле TDD, а также паттернов и рефакторингов, имеющих отношение к TDD. Книга будет полезна для любого программиста, желающего повысить производительность своей работы и получить удовольствие от программирования.
Читать полностью »
Рубрика «Тестирование IT-систем» - 61
Книга «Экстремальное программирование: разработка через тестирование»
2017-04-17 в 15:20, admin, рубрики: Блог компании Издательский дом «Питер», книги, Программирование, Профессиональная литература, Тестирование IT-системГенератор тестовых данных для C++
2017-04-15 в 12:10, admin, рубрики: c++, tdd, генерация данных, Программирование, Тестирование IT-систем
При unit-тестированиии кода рано или поздно встает вопрос тестовых данных. И если в одном случае достаточно просто несколько жестко зашитых переменных, то в других случаях необходимы сколько-нибудь большие и случайные данные. В управляемом мире нет проблем с генерацией пользовательских типов (взять тот же Autofixture), но мир C++ зачастую вызывает боль и страдание(поправьте меня, если это не так). Не так давно я познакомился с замечательной библиотекой boost::di и под ее влиянием у меня начала созревать идея библиотеки, которая позволила бы C++ программистам генерировать пользовательские типы данных, забитых случайными значаниями, и это не потребовало бы предварительного их описания. Получилось что-то вроде:
struct dummy_member{
float a;
int b;
};
struct dummy{
explicit dummy(dummy_member val, std::string c) : val_(val), c_(c) {}
private:
dummy_member val_;
std::string c_;
};
int main(int argc, char* argv){
auto d = datagen::random<dummy>();
return 0;
}
Ссылка на код (https://github.com/ukhegg/datagen). Библиотека header-only,C++14. Всех интересующихся прошу под кат.
Настройка и тест роуминга на wi-fi точках доступа CAP300
2017-04-11 в 12:58, admin, рубрики: Mesh-сети, Разработка систем связи, Тестирование IT-систем, метки: wi-fi, wifi, бесшовный роуминг, роуминг, тест, тестирование, точка доступаНачнем с того, что Точки доступа CAP300 не дорогие (приблизительно 4400руб), но при этом эта точка доступа имеет полный функционал: управляется контроллером, может сама быть контроллером и управлять сетью до 8 точек доступа, имеет гигабитный Ethernet PoE 802.3af порт, поддерживает до 16 SSID, VLAN, Radius сервер и роуминг. CAP300 без проблем обеспечит поддержку до 50 пользователей. Вот так выглядит эта точка доступа:
Cloud-AI – искусственный интеллект в облаке, нашедший 10 уязвимостей LinkedIn
2017-04-11 в 11:50, admin, рубрики: cloud computing, безопасность веб-приложений, Блог компании Cloud4Y, интерфейсы, информационная безопасность, искусственный интеллект, машинное обучение, Тестирование IT-систем, Тестирование веб-сервисовВ 2015 году команда проекта CloudSek задалась целью разработки системы искусственного интеллекта, которая сможет взаимодействовать с интернетом как разумный человек. Первый прототип системы был представлен публике в марте 2016 года на конференции NullCon. С тех пор в проекте было несколько прорывных открытий, о которых мы хотим сегодня рассказать.
Automation QA — это отдельная команда?
2017-04-09 в 16:28, admin, рубрики: qa, автоматизация тестирования, культура программирования, Совершенный код, тестирование, Тестирование IT-систем"Конечно отдельная!", — ответит большая часть читающих. Такой ответ укладывается в их картину мира, потому что “так работали всегда”.
Так работали всегда
Эта фраза обычно означает наличие продукта, уже работающего на продакшене или только готовящегося зарелизиться, но написанного без модульных и интеграционных тестов. Без страховочной сети из тестов, изменения вносятся долго, дорого и с большим количеством новых багов. Такой проект в мире разработки принято называть “легаси”.
Компания понимает, что обойтись без страховочной сети нельзя, поэтому создается QA-отдел, который обычно не обеспечивает качество продукта, а лишь контролирует его. С QA-отделом разработчик может спокойно заниматься любимым делом — писать код, ведь ответственность за качество теперь несет выделенный отдел! Происходит классическое “перебрасывание кода через стену” в отдел тестирования:
Как в «Додо Пицца» потеряли 8 миллионов за один час из-за технической ошибки, а потом вернули
2017-04-06 в 8:18, admin, рубрики: e-commerce, Анализ и проектирование систем, Блог компании Яндекс.Деньги, ошибки программистов, платежные системы, Разработка под e-commerce, Тестирование IT-систем
Историю нашумевшей технической ошибки «Додо Пиццы», партнера Яндекс.Кассы, нам рассказал системный архитектор компании Андрей Моревский — сразу передаю микрофон автору.
Еду я в «Сапсане» на открытие первой в Санкт-Петербурге пиццерии «Додо», как вдруг получаю оповещение о множественных отменах оплаченных заказов. И не просто множественных — наша система за час умудрилась откатить якобы оплаченные заказы на 8 миллионов рублей!
Сейчас эта история вызывает только улыбку, но в то утро было совсем не смешно. Поэтому хочу поделиться некоторыми техническими подробностями инцидента и сделанными выводами, а заодно немного рассказать про систему обработки заказов «Додо Пиццы». Читать полностью »
Конференция DUMP-2017: секция «Тестирование»
2017-04-03 в 10:01, admin, рубрики: dump, Блог компании IT-People, екатеринбург, конференция, Тестирование IT-систем, Тестирование веб-сервисов, Тестирование игр, Тестирование мобильных приложений14 апреля в Екатеринбурге пройдет седьмая конференция разработчиков DUMP. Традиционно мы публикуем обзоры секций от программных директоров.
Первый наш пост о секции «Тестирование». Слово одному из организаторов секции — Анастасии Ронжиной. В этот раз программный директор секции «Тестирование» — не человек, а сообщество.
Всё, что вы хотели знать о стек-трейсах и хип-дампах. Часть 2
2017-03-29 в 7:25, admin, рубрики: exeption, java, jpoint, jvm, Блог компании JUG.ru Group, Программирование, стек-трейсы, Тестирование IT-систем, хип-дампыВсё, что вы хотели знать о стек-трейсах и хип-дампах. Часть 1
Перед вами вторая часть расшифровки доклада Андрея Паньгина aka apangin из Одноклассников с одного из JUG'ов (допиленная и расширенная версия его доклада с JPoint 2016). В этот раз мы закончим разговор о стек-трейсах, а также поговорим о дампах потоков и хип-дампах.
Итак, продолжаем…
Карты пользовательского интерфейса
2017-03-28 в 13:09, admin, рубрики: .net, C#, UITesting, Тестирование IT-системБольшой пласт работы с тестами UI составляют Desktop приложения под Windows. В разных статьях во время написания карт пользовательского интерфейса (PageObject’s) читателю показывают написание локаторов вручную с помощью UISpy.
Пять лет назад количество таких элементов в моих тестах стало слишком велико, контролы стали сложнее, а библиотеки для UI тестирования начали расти как грибы.
Рутину по поиску необходимого XPath было решено преобразовать в радость.
Читать полностью »
Всё, что вы хотели знать о стек-трейсах и хип-дампах. Часть 1
2017-03-28 в 7:00, admin, рубрики: exeption, java, jpoint, jvm, Блог компании JUG.ru Group, Программирование, стек-трейсы, Тестирование IT-систем, хип-дампыПрактика показала, что хардкорные расшифровки с наших докладов хорошо заходят, так что мы решили продолжать. Сегодня у нас в меню смесь из подходов к поиску и анализу ошибок и крэшей, приправленная щепоткой полезных инструментов, подготовленная на основе доклада Андрея Паньгина aka apangin из Одноклассников на одном из JUG'ов (это была допиленная версия его доклада с JPoint 2016). В без семи минут двухчасовом докладе Андрей подробно рассказывает о стек-трейсах и хип-дампах.
Пост получился просто огромный, так что мы разбили его на две части. Сейчас вы читаете первую часть, завтра выйдет вторая.
Сегодня я буду рассказывать про стек-трейсы и хип-дампы — тему, с одной стороны, известную каждому, с другой — позволяющую постоянно открывать что-то новое (я даже багу нашел в JVM, пока готовил эту тему).
Когда я делал тренировочный прогон этого доклада у нас в офисе, один из коллег спросил: «Все это очень интересно, но на практике это кому-нибудь вообще полезно?» После этого разговора первым слайдом в свою презентацию я добавил страницу с вопросами по теме на StackOverflow. Так что это актуально.
Читать полностью »