пятница, 29 января 2021 г.

Поздравляем Наталью с первой работой!

У нас сегодня есть история успеха выпускницы школы Натальи:


*************************************************

А у меня радость, спешу поделиться, и вдохновить.

Сама не знаю  как это получилось, учусь с ноября, сертификат  получила 21 января. Откликнулась на вакансию в ночи. Утром 22 прислали тестовое,  сдала тестовое (установить по их и на функцию чек-листы накидать, я нашла документацию, и Остапа понесло... ) — тут же собес. А сегодня позвали, с 1 февраля выхожу.

Я в Москве правда. Но с моей прошлой специальностью все так легко не было все равно. 

До курсов я юристом была, опыт из технического — только в буровых установках и вертлюгах для них)) Но перед НГ уволилась, решила, что хватит тратить жизнь не на то ¯\_(ツ)_/¯

Три имени квадрата и пересечение классов эквивалентности

В книге Юлии Гиппенрейтер «Как учиться с интересом» я нашла такую историю о занятиях Александра Звонкина с детьми:


Обсуждаются сделанные из картона фигуры: квадрат, прямоугольник и неправильный четырехугольник. Мы детально обсуждаем их свойства. Прежде всего, у всех фигурок — по четыре угла. Значит, каждую из них мы можем назвать четырехугольником. Итого: у нас три четырехугольника. 


При этом два из них отличаются тем, что у них все углы прямые. За это их называют прямоугольниками. Один из двух прямоугольников особый: у него все стороны одинакового размера. Его называют квадратом.

У квадрата как бы три имени: его можно назвать и квадратом, и прямоугольником, и четырехугольником — и все будет правильно.

Моя информация встречается не без сопротивления. Дети упорно стремятся мыслить в понятиях непересекающихся классов.

воскресенье, 17 января 2021 г.

Unit, API и GUI тесты — чем отличаются

Давайте рассмотрим стандартную пирамиду автоматизации

Если говорить о программе:

  • UI-тесты — честные тесты, «как это делал бы пользователь» (они же GUI, graphical user interface)
  • API-тесты — опускаемся на уровень ниже, выкидывая лишнее.
  • Unit-тесты — тесты на отдельную функцию

Начинаем писать тесты снизу, потому что сначала логичнее проверить небольшой участок кода, а потом усложнять:

  • Unit — тесты на отдельную мелкую функцию (посчитать одну ячейку отчета)
  • API — тесты на конкретный функционал, который состоит из отдельных функций (загрузить весь отчет)
  • GUI — честный тест через графический интерфейс, «как это делал бы пользователь» (открыть браузер, войти в систему, перейти в отчеты, и наконец вызвать отчет).

В качестве аналогии давайте рассмотрим создание платья. Вот я заказала себе платье по фигуре. Мастер выслушает мои пожелания, снимет мерки, а потом приступит за работу. Сначала он сделает выкройку и раскроит ткань. Если проверять каждую деталь, сравнивая с выкройкой — это будут юнит-тесты.


Что такое транзакция

Транзакция — это набор операций по работе с базой данных (БД), объединенных в одну атомарную пачку.

(Предполагается, что вы знаете, что такое БД. Но чуть позже тут будет ссылка на статью «что это такое»)

Транзакционные базы данных (базы, работающие через транзакции) выполняют требования ACID, которые обеспечивают безопасность данных. В том числе финансовых данных =) Поэтому разработчики их и выбирают.

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



Что такое транзакция


Транзакция — это архив для запросов к базе. Он защищает ваши данные благодаря принципу «всё, или ничего».

Представьте, что вы решили послать другу 10 файликов в мессенджере. Какие есть варианты:
  1. Кинуть каждый файлик отдельно.
  2. Сложить их в архив и отправить архив.
Вроде бы разницы особой нет. Но что, если что-то пойдет не так? Соединение оборвется на середине, сервер уйдет в ребут или просто выдаст ошибку...

В первом случае ваш друг получит 9 файлов, но не получит один.


среда, 13 января 2021 г.

SQLite на практике (курс от Антона Жиянова)


Мой коллега Антон Жиянов сделал курс по практическому применению sql в работе, очень рекомендую — https://antonz.ru/sqlite-course/.

Курс бессрочный, оплатил и делаешь хоть полгода! Ну тут кому как, кого-то мотивирует куча времени, кого-то расхолаживает )))) 

Антон отлично пишет, это можно проверить по его блогу. Прекрасные статьи, написанные просто и понятно! А еще Антон хорошо объясняет, далекие 6 лет назад именно он обучал меня на проекте )))

Так что лично я вписалась, чего и вам советую. Практики много не бывает! Wink ;)


вторник, 12 января 2021 г.

Что такое автоматизация

Автоматизация — это написание автоматических тестов. Допустим, мы тестируем регистрацию на сайте ХХХ (подойдет практически любой сайт). Как мы это делаем?

  1. Открыли браузер
  2. Открыли нужный сайт
  3. Нажали на кнопку «Регистрация»
  4. Ввели тестовые данные
  5. Нажали «Зарегистрироваться»
  6. Убедились, что регистрация успешна — например, что появилась кнопка с личным кабинетом, а внутри ваше имя и емейл.

Эту процедуру надо повторить N раз. Разные имена, пароли, емейлы... Если вы все это делаете сами — это ручное тестирование. Автоматизация — когда это делается автоматически роботом. Один раз написали скрипт, а дальше он сам все проверяет.


Конечно, не все так просто — иначе ручное тестирование было бы не нужно. Робот — довольно тупое существо. Ему что скажешь делать, то он делать и будет. А значит, для того, чтобы попивать кофеек, нужно:

  1. Продумать тесты для автоматизации.
  2. Расписать их по шагам. ОЧЕНЬ подробно. Вот многие не любят тест-кейсы за их очевидность «какую кнопочку нажать», а тут именно так и надо.
  3. Написать скрипт, который будет этот тест выполнять.
  4. Поддерживать автотесты.

Разберемся с каждым пунктом по отдельности в следующих статьях :)

PS — это выдержка из моей книги для начинающих тестировщиков, написана в помощь студентам моей школы для тестировщиков

понедельник, 11 января 2021 г.

Итоги года — 2020 (короновирусного)


С новым годом!

Продолжу свою традицию подводить итоги года. Правда, это фактически агрегация моих постов про 12 недель. И все же. Приятно оглянуться назад и посмотреть, сколько всего ты сделал!

И, конечно, начать строить новые планы Wink ;)

Мои прошлые итоги: 2016, 2017, 2018, 2019.



Результаты кратко


Я все ещё нахожусь в декретном отпуске по уходу за ребенком. То есть сижу дома. Работаю, конечно — курсами занимаюсь, книгу пишу... Но буквально по паре часов в день обычно получается. Плюс-минус. 

Иногда и по 5 часов работаю — парочку с утра, и еще 3 вечером. Но обычно это значит, что я засиживаюсь за полночь, а такое стараюсь делать редко )) А бывает, вообще почти не работаю — то уборка, то ремонт, то заболели...

В этом году еще и короновирус был! Сначала в марте сидели дома месяца полтора. Потом в конце года сами заболели, и снова месяц дома... А еще мы начали ходить в садик, пока на 3 часа, но уже стали болеть. То есть неделю я работаю, неделю мы сидим болеем. Но ничего, подо всё приспособились! И в этом году я многое успела!

Я дописала книгу и написала новую с нуля!

Я закончила курс по автоматизации в постмане и запустила его.

Я сделала большой апдейт в школе для начинающих тестировщиков.

Я сделала операцию, восстановив зрение

А еще я написала много полезных статей для студентов, в том числе на Хабр. Сделала еще больше примеров и кучу других улучшений в своих курсах. И училась сама! Прошла курс по докеру... В общем, резюмируем итоги 4 циклов 12 недель:

  1. Закончила основную книгу, юху-ху! В первом варианте, но все же
  2. Написала вторую книгу с нуля! «Сложные ИТ-термины на простом языке»
  3. Посты из книги, пополняя бесплатный онлайн-вариант —  37 штук ٩(◕‿◕。)۶
  4. Нашла несколько художников в помощь моей Вике
  5. Сделали более 300 картинок к книгам и курсам
  6. Закончила курс по автоматизации в постмане — 3 цикла доделывала и запускала!
  7. Сделала большое обновление в школе для новичков — фактически с нуля перезаписала 2 урока и добавила доп материалов!
  8. Улучшалки по текущим курсам — они небольшие, но набирается прилично! 
    1. Улучшалки по ШНАТ — 114 штук \(〇_o)/
    2. Постман —  53 штуки
    3. Рест —  17 штук
    4. Логи — 5 штук
    5. Локализация — 5 штук
  9. Нашла помощников на курс по автоматизации в постмане! ⊂( ̄▽ ̄)⊃
  10. Нашла помощников на ШНАТ
  11. Пополнила раздел «работы студентов» — 25 штук
  12. Пополнила свой youtube-канал — 29 штук! 
  13. Создала плейлисты на ютубе, под ШНАТ, Folks, REST, API и Postman
  14. Выложила наконец в общий доступ свой магазинчик!
  15. Статьи на Хабр — 7 штук
  16. Testbase — 33 улучшалки
  17. Folks — 11 улучшалок
  18. Users — 3 улучшалки
  19. Прочитала 21 книгу 
  20. Прошла курс по Docker
  21. Инструменты 12 недель — продолжаю вести файлик DONE, это все еще очень круто
  22. Ходила в кино — в том числе в 4дх!
  23. Начали снова играть в настолочки )))
  24. Ездила с Владом в гости к разным друзьям
  25. Ездили на страусиную ферму, устраивали шашлыки
  26. Ездила в СПА, ходила на массаж...
  27. Купила себе пару новых колечек и сережек ^_^
  28. У нас сбежал кот (((
  29. Я сделала операцию, восстановив зрение ٩(◕‿◕。)۶
  30. Переболели короновирусом
  31. Ездила на узи 2 раза
  32. Занимались ремонтом — выбрали строителей, почти закончили черновой + чистовой
  33. Устроили новогоднюю фотосессию!


Результаты подробнее