Pull to refresh
0
0
Send message

Тестировщик в ответе за всё

Reading time16 min
Views25K
Недавно я участвовал в профориентационном лагере для школьников. Меня попросили рассказать про Хабр и про то, какие есть ИТ-специальности и что будет в будущем.

Как школьнику рассказать, кто такой тестировщик и зачем нужен процесс тестирования?

Я как-то выкрутился, но чувство незавершенности осталось и по сей день.
На Хабре шикарно умеют объяснять почему трава зеленая или почему программист это супергерой. Если бы вы объясняли 10-класснику, кто такой тестировщик, как бы вы описали этот процесс?

(Есть замечательная книга Сеймура Пейперта «Переворот в сознании: Дети, компьютеры и плодотворные идеи», где рассказывается о том, как сформировать в мышлении детей хорошие стратегии отладки, но эта книга достойна отдельной статьи ->)

«Пугать надо» — посоветовали мне бывалые. Ну что ж, сделал подбоку самых сочных программистских ошибок.

Автоматизация тестирования вебсайта: Pytest, Allure, Selenium + несколько секретных ингредиентов

Reading time5 min
Views19K
Уже больше года у Acronis новый логотип, о том, как он создавался можно прочитать тут. В рамках ребрендинга обновился и сайт www.acronis.com. Для построения сайта мы выбрали CMS Drupal. Сайт получился классный снаружи и непростой внутри: 28 локалей (!), отзывчивый веб-дизайн, карусели, визарды, всплывающие окна… в итоге пришлось задействовать множество различных модулей друпала, некоторые из них кастомизировать и писать собственные. При работе такой динамичной, сложной системы неизбежны ошибки. Их предотвращением и выявлением занимается команда контроля и обеспечения качества вебсайта. В этой статье мы хотим поделиться своим успешным рецептом автоматизации тестирования нашего сайта.


Добро пожаловать под кат!

Как собеседовать ИТ-специалистов

Reading time2 min
Views33K
Одна из наших основных задач — сделать IaaS простым и понятным. Для этого мы постоянно оптимизируем работу нашего провайдера и рассказываем об этом здесь. Например, мы уже писали о том, как работает API нашего IaaS-провайдера и делились опытом разработки своего DNS-менеджера.

Сегодня мы решили взглянуть на западный опыт и рассмотреть тему найма ИТ-специалистов. Для этого мы оттолкнулись от заметки Реджинальда Брэтуэйта (Reginald Brathwaite) из компании Page Duty и кратко проанализировали инсайты, которые он описал.

Читать дальше →

Риски и проблемы хеширования паролей

Reading time11 min
Views39K
Безопасность всегда была неоднозначной темой, провоцирующей многочисленные горячие споры. И всё благодаря обилию самых разных точек зрения и «идеальных решений», которые устраивают одних и совершенно не подходят другим. Я считаю, что взлом системы безопасности приложения всего лишь вопрос времени. Из-за быстрого роста вычислительных мощностей и увеличения сложности безопасные сегодня приложения перестанут завтра быть таковыми.

Прим. перев.: для более полной картины здесь вас также будет ждать перевод Hashing Passwords with the PHP 5.5 Password Hashing API, на которую автор ссылается в статье.
Читать дальше →

Как сделать тестовое окружение максимально похожим на боевое

Reading time7 min
Views22K
image

Одной из возможностей повышения качества выпускаемого продукта является соответствие окружений на боевых серверах и в среде тестирования. Мы постарались минимизировать количество ошибок, связанных с различием конфигураций, путем перехода от нашего старого тестового окружения, где настройки сервисов сильно отличались от боевых, к новому окружению, где конфигурация практически соответствует боевой. Сделали мы это с помощью docker и ansible, получили много профита, но и не избежали различных проблем. Об этом переходе и интересных подробностях я постараюсь рассказать в данной статье.
Читать дальше →

Готовим ASP.NET 5, выпуск №6: Continuous Deployment с Visual Studio Team Services — полное руководство

Reading time8 min
Views12K
Вслед за замечательными анонсами с конференции Connect 2015 мы продолжаем знакомить вас со сценариями использования новых технологий и сервисов для организации непрерывной разработки и тестирования ваших приложений.

Недавно мы рассказывали о реализации непрерывных процессов разработки и тестирования с помощью Visual Studio Team Services (ранее Visual Studio Online). В статье подробно описывается как на базе репозиториев Git в Visual Studio Team Services организовать процесс разработки на базе Scrum и с помощью интеграции с Visual Studio обеспечить непрерывные процесс тестирования и разработки кода (Continuous Integration & Testing).


В этой статье мы рассмотрим следующий шаг в построении полного цикла DevOps – обеспечение непрерывного развертывания (Continuous Deployment) с помощью новых возможностей настраиваемых шаблонов сборки и публикации проектов в Visual Studio Team Services. Мы будем использовать проект на базе ASP.NET 5 и увидим как для таких проектов обеспечить полный цикл от редактирования кода до автоматической сборки и развертывания в облаке Azure (может быть любым местом).
Читать дальше →

Подборка бесплатных инструментов для разработчиков

Reading time28 min
Views187K
Сегодня мы представляем вашему вниманию адаптированную подборку инструментов (в том числе облачных) для разработчиков, которые позволяют создавать по-настоящему качественные проекты. Здесь представлены исключительно SaaS, PaaS и IaaS сервисы, предоставляющие бесплатные пакеты для разработчиков инфраструктурного ПО.

Читать дальше →

Оценка тестового покрытия на проекте

Reading time7 min
Views84K
Самый лучший способ оценить, хорошо ли мы протестировали продукт – проанализировать пропущенные дефекты. Те, с которыми столкнулись наши пользователи, внедренцы, бизнес. По ним можно многое оценить: что мы проверили недостаточно тщательно, каким областям продукта стоит уделить больше внимания, какой вообще процент пропусков и какова динамика его изменений. С этой метрикой (пожалуй, самой распространённой в тестировании) всё хорошо, но… Когда мы выпустили продукт, и узнали о пропущенных ошибках, может быть уже слишком поздно: на “хабре” появилась про нас гневная статья, конкуренты стремительно распространяют критику, клиенты потеряли к нам доверие, руководство недовольно.

Чтобы такого не происходило, мы обычно заранее, до релиза, стараемся оценивать качество тестирования: насколько хорошо и тщательно мы проверяем продукт? Каким областям не хватает внимания, где основные риски, какой прогресс? И чтобы ответить на все эти вопросы, мы оцениваем тестовое покрытие.
Читать дальше →

Пишем SOAP клиент-серверное приложение на PHP

Reading time29 min
Views240K
Всем привет!
Так случилось, что в последнее время я стал заниматься разработкой веб-сервисов. Но сегодня топик не обо мне, а о том, как нам написать свой XML Web Service основанный на протоколе SOAP 1.2.

Я надеюсь, что после прочтения топика вы сможете самостоятельно:
  • написать свою собственную серверную реализацию веб-приложения;
  • написать свою собственную клиентскую реализацию веб-приложения;
  • написать свое собственное описание веб-сервиса (WSDL);
  • отправлять клиентом массивы однотипных данных на сервер.

Как вы могли догадаться, вся магия будет твориться с использованием PHP и встроенных классов SoapClient и SoapServer. В качестве кролика у нас будет выступать сервис по отправке sms-сообщений.
Интересно?

Автоматизированное тестирование веб-приложения (MS Unit Testing Framework + Selenium WebDriver C#). Часть 1: Введение

Reading time4 min
Views63K
image

Введение

Всем Buenos Dias! В своей статье я хотел бы максимально лаконично и просто рассказать о том, как построить процесс автоматизированного тестирования web-приложения с нуля. Первым делом нужно правильно расставить приоритеты и выбрать приемлемое соотношение цена/качество. Сразу определимся — это будет не решение «на коленках» из зоопарка скриптов, которыми часто пользуются при ручном тестировании. В тоже время мы не будем тратить много усилий на проектирование нашего «фреймворка» для автоматизации. Наша цель — предоставить результаты своей бурной деятельности перед руководством в максимально короткие сроки, при этом система должна быть:
  • максимально простой, чтобы тесты могли писать даже специалисты по ручному тестированию
  • гибкой и расширяемой, поскольку мы не можем адекватно оценить весь объем работ на данном этапе
  • кроссплатформенной (Selenium WebDriver C# поддерживает Firefox, Chrome и IE)

В своем примере я буду успользовать .NET (Microsoft Unit Testing Framework) и Selenium WebDriver C#.
Читать дальше →

Немного практической криптографии под .NET для чайников

Reading time6 min
Views70K
image

Это краткое введение в криптографию под .NET для чайников, как и следует из заголовка. Здесь будут простые вещи и никаких углубленных знаний.

Читать дальше →

Стратегии эффективного обучения для программистов. Часть 2

Reading time7 min
Views7.6K
Продолжаем перевод статьи об использовании установки на рост для обучения программиста (первая часть здесь).

Программистам нужна установка на рост! Ключевые навыки для программистов, такие как реакция на замешательство, восстановление после заминки, желание брать на себя новые трудности, намного легче реализовываются с гибким сознанием, и намного сложнее – с фиксированным.
Читать дальше →

Автоматизация workflow небольшой команды разработки (Часть 1)

Reading time5 min
Views40K
Практически во всех местах моей работы программистом для разработки использовали всего два продукта: багтрекинг и систему контроля версий. Чаще всего это были Atlassian Jira и SVN. В принципе, наличие этих двух систем здорово упорядочивает общение всех участников процесса разработки и положительно влияет на качество работы отдела и продукта.

Года 4 назад я морально, а затем и фактически дорос до уровня тимлида. Взгляды стали шире и выше текущих процессов. В голову стали приходить разные мысли о мотивации, оптимизации, автоматизации и прочих -циях. В этой статье я хотел бы поделиться опытом из разряда технических компетенций тимлида: как автоматизировать ежедневные процессы (например, автоматическая сборка продукта, выкладывание, документирование, управление правами т.д. и т.п.).

После третьей страницы текста моей статьи, я решил разделить ее на 2 блока:


Итак. Настройка ПО, сопровождающего процесс разработки



Читать дальше →

Let's Encrypt: получение сертификата по шагам

Reading time4 min
Views492K
В данной статье будет описан реальный способ получения сертификата от Let's Encrypt в ручном режиме для его дальнейшей установки на веб-сервер Windows (IIS/Microsoft Azure) или Linux (полностью ручной режим). Из-за отсутствия официального клиента под Windows для генерации сертификата будет использоваться дистрибутив Linux.



Данная статья обновляется с создана для тех, кто хочет управлять процессом создания сертификата в полностью ручном режиме. В статье пошаговая инструкция процесса, чтобы вы уже смогли оперативно создать и начать пользоваться своим сертификатом.
Читать дальше →

Про роль техлида

Reading time8 min
Views51K

Для кого эта статья?


В основном статья для технических лидеров команд разработчиков ПО и тех, кто стремится ими стать. И, конечно, для остальных, кого заинтересовала тема.  Для тех, кому интересно мнение относительно роли технического лидера, и для тех, кто готов делиться собственными соображениями на этот счет.

Что будет обсуждаться далее? В основном, это будут мысли на тему роли технического лидера, важных моментов в его работе, а также совсем немного про архитектуру и модульность.

image
Читать дальше →

Повторное использование знаний

Reading time7 min
Views3K
Уже не первый раз натыкаюсь на обсуждения вопросов о том, кто и как изучает новые технологии и о том, как справится с тем огромном потоком «нововведений», которые ежегодно появляются в индустрии ПО. Однажды я уже отвечал на этот вопрос на кывт-е, и после очередного вопроса решил оформить эти мысли более структурированным образом.

Если оглядеться вокруг, то может сложиться впечатление, что отрасль разработки ПО шагает такими громадными шагами, что угнаться за ней нет никакой возможности. И если рассматривать всю отрасль в целом, то действительно это так и есть. Как-то сразу вспоминается старина Брукс со своим «Мифическим человеко-месяцем», когда он в заключении к своей книге пишет о том, как изменилась индустрия ПО в середине 90-х по сравнению с 50-ми годами. В те далекие годы (да, 90-е тоже уже далеки, так что уж говорить за эпоху зарождения индустрии сорока годами ранее) можно было прочитать все журналы (!), компьютерной тематики, которые выходили в свет. Сейчас же ежемесячно появляется десятки книг только по одной из популярных технологий, а количество статей просто не поддается счету.

Читать дальше →

REST vs SOAP. Часть 1. Почувствуйте разницу

Reading time6 min
Views484K
Некоторое время назад я гуглил интернет по поводу “REST vs SOAP”, прочитал пару статей и вроде бы все понял, но не почувствовал от этого никакого удовлетворения. Что-то было не так, то ли я не почувствовал основную идею, то ли просто читал, одновременно слушая новый музон и думая о новой фиче в проекте. Как появилось время, решил восполнить этот пробел, заодно написав полезную статью по этому поводу.
Читать дальше →

Веб-сервисы в теории и на практике для начинающих

Reading time9 min
Views632K

Что такое веб-сервисы?



Прежде всего, веб-сервисы (или веб-службы) — это технология. И как и любая другая технология, они имеют довольно четко очерченную среду применения.

Если посмотреть на веб-сервисы в разрезе стека сетевых протококолов, мы увидим, что это, в классическом случае, не что иное, как еще одна надстройка поверх протокола HTTP.

С другой стороны, если гипотетически разделить Интернет на несколько слоев, мы сможем выделить, как минимум, два концептуальных типа приложений — вычислительные узлы, которые реализуют нетривиальные функции и прикладные веб-ресурсы. При этом вторые, зачастую заинтересованы в услугах первых.

Но и сам Интернет — разнороден, т. е. различные приложения на различных узлах сети функционируют на разных аппаратно-программных платформах, и используют различные технологии и языки.

Чтобы связать все это и предоставить возможность одним приложениям обмениваться данными с другими, и были придуманы веб-сервисы.
Читать дальше →

Построение SOAP веб-сервисов, основанных на сообщениях, с помощью WCF

Reading time15 min
Views52K
WCF очень нравится мне как фрэймворк, упрощающий создание коммуникационного слоя. Но WCF's design style меня не устраивает. Я думаю, что создание нового метода для каждого DTO — это не самое хорошее решение, поэтому попытался решить эту проблему.

WCF имеет некоторые ограничения:
  • Не поддерживает перегрузку методов.
  • Не имеет универсального API.
  • Service Contract зависит от бизнес-требований.
  • Версионность должна выполняться на уровне DataContract и методов, имя операции должно быть универсальным.
  • Другие не .NET клиенты должны создавать столько клиентов, сколько сервисов у вас есть.

Я думаю, что подход в стиле RPC (Remote Procedure Call) не самый подходящий. Сервис должен быть повторно используемым, а влияние бизнес-требований на него должно быть минимальным. Я думаю, что удаленное API должно соответствовать следующим требованиям:
  • Обладать стабильным и универсальным интерфейсом.
  • Передавать данные в соответствии с паттерном DTO.

Веб-сервис, основанный на сообщениях, преодолевает большинство ограничений WCF путем добавления абстракции сообщения.
После прочтения статьи вы узнаете, как строить повторно используемые SOAP веб-сервисы, основанные на сообщениях (и перестанете постоянно плодить новые).
Читать дальше →

Microsoft откажется от поддержки цифровых сертификатов на основе SHA-1

Reading time2 min
Views7.6K
Microsoft откажется от поддержки цифровых сертификатов, в которых используется алгоритм хэширования SHA-1, уже в середине следующего года (июнь 2016 г.). Срок поддержки этого алгоритма хэширования был урезан на полгода, поскольку изначально планировалась его поддержка до 2017 г. Подобное решение связано с обнаруженными недостатками SHA-1, которые позволяют выполнить коллизию и делают возможным подделку цифровой подписи. После указанной даты почти все цифровые сертификаты, использующие для генерации хэша SHA-1, не смогут проходить проверку в Windows и ее компонентах.



Схожее решение не так давно озвучили в Mozilla Foundation, веб-браузер Mozilla Firefox перестанет поддерживать цифровые сертификаты на основе SHA-1 с июля 2016 г. То же касается и Google Chrome.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity