Posts tagged with #microblog

Page 11 of 22

← Back to first page

2025-01-11-22-55-57

Еще о автоматизации.
Я заметил, что существует такая лакуна в понимании тестового покрытия: юнит тесты считаются автоматизацией и фигурируют в этой пирамиде тестирования, но чаще всего являются ответственностью разработчиков.
Тестовая елка{:.clickableimg}
Более того, часто юнит тесты живут с кодом приложения(ну это понятно), а код автоматизации лежит где-то в другом репозитории, так что он даже физически где-то в другом месте(это не плохо само по себе, просто пример). А в отчетах и метриках автофреймворка(у вас же они есть, да?) о юнит тестах и покрытии в общем-то ничего нет.

2025-01-11-22-44-24

Оказывается в спанах в C# нужно еще разбираться и разбираться.
Мне в повседневной работе это вообще не нужно, но интересно как это работает.
Вообще, в оптимизации тестов по скорости выполнения(это одна часть моей работы) самые большие гейны в скорости прогона тестов приходят из параллелизации(тут ясно) и следования тестовой пирамиде.
Если вы оптимизируете тесты по скорости выполнения как-то иначе, то скорее всего это трата времени и смотрите вы не туда. Тут стоить заметить, я говорю о довольно больших фреймворках автоматизации с количеством тестов >100(но это цифра из головы, зависит от типа тестов) и это не о юнит тестах(с ними уже больше смысла биться за скорость выполнения).
А причин почему тестовая пирамида может быть сломана уйма, но вот одна. У вас есть множество автоматизированных тестовых сценариев, которые тестируют функциональность внахлест(происходит тестирование одной функциональности по нескольку раз), это очень частый случай, но предпосылки могут быть разными. Случиться это может, например, из-за непонимания домена или архитектуры приложения. Человек может не понимать, что проверяя функциональность(или часть системы) `А` он еще проверяет функциональность `Б`, которая может использоваться неявно или использоваться в каких-то эдж кейсах и тестировать явно ее не нужно, но на нее тоже написаны тесты. Или функциональности `А` сначала не было, а была только `Б` и тесты на неё. Или несколько команд использующих один фреймворк автоматизации, но работающих над разными частями системы могут создавать тесты для того, что возможно уже покрыто другой командой, и это уже проблема коммуникации и трейсабилити(блять, смотря какой фабрик, traceability, как это по-русски?), которая решается не оптимизациями в коде и может быть предотвращена сбором и оценкой соответствующих метрик.

Вообще тут очень много оговорок и нужно писать статью.

А про спаны интересно, да, я просто видео хотел запостить.

2025-01-06-15-03-46

Visual Studio обновилась и теперь там показывается плашка если есть уязвимости в пакетах(транзитивные тоже), круто.
visual studio notification{:.clickableimg}

2025-01-06-13-05-24

Никто меня не понимает =((
Шучу, почему-то меня никто не понимает когда я говорю, что спотифай работает хуево на всех платформах. Но я как инженер по качеству с почти 9ю годами опыта это говорю, может я деформирован. Ютуб музыка и яндекс музыка работают лучше. Ну, допустим, вас устраивает как он работает, вот как платформа относится к артистам.
Вот что говорит глава спотифай "стоимость создания музыки близка к нулю"(сурс), а еще он "богаче всех когда-либо существовавших музыкантов"(сурс, сурс), а выплаты музыкантам упали с на 68% с 2011 года(информация из видео), еще очень много негативных инфоповодв, но я не хочу оформлять ссылки больше. Не платите за это говно. Закинуть 5 долларов артисту напрямую это как если бы послушать ~1500 раз песню на спотифай.

2025-01-04-22-19-25

Это равка, но я ее не обрабатывал, только проявил. Все равно только хуже сделаю =)
Winter walk{:.clickableimg}

2025-01-04-21-17-54

Я делаю рисовалку пиксельарта простую чтобы встроить сюда в блог(потому что это круто).
Вот тест. Одну нарисовал я, а другую Галима. Не скажу чья моя.
pixel art{:.clickableimg}
Прикол в том, что эта штука написана на C++... Cmake одновременно и круто\магия и пипец, он автоматически ищет установленные компиляторы для тебя, понимает какой язык программирования нужно собирать, еще может забирать КОД с гита и даже его распаковывать, я подразумеваю все просто один раз что-то настраивают, а потом копипастят в новые проекты, но это я может новичок, но запомнить это нереально будто бы.

2025-01-04-21-14-12

Спросил у Gemini как погромировать. А он мне вот:
google ai{:.clickableimg}
✨✨✨
Я потом Why? и он напечатал ответ = )

2024-12-26-14-42-27

Гулял. Пока не понял как обрабатывать изображения красиво и в голову не приходит переключиться на равку пока ходишь, так что это жпег кропнутый через виндовую тулу(она ужасная). Просто оправдываюсь почему она так зажарено выглядит.
tennis field{:.clickableimg}

2024-12-25-13-51-30

Недавно писал, что slicing не работает на стрингах в C#, я был не прав и это не дает мне покоя. Я перепутал слайсинг и спаны.
Если использовать Span, то это будет выглядеть так с стрингами и арреями:
``` c#
Span subText = stringText.AsSpan(0, 5); // Span с индекса 0 to 4
Span subArray = numbersArray.AsSpan(2, 3); // Span с индекса 2 to 4
```
Span существует чтобы не был лишних аллокаций.

Слайсингом называют вообще другое. Это выглядит как что-то такое:
```c#
array[^3..] // мы берем рендж(как в питоне), это называется слайсинг
array[^3] // Тут берем 1 элемент с такимж синтаксисом примерно, это, как я понял, называется индексинг
```
Еще на тему слайсинга можно много чего сказать, но вот тут уже сказано.

2024-12-22-14-31-07

Я до сих пор скачиваю всю музыку которая мне нравится. В том числе с Soulseek. Это как торренты, только ты качаешь от одного человека за раз. Есть множество клиентов под разные платформы, я скачивал очередной альбом вот и наткнулся на кусок крутого интернета. Когда скачиваешь что-то от кого-то через Soluseek можно настроить автоматическое сообщение, я получил такое
cock.institute invatation{:.clickableimg}
Я поржал с названия и открыл, вот урл
И увидел там такую красоту
cock.institute site{:.clickableimg}
Скачивал я, кстати, вот это



Это вселенная или как, но там даже эффект снега сейчас как в этом блоге! И поскольку это кусок старого интернета с чатом без регистрации пришлось проскроллить чат чтобы на скрин не попали плохие сообщения)