Chaos Monkey 2.0
http://techblog.netflix.com/2016/10/netflix-chaos-monkey-upgraded.html
- Они не заставляют придерживаться каким-то шаблонам архитектуры, вместо этого используют Chaos Monkey
- ChaosMonkey-2.0 интегрирован с Spinnaker (CD система)
- Указываешь флаги для ChaosMonkey - и сам Spinnaker уже убивает все, и знает, что где находится.
- Несколько облачных провайдеров(как и spinnaker)
- Периодически, Chaos Monkey убивает и себя! :)
- Ранее было много разных вариантов проверок (birn CPU, take disks offline, etc), теперь только убивание
Testing Random, Valid SQL in CockroachDB
https://www.cockroachlabs.com/blog/testing-random-valid-sql-in-cockroachdb/
- Задача: протестировать сервер на неожидаемые задачи.
- Fuzzy тестирование не подошло (слишком много невалидных запросов)
- Есть несколько генераторов валидных SQL, но они слишком широкие. И пришлось бы их вручную сокращать до текущей функциональности CockroachDB
- ссылка на статью - генерация изображений из YACC грамматики
- Имея YACC грамматику, они создают AST
- Берешь случайный top-level элемент, и рекурсивно опускаешься в нем сквозь все не-терминальные символы, заменяя их случайными из списка.
- grant_stmt -> элементы на замену “privileges”, “privilege_target”, “grantee_list”
- Результат:
- более 10 уникальных паник (=> рефакторинг движка => еще ошибки => переделка),
- запуск большого числа нашел race conditions
- расширение грамматики => автоматически новые тесты
- стали запускать каждую ночь
Conversational Speech Recognition
https://arxiv.org/abs/1610.05256
- Swiitchboard (двое незнакомых - обсуждают заданную им тему)
- CallHome (друзья и семья говорят по телефону)