LINUX.ORG.RU

Зачем вообще нужно тестирование

 ,


0

1

Код:

def readfile_reverse(inf, ouf):
    for line in inf.readlines()[::-1]:
        ouf.write(line)

Тест:

import pytest
import sys
from os import getcwd, path
from quiz244 import readfile_reverse

@pytest.fixture
def file_quiz244_in():
    with open(path.join(getcwd(), "test", ".data", "quiz244_in.txt")) as tinf:
        yield tinf

@pytest.fixture
def file_quiz244_out():
    with open(path.join(getcwd(), "test", ".data", "quiz244_out.txt")) as touf:
        yield touf

def test_readfile_reverse(capsys, file_quiz244_in, file_quiz244_out):
    readfile_reverse(file_quiz244_in, sys.stdout)
    capture = capsys.readouterr()
    assert("".join(file_quiz244_out.readlines()) == capture.out)

Пример надуманный, конечно. Но... кому вообще нужно модульное тестирование? Да и тестировщики в частности... Зачем они? Программист лучше знает, что у него с приложением не так, если делал проект с нуля.

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

Harald ★★★★★ ()

Да и тестировщики в частности... Зачем они? Программист лучше знает, что у него с приложением не так, если делал проект с нуля.

Пока будут такие дятлы, я на масло с икрой всегда заработаю.

Этапы развития программиста

0. Мой код идеален
1. Это что за дерьмо?
2. Мой код дерьмо
3. Ваш код дерьмо
4. Любой код дерьмо
5. Жизнь дерьмо
6. Выступление на конференции "Как структурировать дерьмо, что бы оно не растекалось"
Lordwind ★★★★★ ()
Последнее исправление: Lordwind (всего исправлений: 1)

Страдания говнокодера.

Тесты - это один из способов описывать контракт.

Тесты - это страховка при рефакторинге, что ты ничего не зацепил по пути.

А ещё иногда это единственный доступный способ добраться до кода, что ты написал и проверить его.

nihirash ★★★ ()
Ответ на: комментарий от nihirash

Описать контракт можно другими способами: конечные автоматы, пруф-ассистент, можно на обоях рисовать диаграммы состояний в конце концов.

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

Пофигу, не написал - значит не нужно. Пользователь проверит.

gentoo1love ()
Ответ на: комментарий от gentoo1love

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

Lordwind ★★★★★ ()
Ответ на: комментарий от Lordwind

Только не плачь громко, когда получишь фидбек от заказчика и юзеров.

Обычно я громко смеюсь с их фидбяков. Там граммитические ошибки и красные восклицательные знаки (вот такие `!!!!111!!!1`, красным). Смысл вообще рефлексировать по их поводу. Не нравится - free to fork.

gentoo1love ()
Ответ на: комментарий от gentoo1love

Ясно.

Ничего серьезнее бложика ты не писал.

Да и кто мешает переписать код, если он покрыт тестами.

Если ты не мудак, и не пишешь тесты под реализацию

nihirash ★★★ ()
Ответ на: комментарий от gentoo1love

Пользователь проверит

Это если проект охренительных масштабов, либо навязанный рабочими стандартами, от которых нельзя/сложно отказаться. Типа гугла. Работа в таком месте уже своего рода выигрыш в лотерею.

Lordwind ★★★★★ ()
Ответ на: комментарий от nihirash

Ничего серьезнее бложика ты не писал.

Я и бложика не писал. Зачем мне это.

Да и кто мешает переписать код, если он покрыт тестами.

В 2 раза больше работы. Я лучше пойду бухать абсент.

Если ты не мудак, и не пишешь тесты под реализацию

Чувствую себя мудаком, когда пишу тесты под реализацию...

gentoo1love ()
Ответ на: комментарий от gentoo1love

Не нравится - free to fork

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

Lordwind ★★★★★ ()
Ответ на: комментарий от gentoo1love

красные восклицательные знаки (вот такие `!!!!111!!!1`, красным).

Прикольные у тебя отзывы ))

Говнософт в полный рост

Rastafarra ★★★ ()
Ответ на: комментарий от Lordwind

Это если проект охренительных масштабов, либо навязанный рабочими стандартами

Видели мы такие проекты... 10000 менеджеров, и никто в итоге не знает, как оно должно работать. Потому что все эти люди делают проект без души, просто >>«разработкой деньги зарабатывают» (с).

gentoo1love ()
Ответ на: комментарий от gentoo1love

никто в итоге не знает, как оно должно работать

Через год и смену поколения команды такой фокус проктически с любым проектом происходит, специфика...

А тут раз и автотесты. И хорошо.

Rastafarra ★★★ ()
Ответ на: комментарий от Rastafarra

Прикольные у тебя отзывы

Мой фидбяк тоже прикольный. Просто пишу им всем в ответ «PNX».

gentoo1love ()
Ответ на: комментарий от Rastafarra

Через год и смену поколения команды

Все равно через 3 года переписывать на Rust. Зачем ждать и поддерживать легаси. Можно даже не ждать смены команды, просто переписать все на Rust, кто не захочет, тех уволить и все.

gentoo1love ()
Ответ на: комментарий от gentoo1love

Смелый.

Глупый, неопытный, но смелый ))

Устроиться на работу --- расскажешь как оно там.

Rastafarra ★★★ ()
Ответ на: комментарий от Rastafarra

Устроиться на работу --- расскажешь как оно там.

Когда я уволюсь с работы я буду самым счастливым человеком в мире, потому что там чет не оч.

gentoo1love ()
Ответ на: комментарий от gentoo1love

Видели мы такие проекты... 10000 менеджеров

Я и бложика не писал. Зачем мне это.

Теоретики такие смищные.

Lordwind ★★★★★ ()
Ответ на: комментарий от gentoo1love

Когда я уволюсь с работы я буду самым счастливым человеком в мире

У меня такие счастливчики все мусорные контейнеры разрыли

Lordwind ★★★★★ ()
Ответ на: комментарий от Lordwind

Я обычно их поджигаю. Контейнеры в смысле, а не счастливчиков.

gentoo1love ()

Не нужно. Начни угорать по микросервисам. Там и до яп не будет никакого дела.

crutch_master ★★★★★ ()

Зачем вообще нужно тестирование

Глупый вопрос. Вот ты жену перед свадьбой тестировал, или сразу в загс пошел?

Bobby_ ()
Ответ на: комментарий от Bobby_

ты жену перед свадьбой тестировал

Не тестировал ничьих жен. Все врут.

Начни угорать по микросервисам.

Если ты советуешь, то, наверное, дельная вещь. О чем там в двух словах?

gentoo1love ()
Ответ на: комментарий от gentoo1love

про микросервисы это не я

А насчет жены, тестировать надо обязательно. Вдруг она храпит как лошадь или орет во сне? Или что еще хуже готовить не умеет и не девственница? А ты узнаешь про это уже после свадьбы. Как ты эти баги фиксить будешь?

Bobby_ ()
Ответ на: комментарий от gentoo1love

Все равно через 3 года переписывать на Rust.

Может быть, всё-таки, лучше к наркологу для начала? Или боишься, что машину отберут? Можно ведь к платному.

pacify ★★★★★ ()
Ответ на: комментарий от Bobby_

храпит, готовить не умеет и не девственница? Как ты эти баги фиксить будешь?

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

gentoo1love ()
Ответ на: комментарий от gentoo1love

девственность можно вернуть хирургическим путем

Зачем?

Bobby_ ()
Ответ на: комментарий от gentoo1love

Пользователь проверит.

Когда интернет-магазин пришлет другой товар, ты будешь тем пользователем. Когда расчет ЖКХшных услуг будет выше, ты будешь тем пользователем. Когда твой банковский счет станет отрицательным, ты будешь тем пользователем.

Лично я рекомендую сменить род деятельности.

dvetutnev ()
Ответ на: комментарий от dvetutnev

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

gentoo1love ()
Ответ на: комментарий от gentoo1love

Ахаха. Кстати спасибо тебе. Я понял зачем нужно тестирование. Чтобы кодерам удобно было свалить вину на QA, они мог пропустили, недоглядели. Ахаха. Цирк.

gentoo1love ()
Ответ на: комментарий от Harald

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

Они и так уже вместо тестеров, см ШинОС10 с критическими багами, сэкономим миллион баксов и передадим акционерам, очень критические баги ???, только выиграли!

FiXer ★★☆☆☆ ()
Последнее исправление: FiXer (всего исправлений: 1)
Ответ на: комментарий от gentoo1love

Они падают по одному за раз, а если пускать под сисьмуде с Restart=always, то вообще норм.

WitcherGeralt ★★ ()

Дай угадаю, твой заказчик --- школьная учительница информатики?

buddhist ★★★★★ ()

поддержу тс. иногда нужно скорее написать софтину, а не писать тесты и тесты для тестов

PexuOne ()

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

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

Программист лучше знает, что у него с приложением не так, если делал проект с нуля

Вот только программист не всегда делал проект с нуля и не обязательно понимает что делает.

WitcherGeralt ★★ ()

для тех кто сложнее тетриса ничего не писал.

билд не собирается
собирается и не ставится
ставится и не запускается
запускается и не настраивается
настраивается глючит и падает

..

ежедневные будни

barberry ★★ ()

Но... кому вообще нужно модульное тестирование? Да и тестировщики в частности... Зачем они? Программист лучше знает

тестирование - это прямой способ заказчика (который может начинаться с твоего руководителя) убедится что созданный программистом код выполняет ВСЁ то что записано в ТЗ, с заданным качеством. Модульное тестирование нужно прежде всего самому разработчику и руководителю проекта.

oblfan ()
Ответ на: комментарий от barberry

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

gentoo1love ()

автор тролль, покусанный тестировщиками. ну да ну да, разработчик - творец, остальные мещане, не понимающие его божественных замыслов. интересующимся сабжем могу посоветовать почитать istqb foundation level.

chenbr0 ()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)