SlideShare une entreprise Scribd logo
1  sur  110
Télécharger pour lire hors ligne
Радости и гадости
регрессионного
тестирования вёрстки
Задача
• Курс по основам HTML и CSS
Задача
• Курс по основам HTML и CSS
• 12 000 пользователей записались на курс
Задача
• Курс по основам HTML и CSS
• 12 000 пользователей записались на курс
• Автоматизация проверки
Найди отличия
Регрессионное тестирование
Регрессионное тестирование
Регрессионное тестирование
Проверка
• JavaScript
Проверка
• JavaScript
• DOM
Проверка
• JavaScript
• DOM
• Computed style
Серверная проверка
• PhantomJS
Серверная проверка
• PhantomJS
• WebKit
Серверная проверка
• PhantomJS
• WebKit
• JavaScript API
Серверная проверка
• PhantomJS
• WebKit
• JavaScript API
$ phantomjs /path/to/your/script.js params
var page = require('webpage').create();
page.open(url, function(status) {
if (status === 'success') {
…
}
});
Серверная проверка
var page = require('webpage').create();
page.open(url, function(status) {
if (status === 'success') {
var result = page.evaluate(function() {
return HtmlacademyTask.runChecks();
});
console.log(result);
}
});
Серверная проверка
var page = require('webpage').create();
page.onConsoleMessage = function(msg) {
console.log(msg);
};
page.onAlert = function(msg) {
console.log(msg);
};
page.open(url, function(status) {
…
});
Серверная проверка
Испытания
var page = require('webpage').create();
page.viewportSize = {
width: width,
height: height
};
page.open(url, function(status) {
if (status === 'success') {
page.render(output);
}
});
Проверка
ImageMagick
ImageMagick
Cреднеквадратическое отклонение (RMSE)
ImageMagick
Cреднеквадратическое отклонение (RMSE)
$ compare -metric RMSE image1.png image2.png diff.png
ImageMagick
Cреднеквадратическое отклонение (RMSE)
$ compare -metric RMSE image1.png image2.png diff.png
13222.7 (0.201766)
ImageMagick
Cреднеквадратическое отклонение (RMSE)
$ compare -metric RMSE image1.png image2.png diff.png
13222.7 (0.201766)
(1-0.201766) * 100 = ~79%
ImageMagick
РезультатОбразец Сравнение
Совпадение — 91%
ImageMagick
Совпадение — 63%
Образец СравнениеРезультат
ImageMagick
Совпадение — 76%
Образец СравнениеРезультат
ImageMagick
Совпадение — 98%
Образец СравнениеРезультат
Система проверки вёрстки
Принцип работы
• Макет
Принцип работы
• Макет
• Образец вёрстки
Принцип работы
• Макет
• Образец вёрстки
• Проверка:
1
2
3
4
5
Принцип работы
• Макет
• Образец вёрстки
• Проверка:
1. Разметка
1
2
3
4
5
Принцип работы
• Макет
• Образец вёрстки
• Проверка:
1. Разметка
2. Сетка
1
2
3
4
5
Принцип работы
• Макет
• Образец вёрстки
• Проверка:
1. Разметка
2. Сетка
3. Оформление
1
2
3
4
5
Принцип работы
• Макет
• Образец вёрстки
• Проверка
• Скриншоты (PhantomJS)
1
2
3
4
5
Принцип работы
• Макет
• Образец вёрстки
• Проверка
• Скриншоты (PhantomJS)
• Сравнение (ImageMagick)
1
2
3
4
5
Чужая вёрстка
Чужая вёрстка
• Не знаем классов и идентификаторов
Чужая вёрстка
• Не знаем классов и идентификаторов
• Не знаем тегов
Чужая вёрстка
• Не знаем классов и идентификаторов
• Не знаем тегов
• Знаем только общую структуру
Чужая вёрстка
Чужая вёрстка
Чужая вёрстка
body > *:nth-child(N) {
…
}
Поиск нужных блоков
Поиск нужных блоков
body > *:nth-child(2) {
box-shadow: inset 0 0 0 6px #000000;
}
Поиск нужных блоков
body > *:nth-child(2) {
box-shadow: inset 0 0 0 6px #000000;
}
body > *:not(:nth-child(2)) {
visibility: hidden;
}
Поиск нужных блоков
body > *:nth-child(2) {
box-shadow: inset 0 0 0 6px #000000;
}
body > *:not(:nth-child(2)) {
display: none;
}
var page = require('webpage').create();
page.open(url, function(status) {
if (status === 'success') {
page.evaluate(function() {
…
});
page.render(output);
}
});
Скриншоты блоков
1. Разметка
var page = require('webpage').create();
page.onResourceRequested = function(data, request) {
if ((/.+.css$/gi).test(data['url'])) {
request.abort();
}
};
page.open(url, function(status) {
…
});
Проверка разметки
page.evaluate(function() {
var links = document.querySelectorAll('[rel=stylesheet]');
[].forEach.call(links, function(element) {
element.parentNode.removeChild(element);
});
});
Проверка разметки
page.evaluate(function() {
var links = document.querySelectorAll('[rel=stylesheet]');
[].forEach.call(links, function(element) {
element.parentNode.removeChild(element);
});
});
Проверка разметки
var styles = document.querySelectorAll('style');
[].forEach.call(styles, function(element) {
element.parentNode.removeChild(element);
});
page.evaluate(function() {
var links = document.querySelectorAll('[rel=stylesheet]');
[].forEach.call(links, function(element) {
element.parentNode.removeChild(element);
});
});
Проверка разметки
var styles = document.querySelectorAll('style');
[].forEach.call(styles, function(element) {
element.parentNode.removeChild(element);
});
var attrs = document.querySelectorAll('[style]');
[].forEach.call(attrs, function(element) {
element.removeAttribute('style');
});
Проверка разметки
Проверка разметки
Особенности разметки
Особенности разметки
<table>
<tr>
<td>Название</td>
<td>Длительность</td>
<td>Описание</td>
</tr>
<tr>
<td>Дневное обучение</td>
<td>4 года</td>
<td>Наиболее интенсивный вариант обучения, для тех, кто не терпит
компромиссов ни в чем</td>
</tr>
</table>
Особенности разметки
<table>
<thead>
<tr>
<td>Название</td>
<td>Длительность</td>
<td>Описание</td>
</tr>
</thead>
<tbody>
<tr>
<td>Дневное обучение</td>
<td>4 года</td>
<td>Наиболее интенсивный вариант обучения, для тех, кто не
терпит компромиссов ни в чем</td>
</tr>
</tbody>
</table>
Особенности разметки
Особенности разметки
2. Сетки
• Выделяем структурные блоки
Поиск сеток
• Выделяем структурные блоки
• Скрываем все декоративные элементы
Поиск сеток
// первый уровень
body > * {
background: #333333;
box-shadow: inset 0 0 0 4px #cccccc;

}
Поиск сеток
// первый уровень
body > * {
background: #333333;
box-shadow: inset 0 0 0 4px #cccccc;

}
body > *::before,
body > *::after {
visibility: hidden;
}
Поиск сеток
// второй уровень
body > * > * {
background: #660000;
box-shadow: inset 0 0 0 4px #ff9999;

}
Поиск сеток
// второй уровень
body > * > * {
background: #660000;
box-shadow: inset 0 0 0 4px #ff9999;

}
body > * > *::before,
body > * > *::after {
visibility: hidden;
}
Поиск сеток
// третий уровень
body > * > * > * {
background: #000066;
box-shadow: inset 0 0 0 4px #9999ff;

}
Поиск сеток
// третий уровень
body > * > * > * {
background: #000066;
box-shadow: inset 0 0 0 4px #9999ff;

}
body > * > * > *::before,
body > * > * > *::after {
visibility: hidden;
}
Поиск сеток
// третий уровень
body > * > * > * {
background: #000066;
box-shadow: inset 0 0 0 4px #9999ff;

}
body > * > * > *::before,
body > * > * > *::after {
visibility: hidden;
}
// все уровни глубже
body > * > * > * > * {
visibility: hidden;
}
Поиск сеток
// убираем весь текст
body, body * {
color: transparent;
}
Поиск сеток
Поиск сеток
Поиск сеток
Поиск сеток
Поиск сеток
3. Оформление
Проверка оформления
Оригинал
Проверка оформления
Результат
Проверка оформления
Уровень совпадения — 87%
Различия в цветах
#6451d5 #7232d8
Шрифты
Шрифты
Шрифты
Уровень совпадения — 87%
В поисках идеальной вёрстки
Выбор есть, даже когда нет выбора
1. Разметка
Выбор есть, даже когда нет выбора
2. Сетка
Выбор есть, даже когда нет выбора
3. Оформление
Наши требования
• 15 из 17 проверок
• 95% совпадения
1
2
3
4
5
Наши требования
• 12 из 17 проверок
• 90% совпадения
1
2
3
4
5
Результаты
• 12 000 записались на курс
• 5 700 начали проходить
• 1 000 успешно прошли курс
• 830 приступили к итоговому испытанию
• 520 успешно прошли итоговое испытание
• 10 итоговых испытаний на 100%
Регрессионное тестирование
• SlimerJS

slimerjs.org
Регрессионное тестирование
• SlimerJS

slimerjs.org
• GraphicsMagick

graphicsmagick.org
Регрессионное тестирование
• CasperJS

casperjs.org
Регрессионное тестирование
• CasperJS

casperjs.org
• PhantomCSS

github.com/Huddle/PhantomCSS
Регрессионное тестирование
• CasperJS

casperjs.org
• PhantomCSS

github.com/Huddle/PhantomCSS
• BackstopJS

garris.github.io/BackstopJS/
Регрессионное тестирование
• CasperJS

casperjs.org
• PhantomCSS

github.com/Huddle/PhantomCSS
• BackstopJS

garris.github.io/BackstopJS/
• Gemini

gemini-testing.github.io/gemini/
Вопросы?
htmlacademy.ruhtmlacademy htmlacademy_ru

Contenu connexe

Tendances

Внутреннее устройство и оптимизация бандла webpack
Внутреннее устройство и оптимизация бандла webpackВнутреннее устройство и оптимизация бандла webpack
Внутреннее устройство и оптимизация бандла webpackAlexey Ivanov
 
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов2ГИС Технологии
 
Как мы ускоряли WebGL / Мстислав Живодков (2GIS)
Как мы ускоряли WebGL / Мстислав Живодков (2GIS)Как мы ускоряли WebGL / Мстислав Живодков (2GIS)
Как мы ускоряли WebGL / Мстислав Живодков (2GIS)Ontico
 
Рендеринг может больше: vue.js vs React, Андрей Солодовников
Рендеринг может больше: vue.js vs React, Андрей СолодовниковРендеринг может больше: vue.js vs React, Андрей Солодовников
Рендеринг может больше: vue.js vs React, Андрей СолодовниковDevDay
 
ДАМП 2015 Екатеринбург
ДАМП 2015 ЕкатеринбургДАМП 2015 Екатеринбург
ДАМП 2015 ЕкатеринбургAlexey Ivanov
 
Быстро о быстром
Быстро о быстромБыстро о быстром
Быстро о быстромRoman Dvornov
 
Изоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесьИзоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесьCodeFest
 
Vue.js - реактивный фронтенд фреймворк для людей
Vue.js - реактивный фронтенд фреймворк для людейVue.js - реактивный фронтенд фреймворк для людей
Vue.js - реактивный фронтенд фреймворк для людейKonstantin Komelin
 
#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...
#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...
#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...JSib
 
JavaScript Базовый. Занятие 07.
JavaScript Базовый. Занятие 07.JavaScript Базовый. Занятие 07.
JavaScript Базовый. Занятие 07.Igor Shkulipa
 
DOM-шаблонизаторы – не только "быстро"
DOM-шаблонизаторы – не только "быстро"DOM-шаблонизаторы – не только "быстро"
DOM-шаблонизаторы – не только "быстро"Roman Dvornov
 
basis.js - почему я не бросил разрабатывать свой фреймворк
basis.js - почему я не бросил разрабатывать свой фреймворкbasis.js - почему я не бросил разрабатывать свой фреймворк
basis.js - почему я не бросил разрабатывать свой фреймворкRoman Dvornov
 
Basis.js – «под капотом»
Basis.js – «под капотом»Basis.js – «под капотом»
Basis.js – «под капотом»Roman Dvornov
 
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»Yandex
 
Сергей Константинов — Что интересного готовит нам W3C
Сергей Константинов — Что интересного готовит нам W3CСергей Константинов — Что интересного готовит нам W3C
Сергей Константинов — Что интересного готовит нам W3CYandex
 
Как построить DOM
Как построить DOMКак построить DOM
Как построить DOMRoman Dvornov
 
Максим Ширшин "SVARX, или Борьба с большими формами"
Максим Ширшин "SVARX, или Борьба с большими формами"Максим Ширшин "SVARX, или Борьба с большими формами"
Максим Ширшин "SVARX, или Борьба с большими формами"Yandex
 
Инструментируй это
Инструментируй этоИнструментируй это
Инструментируй этоRoman Dvornov
 
Алексей Андросов - Debugger: Отладка кода
Алексей Андросов - Debugger: Отладка кодаАлексей Андросов - Debugger: Отладка кода
Алексей Андросов - Debugger: Отладка кодаYandex
 

Tendances (20)

Внутреннее устройство и оптимизация бандла webpack
Внутреннее устройство и оптимизация бандла webpackВнутреннее устройство и оптимизация бандла webpack
Внутреннее устройство и оптимизация бандла webpack
 
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
«Организация Frontend-разработки на крупном проекте» — Дмитрий Кузнецов
 
Как мы ускоряли WebGL / Мстислав Живодков (2GIS)
Как мы ускоряли WebGL / Мстислав Живодков (2GIS)Как мы ускоряли WebGL / Мстислав Живодков (2GIS)
Как мы ускоряли WebGL / Мстислав Живодков (2GIS)
 
Рендеринг может больше: vue.js vs React, Андрей Солодовников
Рендеринг может больше: vue.js vs React, Андрей СолодовниковРендеринг может больше: vue.js vs React, Андрей Солодовников
Рендеринг может больше: vue.js vs React, Андрей Солодовников
 
ДАМП 2015 Екатеринбург
ДАМП 2015 ЕкатеринбургДАМП 2015 Екатеринбург
ДАМП 2015 Екатеринбург
 
Быстро о быстром
Быстро о быстромБыстро о быстром
Быстро о быстром
 
Изоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесьИзоморфный JavaScript — будущее уже здесь
Изоморфный JavaScript — будущее уже здесь
 
Vue.js - реактивный фронтенд фреймворк для людей
Vue.js - реактивный фронтенд фреймворк для людейVue.js - реактивный фронтенд фреймворк для людей
Vue.js - реактивный фронтенд фреймворк для людей
 
#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...
#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...
#3 "Webpack и Vue.JS: Создание больших приложений и их расширение" Кирилл Кай...
 
JavaScript Базовый. Занятие 07.
JavaScript Базовый. Занятие 07.JavaScript Базовый. Занятие 07.
JavaScript Базовый. Занятие 07.
 
DOM-шаблонизаторы – не только "быстро"
DOM-шаблонизаторы – не только "быстро"DOM-шаблонизаторы – не только "быстро"
DOM-шаблонизаторы – не только "быстро"
 
basis.js - почему я не бросил разрабатывать свой фреймворк
basis.js - почему я не бросил разрабатывать свой фреймворкbasis.js - почему я не бросил разрабатывать свой фреймворк
basis.js - почему я не бросил разрабатывать свой фреймворк
 
Basis.js – «под капотом»
Basis.js – «под капотом»Basis.js – «под капотом»
Basis.js – «под капотом»
 
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
FrontTalks: Алексей Андросов (Яндекс), «Ошибки, которые мы любим»
 
Сергей Константинов — Что интересного готовит нам W3C
Сергей Константинов — Что интересного готовит нам W3CСергей Константинов — Что интересного готовит нам W3C
Сергей Константинов — Что интересного готовит нам W3C
 
Как построить DOM
Как построить DOMКак построить DOM
Как построить DOM
 
Суперсилы Chrome developer tools
Суперсилы Chrome developer toolsСуперсилы Chrome developer tools
Суперсилы Chrome developer tools
 
Максим Ширшин "SVARX, или Борьба с большими формами"
Максим Ширшин "SVARX, или Борьба с большими формами"Максим Ширшин "SVARX, или Борьба с большими формами"
Максим Ширшин "SVARX, или Борьба с большими формами"
 
Инструментируй это
Инструментируй этоИнструментируй это
Инструментируй это
 
Алексей Андросов - Debugger: Отладка кода
Алексей Андросов - Debugger: Отладка кодаАлексей Андросов - Debugger: Отладка кода
Алексей Андросов - Debugger: Отладка кода
 

En vedette

Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...
Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...
Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...Ontico
 
В погоне за производительностью. Психология пользователя / Денис Мишунов (Dig...
В погоне за производительностью. Психология пользователя / Денис Мишунов (Dig...В погоне за производительностью. Психология пользователя / Денис Мишунов (Dig...
В погоне за производительностью. Психология пользователя / Денис Мишунов (Dig...Ontico
 
Организация конвейера автоматизации тестирования / Алексей Петров (Mail.ru Gr...
Организация конвейера автоматизации тестирования / Алексей Петров (Mail.ru Gr...Организация конвейера автоматизации тестирования / Алексей Петров (Mail.ru Gr...
Организация конвейера автоматизации тестирования / Алексей Петров (Mail.ru Gr...Ontico
 
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)Ontico
 
Amazing threesome, rrr... React. Redux. Real world / Ростислав Галкин (Babo)
Amazing threesome, rrr... React. Redux. Real world / Ростислав Галкин (Babo)Amazing threesome, rrr... React. Redux. Real world / Ростислав Галкин (Babo)
Amazing threesome, rrr... React. Redux. Real world / Ростислав Галкин (Babo)Ontico
 
Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...
Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...
Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...Ontico
 
Жизнь HTML в 2ГИС под iOS / Роман Янке (2гис)
Жизнь HTML в 2ГИС под iOS / Роман Янке (2гис)Жизнь HTML в 2ГИС под iOS / Роман Янке (2гис)
Жизнь HTML в 2ГИС под iOS / Роман Янке (2гис)Ontico
 
Что делать, когда костыли уже не помогают. Опыт tutu.ru / Роман Грунтович (tu...
Что делать, когда костыли уже не помогают. Опыт tutu.ru / Роман Грунтович (tu...Что делать, когда костыли уже не помогают. Опыт tutu.ru / Роман Грунтович (tu...
Что делать, когда костыли уже не помогают. Опыт tutu.ru / Роман Грунтович (tu...Ontico
 
UX-дизайнер, ты ли это. Навыки проектировщика в стилизации интерфейсов / Илья...
UX-дизайнер, ты ли это. Навыки проектировщика в стилизации интерфейсов / Илья...UX-дизайнер, ты ли это. Навыки проектировщика в стилизации интерфейсов / Илья...
UX-дизайнер, ты ли это. Навыки проектировщика в стилизации интерфейсов / Илья...Ontico
 
Как отвечать за продакшн / Андрей Сумин (Mail.ru)
Как отвечать за продакшн / Андрей Сумин (Mail.ru)Как отвечать за продакшн / Андрей Сумин (Mail.ru)
Как отвечать за продакшн / Андрей Сумин (Mail.ru)Ontico
 
Конструктор / Денис Паясь (Яндекс)
Конструктор / Денис Паясь (Яндекс)Конструктор / Денис Паясь (Яндекс)
Конструктор / Денис Паясь (Яндекс)Ontico
 
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)Ontico
 
Классические архитектуры во фронтенде / Александра Шинкевич (LOVATA)
Классические архитектуры во фронтенде / Александра Шинкевич (LOVATA)Классические архитектуры во фронтенде / Александра Шинкевич (LOVATA)
Классические архитектуры во фронтенде / Александра Шинкевич (LOVATA)Ontico
 
Angular 2 не так уж и плох... А если задуматься, то и просто хорош / Алексей ...
Angular 2 не так уж и плох... А если задуматься, то и просто хорош / Алексей ...Angular 2 не так уж и плох... А если задуматься, то и просто хорош / Алексей ...
Angular 2 не так уж и плох... А если задуматься, то и просто хорош / Алексей ...Ontico
 
AB-тестирование: на что следует обратить внимание / Артур Маликов (Яндекс)
AB-тестирование: на что следует обратить внимание / Артур Маликов (Яндекс)AB-тестирование: на что следует обратить внимание / Артур Маликов (Яндекс)
AB-тестирование: на что следует обратить внимание / Артур Маликов (Яндекс)Ontico
 
Построение моделей на примере продаж рекламы / Алексей Праслов
Построение моделей на примере продаж рекламы / Алексей ПрасловПостроение моделей на примере продаж рекламы / Алексей Праслов
Построение моделей на примере продаж рекламы / Алексей ПрасловOntico
 
Zone to Win – организация в борьбе за лучшие кадры в эпоху разрушительных инн...
Zone to Win – организация в борьбе за лучшие кадры в эпоху разрушительных инн...Zone to Win – организация в борьбе за лучшие кадры в эпоху разрушительных инн...
Zone to Win – организация в борьбе за лучшие кадры в эпоху разрушительных инн...Ontico
 
Genuine web-scale железо. Как FB, Apple и Google разрушают традиции в компьют...
Genuine web-scale железо. Как FB, Apple и Google разрушают традиции в компьют...Genuine web-scale железо. Как FB, Apple и Google разрушают традиции в компьют...
Genuine web-scale железо. Как FB, Apple и Google разрушают традиции в компьют...Ontico
 
Cистемы с непосредственным жидкостным охлаждением / Василий Кирсанов (ТК Связь)
Cистемы с непосредственным жидкостным охлаждением / Василий Кирсанов (ТК Связь)Cистемы с непосредственным жидкостным охлаждением / Василий Кирсанов (ТК Связь)
Cистемы с непосредственным жидкостным охлаждением / Василий Кирсанов (ТК Связь)Ontico
 
JavaScript завтра / Сергей Рубанов (Exante Limited)
JavaScript завтра / Сергей Рубанов  (Exante Limited)JavaScript завтра / Сергей Рубанов  (Exante Limited)
JavaScript завтра / Сергей Рубанов (Exante Limited)Ontico
 

En vedette (20)

Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...
Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...
Как мы адаптировали более 150 сайтов по технологии Dynamically-served JavaScr...
 
В погоне за производительностью. Психология пользователя / Денис Мишунов (Dig...
В погоне за производительностью. Психология пользователя / Денис Мишунов (Dig...В погоне за производительностью. Психология пользователя / Денис Мишунов (Dig...
В погоне за производительностью. Психология пользователя / Денис Мишунов (Dig...
 
Организация конвейера автоматизации тестирования / Алексей Петров (Mail.ru Gr...
Организация конвейера автоматизации тестирования / Алексей Петров (Mail.ru Gr...Организация конвейера автоматизации тестирования / Алексей Петров (Mail.ru Gr...
Организация конвейера автоматизации тестирования / Алексей Петров (Mail.ru Gr...
 
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
 
Amazing threesome, rrr... React. Redux. Real world / Ростислав Галкин (Babo)
Amazing threesome, rrr... React. Redux. Real world / Ростислав Галкин (Babo)Amazing threesome, rrr... React. Redux. Real world / Ростислав Галкин (Babo)
Amazing threesome, rrr... React. Redux. Real world / Ростислав Галкин (Babo)
 
Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...
Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...
Библиотека UI компонентов, о которой вы всегда мечтали / Роберт Харитонов (Li...
 
Жизнь HTML в 2ГИС под iOS / Роман Янке (2гис)
Жизнь HTML в 2ГИС под iOS / Роман Янке (2гис)Жизнь HTML в 2ГИС под iOS / Роман Янке (2гис)
Жизнь HTML в 2ГИС под iOS / Роман Янке (2гис)
 
Что делать, когда костыли уже не помогают. Опыт tutu.ru / Роман Грунтович (tu...
Что делать, когда костыли уже не помогают. Опыт tutu.ru / Роман Грунтович (tu...Что делать, когда костыли уже не помогают. Опыт tutu.ru / Роман Грунтович (tu...
Что делать, когда костыли уже не помогают. Опыт tutu.ru / Роман Грунтович (tu...
 
UX-дизайнер, ты ли это. Навыки проектировщика в стилизации интерфейсов / Илья...
UX-дизайнер, ты ли это. Навыки проектировщика в стилизации интерфейсов / Илья...UX-дизайнер, ты ли это. Навыки проектировщика в стилизации интерфейсов / Илья...
UX-дизайнер, ты ли это. Навыки проектировщика в стилизации интерфейсов / Илья...
 
Как отвечать за продакшн / Андрей Сумин (Mail.ru)
Как отвечать за продакшн / Андрей Сумин (Mail.ru)Как отвечать за продакшн / Андрей Сумин (Mail.ru)
Как отвечать за продакшн / Андрей Сумин (Mail.ru)
 
Конструктор / Денис Паясь (Яндекс)
Конструктор / Денис Паясь (Яндекс)Конструктор / Денис Паясь (Яндекс)
Конструктор / Денис Паясь (Яндекс)
 
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
Пользовательские свойства как основа архитектуры CSS / Павел Ловцевич (LOVATA)
 
Классические архитектуры во фронтенде / Александра Шинкевич (LOVATA)
Классические архитектуры во фронтенде / Александра Шинкевич (LOVATA)Классические архитектуры во фронтенде / Александра Шинкевич (LOVATA)
Классические архитектуры во фронтенде / Александра Шинкевич (LOVATA)
 
Angular 2 не так уж и плох... А если задуматься, то и просто хорош / Алексей ...
Angular 2 не так уж и плох... А если задуматься, то и просто хорош / Алексей ...Angular 2 не так уж и плох... А если задуматься, то и просто хорош / Алексей ...
Angular 2 не так уж и плох... А если задуматься, то и просто хорош / Алексей ...
 
AB-тестирование: на что следует обратить внимание / Артур Маликов (Яндекс)
AB-тестирование: на что следует обратить внимание / Артур Маликов (Яндекс)AB-тестирование: на что следует обратить внимание / Артур Маликов (Яндекс)
AB-тестирование: на что следует обратить внимание / Артур Маликов (Яндекс)
 
Построение моделей на примере продаж рекламы / Алексей Праслов
Построение моделей на примере продаж рекламы / Алексей ПрасловПостроение моделей на примере продаж рекламы / Алексей Праслов
Построение моделей на примере продаж рекламы / Алексей Праслов
 
Zone to Win – организация в борьбе за лучшие кадры в эпоху разрушительных инн...
Zone to Win – организация в борьбе за лучшие кадры в эпоху разрушительных инн...Zone to Win – организация в борьбе за лучшие кадры в эпоху разрушительных инн...
Zone to Win – организация в борьбе за лучшие кадры в эпоху разрушительных инн...
 
Genuine web-scale железо. Как FB, Apple и Google разрушают традиции в компьют...
Genuine web-scale железо. Как FB, Apple и Google разрушают традиции в компьют...Genuine web-scale железо. Как FB, Apple и Google разрушают традиции в компьют...
Genuine web-scale железо. Как FB, Apple и Google разрушают традиции в компьют...
 
Cистемы с непосредственным жидкостным охлаждением / Василий Кирсанов (ТК Связь)
Cистемы с непосредственным жидкостным охлаждением / Василий Кирсанов (ТК Связь)Cистемы с непосредственным жидкостным охлаждением / Василий Кирсанов (ТК Связь)
Cистемы с непосредственным жидкостным охлаждением / Василий Кирсанов (ТК Связь)
 
JavaScript завтра / Сергей Рубанов (Exante Limited)
JavaScript завтра / Сергей Рубанов  (Exante Limited)JavaScript завтра / Сергей Рубанов  (Exante Limited)
JavaScript завтра / Сергей Рубанов (Exante Limited)
 

Similaire à Радости и гадости регрессионного тестирования вёрстки / Алексей Малейков (HTML Academy)

Регрессионное тестирование верстки
Регрессионное тестирование версткиРегрессионное тестирование верстки
Регрессионное тестирование версткиTalks&Works
 
PHP Tricks
PHP TricksPHP Tricks
PHP TricksBlackFan
 
Сергей Бережной "Клиентский JavaScript в БЭМ-терминах: от блока до библиотеки"
Сергей Бережной "Клиентский JavaScript в БЭМ-терминах: от блока до библиотеки"Сергей Бережной "Клиентский JavaScript в БЭМ-терминах: от блока до библиотеки"
Сергей Бережной "Клиентский JavaScript в БЭМ-терминах: от блока до библиотеки"Yandex
 
Behat в PHP с использованием Behat и Mink
Behat в PHP с использованием Behat и MinkBehat в PHP с использованием Behat и Mink
Behat в PHP с использованием Behat и Minktyomo4ka
 
View как чистая функция от состояния базы данных - Илья Беда, bro.agency
View как чистая функция от состояния базы данных  - Илья Беда, bro.agencyView как чистая функция от состояния базы данных  - Илья Беда, bro.agency
View как чистая функция от состояния базы данных - Илья Беда, bro.agencyit-people
 
Web осень 2012 лекция 4
Web осень 2012 лекция 4Web осень 2012 лекция 4
Web осень 2012 лекция 4Technopark
 
Web весна 2013 лекция 4
Web весна 2013 лекция 4Web весна 2013 лекция 4
Web весна 2013 лекция 4Technopark
 
Selenide puzzlers @ devclub.eu
Selenide puzzlers @ devclub.euSelenide puzzlers @ devclub.eu
Selenide puzzlers @ devclub.euAndrei Solntsev
 
Превышаем скоросные лимиты с Angular 2
Превышаем скоросные лимиты с Angular 2Превышаем скоросные лимиты с Angular 2
Превышаем скоросные лимиты с Angular 2Oleksii Okhrymenko
 
React со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендерингReact со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендерингTimophy Chaptykov
 
CSS. Практика
CSS. ПрактикаCSS. Практика
CSS. ПрактикаVitebsk Miniq
 
Автоматизация функционального тестирования REST API: секреты, тонкости и подв...
Автоматизация функционального тестирования REST API: секреты, тонкости и подв...Автоматизация функционального тестирования REST API: секреты, тонкости и подв...
Автоматизация функционального тестирования REST API: секреты, тонкости и подв...SQALab
 
«Автоматизация функционального тестирования REST API: секреты, тонкости и под...
«Автоматизация функционального тестирования REST API: секреты, тонкости и под...«Автоматизация функционального тестирования REST API: секреты, тонкости и под...
«Автоматизация функционального тестирования REST API: секреты, тонкости и под...2ГИС Технологии
 
Автоматизация функционального тестирования REST API
Автоматизация функционального тестирования REST APIАвтоматизация функционального тестирования REST API
Автоматизация функционального тестирования REST APIPavel Asanov
 
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"Yandex
 
Unit-тестирование скриншотами: преодолеваем звуковой барьер
Unit-тестирование скриншотами: преодолеваем звуковой барьерUnit-тестирование скриншотами: преодолеваем звуковой барьер
Unit-тестирование скриншотами: преодолеваем звуковой барьерRoman Dvornov
 
Производительность в Django
Производительность в DjangoПроизводительность в Django
Производительность в DjangoMoscowDjango
 
Компонентная разработка на Stylus, Jade, Typescript - Леонид Ширманов
Компонентная разработка на Stylus, Jade, Typescript - Леонид ШирмановКомпонентная разработка на Stylus, Jade, Typescript - Леонид Ширманов
Компонентная разработка на Stylus, Jade, Typescript - Леонид ШирмановMoscowJS
 

Similaire à Радости и гадости регрессионного тестирования вёрстки / Алексей Малейков (HTML Academy) (20)

Регрессионное тестирование верстки
Регрессионное тестирование версткиРегрессионное тестирование верстки
Регрессионное тестирование верстки
 
PHP Tricks
PHP TricksPHP Tricks
PHP Tricks
 
Сергей Бережной "Клиентский JavaScript в БЭМ-терминах: от блока до библиотеки"
Сергей Бережной "Клиентский JavaScript в БЭМ-терминах: от блока до библиотеки"Сергей Бережной "Клиентский JavaScript в БЭМ-терминах: от блока до библиотеки"
Сергей Бережной "Клиентский JavaScript в БЭМ-терминах: от блока до библиотеки"
 
Behat в PHP с использованием Behat и Mink
Behat в PHP с использованием Behat и MinkBehat в PHP с использованием Behat и Mink
Behat в PHP с использованием Behat и Mink
 
View как чистая функция от состояния базы данных - Илья Беда, bro.agency
View как чистая функция от состояния базы данных  - Илья Беда, bro.agencyView как чистая функция от состояния базы данных  - Илья Беда, bro.agency
View как чистая функция от состояния базы данных - Илья Беда, bro.agency
 
Web осень 2012 лекция 4
Web осень 2012 лекция 4Web осень 2012 лекция 4
Web осень 2012 лекция 4
 
Web весна 2013 лекция 4
Web весна 2013 лекция 4Web весна 2013 лекция 4
Web весна 2013 лекция 4
 
Selenide puzzlers @ devclub.eu
Selenide puzzlers @ devclub.euSelenide puzzlers @ devclub.eu
Selenide puzzlers @ devclub.eu
 
Превышаем скоросные лимиты с Angular 2
Превышаем скоросные лимиты с Angular 2Превышаем скоросные лимиты с Angular 2
Превышаем скоросные лимиты с Angular 2
 
React со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендерингReact со скоростью света: не совсем обычный серверный рендеринг
React со скоростью света: не совсем обычный серверный рендеринг
 
CSS. Практика
CSS. ПрактикаCSS. Практика
CSS. Практика
 
Survive with OOP
Survive with OOPSurvive with OOP
Survive with OOP
 
Автоматизация функционального тестирования REST API: секреты, тонкости и подв...
Автоматизация функционального тестирования REST API: секреты, тонкости и подв...Автоматизация функционального тестирования REST API: секреты, тонкости и подв...
Автоматизация функционального тестирования REST API: секреты, тонкости и подв...
 
«Автоматизация функционального тестирования REST API: секреты, тонкости и под...
«Автоматизация функционального тестирования REST API: секреты, тонкости и под...«Автоматизация функционального тестирования REST API: секреты, тонкости и под...
«Автоматизация функционального тестирования REST API: секреты, тонкости и под...
 
Автоматизация функционального тестирования REST API
Автоматизация функционального тестирования REST APIАвтоматизация функционального тестирования REST API
Автоматизация функционального тестирования REST API
 
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
Сергей Бережной, Варвара Степанова "Как использовать БЭМ! вне Яндекса"
 
Unit-тестирование скриншотами: преодолеваем звуковой барьер
Unit-тестирование скриншотами: преодолеваем звуковой барьерUnit-тестирование скриншотами: преодолеваем звуковой барьер
Unit-тестирование скриншотами: преодолеваем звуковой барьер
 
Code Style (in russian)
Code Style (in russian)Code Style (in russian)
Code Style (in russian)
 
Производительность в Django
Производительность в DjangoПроизводительность в Django
Производительность в Django
 
Компонентная разработка на Stylus, Jade, Typescript - Леонид Ширманов
Компонентная разработка на Stylus, Jade, Typescript - Леонид ШирмановКомпонентная разработка на Stylus, Jade, Typescript - Леонид Ширманов
Компонентная разработка на Stylus, Jade, Typescript - Леонид Ширманов
 

Plus de Ontico

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...Ontico
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Ontico
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Ontico
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Ontico
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Ontico
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)Ontico
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Ontico
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Ontico
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)Ontico
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)Ontico
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Ontico
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Ontico
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Ontico
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Ontico
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)Ontico
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Ontico
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Ontico
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...Ontico
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Ontico
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Ontico
 

Plus de Ontico (20)

One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
One-cloud — система управления дата-центром в Одноклассниках / Олег Анастасье...
 
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)Масштабируя DNS / Артем Гавриченков (Qrator Labs)
Масштабируя DNS / Артем Гавриченков (Qrator Labs)
 
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
Создание BigData-платформы для ФГУП Почта России / Андрей Бащенко (Luxoft)
 
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
Готовим тестовое окружение, или сколько тестовых инстансов вам нужно / Алекса...
 
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
Новые технологии репликации данных в PostgreSQL / Александр Алексеев (Postgre...
 
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
PostgreSQL Configuration for Humans / Alvaro Hernandez (OnGres)
 
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
Inexpensive Datamasking for MySQL with ProxySQL — Data Anonymization for Deve...
 
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
Опыт разработки модуля межсетевого экранирования для MySQL / Олег Брославский...
 
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
ProxySQL Use Case Scenarios / Alkin Tezuysal (Percona)
 
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)MySQL Replication — Advanced Features / Петр Зайцев (Percona)
MySQL Replication — Advanced Features / Петр Зайцев (Percona)
 
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
Внутренний open-source. Как разрабатывать мобильное приложение большим количе...
 
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
Подробно о том, как Causal Consistency реализовано в MongoDB / Михаил Тюленев...
 
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
Балансировка на скорости проводов. Без ASIC, без ограничений. Решения NFWare ...
 
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
Перехват трафика — мифы и реальность / Евгений Усков (Qrator Labs)
 
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
И тогда наверняка вдруг запляшут облака! / Алексей Сушков (ПЕТЕР-СЕРВИС)
 
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
Как мы заставили Druid работать в Одноклассниках / Юрий Невиницин (OK.RU)
 
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
 
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...100500 способов кэширования в Oracle Database или как достичь максимальной ск...
100500 способов кэширования в Oracle Database или как достичь максимальной ск...
 
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
Apache Ignite Persistence: зачем Persistence для In-Memory, и как он работает...
 
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
Механизмы мониторинга баз данных: взгляд изнутри / Дмитрий Еманов (Firebird P...
 

Радости и гадости регрессионного тестирования вёрстки / Алексей Малейков (HTML Academy)