+ All Categories
Home > Technology > SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

Date post: 21-Jan-2018
Category:
Upload: secon
View: 63 times
Download: 0 times
Share this document with a friend
30
1 Indonesia Philippines Malaysia Thailand Singapore Vietnam Как мы тестируем?
Transcript
Page 1: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

1

Indonesia Philippines Malaysia Thailand Singapore Vietnam

Как мы тестируем?

Page 2: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

• Основана в 2012 году • Крупнейший e-

commerce в 6 странах Юго-Восточной Азии с населением 650 млн человек

• Более 40 млн продуктов • На последней

распродаже, продавали 1,2 млн товаров в день

• С 2016 года входим в Alibaba Group

2

Page 3: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

Как все начиналось

• Первый TechHub во Вьетнаме открыт в 2013 году

• 10 PHP программистов и 3 QA  • Сложные релизы проходили только

по ночам • Типичный стартап....

*на фото один из наших ночных релизов

3

Page 4: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

Команда Lazada сейчас

• 4 TechHubs: Вьетнам, Сингапур, Бангкок, Москва

• Около 600 инженеров • 90% платформы

разрабатывается в Москве • Разработка платформы только на

Golang • Более 130 Golang

программистов, 100 из которых находятся в Москве

• 3 DC, 1500+ серверов, 10к rps на сервер

4

Page 5: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

5

• Что тестировать? • Как тестировать? • Наши помощники: собаки и руки

Краткое содержание

Page 6: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

6

Что тестируем?

Product Service

Product Service

Product Service

Product Service

Product Service

Page 7: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

7

• Предсказуемый процесс • Прозрачные кейсы • Избегать ошибок • Ошибки должны быть дешевыми

Как тестируем?

Page 8: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

8

Предсказуемый процесс

Page 9: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

9

Предсказуемый процесс

• тестовая среда в докере под каждую задачу • автоматический прогон тестов при успешной сборке среды

• автоматическая сборка релиза из QA Passed задач • автоматический прогон тестов после деплоя – результаты в Slack … и пр.

Page 10: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

10

Прозрачные кейсы

Page 11: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

11

Прозрачные кейсы

Page 12: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

12

Прозрачные кейсы

Page 13: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

13

Page 14: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

14

Page 15: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

• https://github.com/fuzzdb-project/fuzzdb • https://github.com/trailofbits/protofuzz • https://pypi.python.org/pypi/fuzzing

15

Избегать ошибок: pip install fuzzing

Fuzzer – Инструмент для тестирование с использование рандомных или не валидных данных

Page 16: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

16

Избегать ошибок: pip install fuzzing

import fuzzing

seed = "This is a body of POST request" number_of_fuzz_variants = 10 fuzz_factor = 5

fuzzed_data = fuzzing.fuzz_string(seed,

number_of_fuzz_variants,

fuzz_factor)

print(fuzzed_data)

Page 17: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

17

Избегать ошибок: SOA tool

• Проверяет сервис на соответствие SOA Code Convention

• Headers, Content-Type, Port requirements, TraceId, Response Codes 400..500

• Консольный инструмент • Ответ в формате json

Page 18: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

18

Избегать ошибок: SOA tool

Page 19: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

19

Избегать ошибок: Degradation tool

Page 20: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

20

Избегать ошибок: анализ зависимостей

Page 21: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

21

Избегать ошибок: анализ зависимостей

Page 22: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

22

Избегать ошибок: анализ зависимостей

Page 23: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

23

• Test coverage tool • Emulate user experience

Избегать ошибок: автотесты

Page 24: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

24

Определить покрытие

Page 25: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

25

Hand helper

Page 26: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

SparkyСлак-бот для организации

релизного процесса

26

Page 27: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

27

Sparky

Page 28: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

28

Sparky

Page 29: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

29

Sparky

Page 30: SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?

30

Questions


Recommended