Увлекающимся тестированием
От: vaa  
Дата: 10.03.22 02:58
Оценка: 3 (1) +1

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


© https://oberoncore.ru/library/systematic_programming
☭ ✊ В мире нет ничего, кроме движущейся материи.
Re: Дейкстра был ГОЛОВА!
От: LaptevVV Россия  
Дата: 10.03.22 03:11
Оценка: +1
vaa>

vaa>Экспериментальное тестирование программ
vaa>может служить для доказательства наличия ошибок,
vaa>но никогда не докажет их отсутствия.

На мой взгляд — самый выдающийся программист всех времен.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: Увлекающимся тестированием
От: Michael7 Россия  
Дата: 10.03.22 06:51
Оценка: 1 (1)
Здравствуйте, vaa, Вы писали:


vaa>

vaa>Экспериментальное тестирование программ
vaa>может служить для доказательства наличия ошибок,
vaa>но никогда не докажет их отсутствия.


Это все здорово, но практика такова, что доказательное программирование возможно только в очень редких ситуациях.
Re: Увлекающимся тестированием
От: ути-пути Россия  
Дата: 11.03.22 16:11
Оценка: +1
Здравствуйте, vaa, Вы писали:

vaa>

vaa>Экспериментальное тестирование программ
vaa>может служить для доказательства наличия ошибок,
vaa>но никогда не докажет их отсутствия.


Верное и бесполезное утверждение.
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re[2]: Увлекающимся тестированием
От: IncremenTop  
Дата: 11.03.22 16:34
Оценка: :)
Здравствуйте, ути-пути, Вы писали:

УП>Верное и бесполезное утверждение.


Чего еще ожидать от математиков.
Re[2]: Увлекающимся тестированием
От: SkyDance Земля  
Дата: 12.03.22 04:40
Оценка: +1
M>Это все здорово, но практика такова, что доказательное программирование возможно только в очень редких ситуациях.

Есть большое количество formally verified software. Есть формальная верификация моделей.
Это все не так уж сложно, если разобраться. В конце концов, есть же просто мощные способы тестирования, которые не являются формальным доказательством, но проведены на существенную глубину цепочек смены состояний.
Re[3]: Увлекающимся тестированием
От: Sharowarsheg  
Дата: 12.03.22 04:43
Оценка:
Здравствуйте, SkyDance, Вы писали:

M>>Это все здорово, но практика такова, что доказательное программирование возможно только в очень редких ситуациях.


SD>Есть большое количество formally verified software. Есть формальная верификация моделей.


Они все работают хорошо, пока не нужно взаимодействовать с внешним миром, который формальной верификации не поддаётся. Чем меньше внешнего мира, тем лучше работают формализмы, и тем хуже практическая применимость.
Re[4]: Увлекающимся тестированием
От: SkyDance Земля  
Дата: 12.03.22 05:13
Оценка:
S>Они все работают хорошо, пока не нужно взаимодействовать с внешним миром, который формальной верификации не поддаётся. Чем меньше внешнего мира, тем лучше работают формализмы, и тем хуже практическая применимость.

Внешний мир верифицировать не требуется.
Достаточно предоставить формальный протокол взаимодействия.
Re[5]: Увлекающимся тестированием
От: Sharowarsheg  
Дата: 12.03.22 10:12
Оценка: -2
Здравствуйте, SkyDance, Вы писали:

S>>Они все работают хорошо, пока не нужно взаимодействовать с внешним миром, который формальной верификации не поддаётся. Чем меньше внешнего мира, тем лучше работают формализмы, и тем хуже практическая применимость.


SD>Внешний мир верифицировать не требуется.

SD>Достаточно предоставить формальный протокол взаимодействия.

Достаточно для того, чтобы верифицировать программу, но обычно не достаточно для работы с миром.
Re: Увлекающимся тестированием
От: fmiracle  
Дата: 17.03.22 11:06
Оценка:
Здравствуйте, vaa, Вы писали:

vaa>

vaa>Экспериментальное тестирование программ
vaa>может служить для доказательства наличия ошибок,
vaa>но никогда не докажет их отсутствия.


Логично. И что? Вывод какой? Как в классиках?

Лозунг у них был такой: «Познание бесконечности требует бесконечного времени». С этим я не спорил, но они делали из этого неожиданный вывод: «А потому работай не работай — все едино».

Re: Увлекающимся тестированием
От: mrTwister Россия  
Дата: 17.03.22 12:53
Оценка:
Здравствуйте, vaa, Вы писали:


vaa>

vaa>Экспериментальное тестирование программ
vaa>может служить для доказательства наличия ошибок,
vaa>но никогда не докажет их отсутствия.


42
лэт ми спик фром май харт
Re: Увлекающимся тестированием
От: σ  
Дата: 18.03.22 11:04
Оценка: :)
vaa>

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

Просто делаешь по тесту на каждую возможную ошибку и если все они проходят — ошибок нет.
Отредактировано 18.03.2022 11:15 σ . Предыдущая версия .
Re[2]: Увлекающимся тестированием
От: vaa  
Дата: 20.03.22 01:43
Оценка:
Здравствуйте, σ, Вы писали:

vaa>>

σ>Экспериментальное тестирование программ
σ>может служить для доказательства наличия ошибок,
σ>но никогда не докажет их отсутствия.

σ>Просто делаешь по тесту на каждую возможную ошибку и если все они проходят — ошибок нет.

Ошибки есть, ошибок нет

Если вы знаете заранее об ошибках в вашем коде, то вы БОГ программирования и тесты вам не нужны
☭ ✊ В мире нет ничего, кроме движущейся материи.
Re[2]: Увлекающимся тестированием
От: vaa  
Дата: 20.03.22 05:48
Оценка:
Здравствуйте, fmiracle, Вы писали:

F>Здравствуйте, vaa, Вы писали:


vaa>>

vaa>>Экспериментальное тестирование программ
vaa>>может служить для доказательства наличия ошибок,
vaa>>но никогда не докажет их отсутствия.


F>Логично. И что? Вывод какой? Как в классиках?


алгоритм должен строится на четких утверждениях
иначе начинается гадание на кофейной гуще тестирование

тут кончено зависит многое от инструмента(например F#) и культуры(швейцарская школа программирования)
let pal (word:string) =
  
  let rec loop a =
    match a with
    | [] | [_] -> true
    | x -> (x[0] = x[x.Length - 1]) && (if x.Length < 4 then true else (loop x[1 .. x.Length - 2]))
  
  loop [for c in word -> c]
☭ ✊ В мире нет ничего, кроме движущейся материи.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.