Холиварофорум

Не все, что говорят на Холиварке — правда!

Вы не вошли.

#1 2014-04-18 11:36:50

Анон

Тема айти

Каталог полезных советов и ссылок, принесенных разными it-анонами, c 1-й по 332-ю страницы:

1. C чего начинать курить айти?
2. Языки программирования
3. Тестировщик
4. Фронт-энд, бэк-энд, вёрстка
5. Data Science
6. Алгоритмы
7. Разное
8. Курсы и ресурсы с задачами

Безблог [Левел-ап] [IT] войти-в-айти с нуля для 3+ анонов


#13351 2025-05-13 03:14:15

Анон

Re: Тема айти

Наверное, мне тоже нужен ментор. Попробовал Дипсик, вообще не понял ажиотажа - тупо прослойка над гуглом как будто. Что к "ИИ" обращаешься, что напрямую в поисковую строку гугла запрос ебашишь - разницы не увидел.

#13352 2025-05-13 08:53:30

Анон

Re: Тема айти

Анон пишет:

Попробовал Дипсик, вообще не понял ажиотажа - тупо прослойка над гуглом как будто. Что к "ИИ" обращаешься, что напрямую в поисковую строку гугла запрос ебашишь - разницы не увидел.

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

#13353 2025-05-13 20:53:16

Анон

Re: Тема айти

Пилю первый пет. Не то чтобы для портфолио, скорее из интереса.
Суть: нужна помощь с подборкой паттерна/структуры данных  :smoke:

Есть класс, который имеет:
1) Статическую переменную (тут ошибка) - индекс коллекции.
2) Принимает название коллекции.
3) Собственно, коллекцию аудио-файлов.
4) Метод переключения туда-сюда адиофайлов в зависимости от принимаемого запроса и названия коллекции (название плейлиста).

Когда запрос изменяет запрашиваемую коллекцию файлов, статическая переменная класса остается актуальной только для первой коллекции.
Т.е. при переключении плейлиста 1 на песню 3, при дальнейшем переключении плейлиста будет играть песня 3 для другой коллекции, хотя логично было бы играть с индекса 0.
Что тут можно сделать? Хотелось бы обойтись без специализированных под плейлист классов.

Как бы вы реализовали фичу?
Язык поддерживает объекты, массивы, хэш-таблицы.

#13354 2025-05-13 20:58:15

Анон

Re: Тема айти

Анон пишет:

Как бы вы реализовали фичу?

Массив пар ключ-значение, ключ - номер плейлиста, значение - с какой песни играть

#13355 2025-05-13 21:08:45

Анон

Re: Тема айти

Анон пишет:
Анон пишет:

Как бы вы реализовали фичу?

Массив пар ключ-значение, ключ - номер плейлиста, значение - с какой песни играть

Мелькало в голове. Это было бы дополнительным полем класса или вместо массива ауди-офайлов сразу такую коллекцию сделать?
Завтра реализую, ибо сегодня уже было употреблено пиво  :comfort:

#13356 2025-05-13 21:52:30

Анон

Re: Тема айти

Аноны-тестировщики, как бы вырешили такую задачу? Сразу оговорюсь, что "устоявшихся практик" на этот счет у себя в компании я не нашел.

Есть большая старая фича с набором текст-кейсов регресса.
К ней с регулярность раз в пару месяцев/пол года приделывают то свистелку то и мигалку. База остается одна, но постоянно меняются и наслаиваются одну на другую мелкие изменения.

По правилам релизной политики на каждое изменение надо писать новые проверяющие его тест-кейсы. И добавлять их в регресс.

Этих культурных слоев уже больше 20. И будут еще.

А еще могут в одночасье "перекрасить кнопочки" и надо менять скрины ожидаемого результата во всех кейсах.

Как бы вы поступили? Каждый раз переписывать базовые кейсы, меняя/добавляя в них шаги и детали? Но бывают ситуации, когда надо поддерживать версионность. Чтоб работало и старая и новая версия в зависимости от предпочтений юзеров.

Базовые кейсы стараться не трогать, а обкладывать их сотней микро-новых кейсов?

Для наглядности: предположим фича это корпоративный мессенджер (база). У него регулярно меняются api (доработка1), местоположение элементов меню (пожелание альфа тестеров), способы отправки вложенных файлов (доработка 2), вот добавили возможность загрузить фото на аватарку, но с поддержкой и старой версии, где аватарка это только инициалы...

Отредактировано (2025-05-13 21:54:43)

#13357 2025-05-13 21:55:15

Анон

Re: Тема айти

По-хорошему методы "играть следующую/предыдущую песню" и "играть выбранный плейлист" должны существовать отдельно, но для предложенной архитектуры можно через условие:

Храни переменные "номер текущего трека" и "текущий плейлист". Метод 4) обнуляет номер трека, если плейлист не совпадает с текущим. А если совпадает, то уменьшает или увеличивает на единицу.

#13358 2025-05-13 21:57:42

Анон

Re: Тема айти

А как эти варианты реализуются? Условно, у вас есть фича тогглы/конфигурации или вы разные ветки прям грузите или еще как?

#13359 2025-05-13 22:01:31

Анон

Re: Тема айти

Анон пишет:

Но бывают ситуации, когда надо поддерживать версионность.

Так и поддерживайте версионность. Для релиза 0.2.3 версия тест-кейсов 0.2.3, которая проверяет всю функциональность. Для релиза 0.3.0 с новой фичей – тесты версии 0.3.0, покрывающие все плюс новую фичу.
Возможно, я не понял твой вопрос до конца. Если надо, чтобы работали и инициалы, и фото в одной версии продукта – добавляете в регресс оба случая. Если в разных – держишь комплект кейсов на каждую версию.

#13360 2025-05-13 22:06:37

Анон

Re: Тема айти

Анон пишет:

А как эти варианты реализуются? Условно, у вас есть фича тогглы/конфигурации

Если Это это мне вопрос, то и так и так. Приоритетно - конфигурациями.

И да, на каждый "слой пирога" есть своя документация аналитики (которую пишут разные люди, это отдельная пэсня) . Т.е. вроде как я в любой момент должен быть готов предъявить набор тест-кейсов для каждой конкретной аналитики. А если я уже переписал кейсы под новый "слой"...

Но если создавать папки с кейсами "Мессенджер, версия 48, в редакции от 2025-05-13" это будут сотни практически одинаковых кейсов и хаос.

Отредактировано (2025-05-13 22:17:48)

#13361 2025-05-13 22:12:22

Анон

Re: Тема айти

Анон пишет:

Это это мне вопрос, то и так и так. Приоритетно - конфигурациями.

Тогда запрашивай конфигурацию с бэка и запускай ту версию теста, что тебе нужна. Внутри длинного теста можно сделать развилки и тд.
Но вообще я очень рекомендую максимально сдвинуть тесты влево: сайпрасс, тест контейнеры с мок сервером. Это позволит держать более компактный е2е сьют и гонять логику внутри приложения на медже.
Папки это в любом случае плохая идея, если хочется пометить тесты версиями/функционалом и у вас фреймворк поддерживает (testNG поддерживает), я бы использовала группы.

#13362 2025-05-13 22:17:06

Анон

Re: Тема айти

Мне казалось, что анон про ручные тесты, а не про авто  :think:

#13363 2025-05-13 22:17:23

Анон

Re: Тема айти

Анон пишет:

Для релиза 0.3.0 с новой фичей – тесты версии 0.3.0, покрывающие все плюс новую фичу

Т.е. это как бы такая политика, что если в фиче "Мессенджер" что-то добавили - создаю новую папку 0.3.0, копирую туда всю предыдущую верею 0.2.9 и вношу изменения. А в регресс обе папки, так?
А если при этом из 10 кейсов изменения будут только в двух - все равно в регресс 10 + 10? Или 10+2.
Сейчас у меня на практике вариант 10+2, но это грозится вылиться в неконтролируемый хаос, т.к. надо держать в уме какой кейс изменился а какой нет.


Еще бывает такая вещь:
увидев, что в модуле "Мессенджер" появились прикольные аватарки с фоточками, такую же фичу попросили добавить в модуль "Статьи сотрудников". База (аватарки) одна. Но модули разные. Еще одно деление почкованием на папку "Модуль Мессенджер + аватарки" и "Модуль Статьи + аватарки"?
Или "всё про аватарки держим в одной папке и меняем только там. А когда надо тестить "Модуль Мессенджер + аватарки" и "Модуль Статьи + аватарки" пытается как-то сделать отсылку "см в папке "Аватарки"

#13364 2025-05-13 22:20:05

Анон

Re: Тема айти

Анон пишет:

Мне казалось, что анон про ручные тесты, а не про авто

Да, ручное. Тест дизайн-с.


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

Отредактировано (2025-05-13 22:22:29)

#13365 2025-05-13 22:23:40

Анон

Re: Тема айти

Нууууу… ручные тоже можно попробовать тэгать

#13366 2025-05-13 22:28:43

Анон

Re: Тема айти

Анон пишет:

Как бы вы поступили? Каждый раз переписывать базовые кейсы, меняя/добавляя в них шаги и детали? Но бывают ситуации, когда надо поддерживать версионность

У меня все зависит от контекста, т.е. я сама решаю, переписать старый или написать новый. Но если в кейсе отличается один-два шага, то всё-таки чаще всего дописываю это в старый. Но у нас такие кейсы не идут в регресс, а в твоём случае получается, что регресс будет сильно разрастаться  :think:
У вас вглядит так, что очень хочется все это покрыть авотестами  ;D

Отредактировано (2025-05-13 22:29:55)

#13367 2025-05-13 22:47:28

Анон

Re: Тема айти

Анон пишет:

Да, ручное. Тест дизайн-с.

Ручные тесты тоже можно версионировать. Анон четыре года писал функциональные требования к системам, проходившим ручное тестирование. Храните все в гите: и документацию, и тест-кейсы. Это сильно упрощает жизнь.

#13368 2025-05-13 22:51:36

Анон

Re: Тема айти

Анон пишет:

Храните все в гите: и документацию, и тест-кейсы.

А почему именно в гите? Он мне никогда не казался хорошей tms  =D
Версию (тегом) можно и в условном аллюре проставить

#13369 2025-05-13 22:56:09

Анон

Re: Тема айти

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

#13370 2025-05-13 23:29:11

Анон

Re: Тема айти

Анон пишет:

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

Я сегодня час за Дипсиком код переделывал. В процессе проклял все. Хуй знает, чем пользуются те люди, которые говорят, что нейросети заменят джунов)))0)
Ну может платные нейросети за 200 долларов в месяц и делают что-то. Но мне показалось, что "нейросети заменят джунов" это какой-то всемирный псиоп по убеждению вкатунов идти в сварщики и мастера ногтевого сервиса.

#13371 2025-05-13 23:33:35

Анон

Re: Тема айти

Анон пишет:

Ну может платные нейросети за 200 долларов в месяц и делают что-то

Вполне может быть) сегодня как раз с коллегой смотрели его код, и я у него спрашиваю, мол, а чего ты А сделал, а не Б? Он удивился, говорит, думал, что только через А можно. Не, говорю, я в прошлом проекте делал через Б, так будет проще, давай расскажу, мне чат жпт это решение подогнал. И он такой - да блин, я тоже чат жпт спрашивал, почему он мне не подогнал это решение?! Оказалось, что у него бесплатный чат жпт, а у меня - за 20 баксов  =D

#13372 2025-05-13 23:39:20

Анон

Re: Тема айти

Анон пишет:

Дипсиком

Дипсик очень тупорыл, самоуверен и глючен, имхо

#13373 2025-05-14 00:21:44

Анон

Re: Тема айти

Анон пишет:

Я сегодня час за Дипсиком код переделывал. В процессе проклял все. Хуй знает, чем пользуются те люди, которые говорят, что нейросети заменят джунов)))0)
Ну может платные нейросети за 200 долларов в месяц и делают что-то. Но мне показалось, что "нейросети заменят джунов" это какой-то всемирный псиоп по убеждению вкатунов идти в сварщики и мастера ногтевого сервиса.

От языка сильно зависит, на С++ они такую дичь пишут, что ой, а Dart+Flutter за милую душу. У меня Клод модель в курсоре и Copilot в VS Code, второй мне нравится больше. Чат и Дипсик для кода я не оценила.

#13374 2025-05-14 11:47:50

Анон

Re: Тема айти

Дипсик разве что стажёра заменит (за ним тоже час переделывать), для джуна хотя бы клод нужен.

#13375 2025-05-14 12:32:53

Анон

Re: Тема айти

Анон пишет:

Я сегодня час за Дипсиком код переделывал. В процессе проклял все. Хуй знает, чем пользуются те люди, которые говорят, что нейросети заменят джунов)))0)

Не, никого они не заменят. Это рабочий инструмент, он ускоряет разработчика в несколько раз. Не надо ему говорить «сделай задачу», надо давать конкретный код и говорить «допиши вот так-то и так-то чтобы работало». То есть ты бы писал код полчаса, а с ии пять минут.

Подвал форума

Основано на FluxBB, с модификациями Visman
Доработано специально для Холиварофорума