Какой рейтинг вас больше интересует?
|
Главная / Главные темы / Тэг «id»
Мутационное тестирование 2017-08-20 23:40:50
+ развернуть текст сохранённая копия
Юнит тесты помогают нам удостовериться, что код работает так, как мы этого хотим. Одной из метрик тестов является процент покрытия строк кода (Line Code Coverage).
Но насколько корректен данный показатель? Имеет ли он практический смысл и можем ли мы ему доверять? Ведь если мы удалим все assert строки из тестов, или просто заменим их на assertSame(1, 1) , то по-прежнему будем иметь 100% Code Coverage, при этом тесты ровным счетом не будут тестировать ничего.
Насколько вы уверены в своих тестах? Покрывают ли они все ветки выполнения ваших функций? Тестируют ли они вообще хоть что-нибудь?
Ответ на этот вопрос даёт мутационное тестирование. Читать дальше →
Тэги: ast, coverage, infection, it-систем, mutant, mutation, mutation-analysis, mutation-testing, php, test-framework, testing, программирование, тестирование
[Из песочницы] Mountebank: гибкое мокирование web API 2017-08-18 14:04:13
+ развернуть текст сохранённая копия
Когда речь заходит о разработке современных IT-систем, вопрос мокирования внешних зависимостей всегда идет где-то рядом. Внешний сервис может быть недоступен на этапе разработки, либо его функционал разрабатывается параллельно и на него нельзя полагаться. Особенно остро этот вопрос встает на этапе написания автотестов, ведь проверять нужно не только штатное поведение вашей системы, но и исключительные случаи: недоступность внешнего сервиса, случаи когда внешний сервис отвечает ошибкой и так далее.
Даже если вам повезло и ваш продукт имеет минимум зависимостей от внешних сервисов, скорее всего внутри он разбит на компоненты (классика жанра — backend/frontend), которые можно и нужно тестировать по отдельности. Это значит, что внешней зависимостью уже является api соседнего компонента, команда разработки которого совсем не горит желанием предоставлять вам инструменты для управления его состоянием.
По моим наблюдениям команды тестирования предпочитают ограничиться самыми базовыми кейсами автотестов, объясняя это как-раз невозможностью переопределить поведение внешней системы.
Решить эту проблему может мокирование API внешних систем.
Обычно в этом месте тестировщики начинают грустить, т.к. предыдущее предложение означает, что помимо самих автотестов им нужно написать сервис, дублирующий по функционалу внешнюю систему, а в дополнение к этому нужно как-то управлять его состоянием, чтобы на одни и те же запросы он мог отвечать по-разному в зависимости от тест-кейса.
В данной статье я опишу Mountebank: инструмент, который позволяет быстро и очень гибко мокировать API прямо из автотестов без необходимости писать свой веб-сервис.
Возможности mountebank'а:
- мокирование API на протоколах tcp, http, https, smtp;
- мокирование неограниченного количества API одновременно;
- гибкое переопределение логики mock-API прямо во время тестов используя конфигурационный API mountebank'a;
Читать дальше →
Тэги: automation, it-систем, mountebank, pytest, python, веб-сайтов, веб-сервисов, мобильных, приложений, разработка, тестирование
Что нового в PHP 7.2? 2017-08-16 11:39:22
Несмотря на то, что мы активно работаем с Python и Go, всё же существенная часть нашего ...
+ развернуть текст сохранённая копия
Несмотря на то, что мы активно работаем с Python и Go, всё же существенная часть нашего серверного кода написана на PHP. Поэтому мы внимательно следим за всеми нововведениями языка. Прошло меньше года после релиза предыдущей минорной версии, и вот уже последний бета-релиз запланирован на 17 августа. Его ещё не рекомендуется использовать в production, но уже можно скачать docker-образ. Пора разбираться, что изменилось в новой версии языка.
Читать дальше →
Тэги: 7.2, avito, changelog, holywars, it-стандарты, new, php, php7.2, rfc, what's, блог, компании, обзор, программирование
[Перевод] Что за черт, Javascript 2017-08-15 14:24:08
...
+ развернуть текст сохранённая копия
Этот пост — список забавных и хитрых примеров на JavaScript. Это отличный язык. У него простой синтаксис, большая экосистема и, что гораздо важнее, огромное сообщество.
В то же время мы все знаем, что JavaScript довольно забавный язык, в котором есть хитрые вещи. Некоторые из них быстро превращают нашу повседневную работу в ад, а некоторые заставляют хохотать. В этом посте рассмотрим некоторые из них. Читать дальше →
Тэги: group, it-стандарты, javascript, mail.ru, wtf, блог, веб-сайтов, компании, ненормальное, программирование, разработка, теги, читает
[Перевод] Как выбрать правильный лэптоп для программирования 2017-08-10 09:24:03
Выбор ...
+ развернуть текст сохранённая копия
Выбор лэптопа, подходящего для программирования – задача непростая.
Несложно запутаться, просматривая разнообразные варианты. Рынок предлагает много различных моделей, и каждая отличается определенным набором характеристик.
Писать код можно практически на любом лэптопе. Тем не менее, ваша продуктивность увеличится при использовании инструмента, наиболее подходящего под тип выполняемых задач.
Существуют разные типы разработки и для каждого из них есть свой инструмент. Таким образом, нет единого решения, подходящего всем одновременно.
При написании статьи я исходил из следующего:
- Вы — веб-разработчик
- Ваш лэптоп – ваш основной инструмент разработки
Вот некоторые соображения, которые, возможно, помогут вам при покупке нового лэптопа.
Переведено в Alconost Читать дальше →
Тэги: alconost, it-стандарты, блог, веб-сайтов, инструменты, компании, лэптопы, программирование, разработка, разработчика
Главная / Главные темы / Тэг «id»
|
Взлеты Топ 5
Падения Топ 5
|