Перейти к содержимому

Фотография

Тестирование скриптового языка


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 4

#1 elfische

elfische

    Постоянный участник

  • Members
  • PipPipPip
  • 186 сообщений
  • ФИО:Андреева Татьяна
  • Город:Казань


Отправлено 12 февраля 2012 - 18:38

Впервые встала перед вопросом: как писать тесты. А во всём виноват TCL. Проблема не столько в нём самом, сколько в том, что я не знаю, с какой стороны подойти к тестированию языка. Даже с классами эквивалентности дальше разделения на типы данных не могу определиться.

У кого какие мысли на сей счёт?
  • 0

#2 ch_ip

ch_ip

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 097 сообщений
  • ФИО:Павел Абдюшев
  • Город:Москва


Отправлено 13 февраля 2012 - 07:22

А как формулируется задача, которая перед вами стоит?
  • 0

#3 elfische

elfische

    Постоянный участник

  • Members
  • PipPipPip
  • 186 сообщений
  • ФИО:Андреева Татьяна
  • Город:Казань


Отправлено 13 февраля 2012 - 08:37

Вообще задачу мне поставили так: протестируй тикль.
В реальности что есть. Гоняем данные из одной базы в другую. Есть возможность задавать выражения, которые будут обрабатывать передаваемые данные. Например, выполнять фильтрацию, сравнения дат, конвертации их же, математические операции. А потом это всё записывается в базу-получатель в заданный столбец. Таким образом, мы можем уже сразу после передачи получить нужные "Итого", отформатированный текст и пр.
Из внешних составляющих у меня разные линуксы, солярис и оракл на них всех.
  • 0

#4 alix

alix

    Новый участник

  • Members
  • Pip
  • 12 сообщений

Отправлено 06 марта 2012 - 19:12

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


Человек явно не понял какую задачу поставил. Заказ тестового пакета для компилятора или интерпретатора стоит очень больших денег.
И самое тестирование подобного проекта сложнейшая программисткая задача для целой команды разработчиков. Квалификации обычного тестировщика здесь не хватит. Нужно досконально знать проект скриптового движка, обладать тренированным системным мышлением, чтобы написать тестовый скрипт котрый "повалит" синтаксический анализатор, или вызовет краш стека виртуальной машины. Скриптовый движок очень коварная программа. В любом случае, прийдется писать тестовый пакет из тысяч скриптов, работа на многие месяцы вперед.
  • 0

#5 ch_ip

ch_ip

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 097 сообщений
  • ФИО:Павел Абдюшев
  • Город:Москва


Отправлено 07 марта 2012 - 13:55

Вообще задачу мне поставили так: протестируй тикль.
В реальности что есть. Гоняем данные из одной базы в другую. Есть возможность задавать выражения, которые будут обрабатывать передаваемые данные. Например, выполнять фильтрацию, сравнения дат, конвертации их же, математические операции. А потом это всё записывается в базу-получатель в заданный столбец. Таким образом, мы можем уже сразу после передачи получить нужные "Итого", отформатированный текст и пр.
Из внешних составляющих у меня разные линуксы, солярис и оракл на них всех.

Итого: у Вас есть среда для написания простых скриптов на TCl, которые потом будут передаваться компилятору TCl, правильно ли я понял?
Вопрос: компилятор самописный или взяли готовый работающий?
Если самописный и надо тестировать его, то тут недавно пробегала статься на тему того, как люди тестировали компилятор (взяли много готовых работающих скриптов с известным результатом и пропустили их через свою версию компилятора). Тут проблема именно найти такой набор скриптов. Писать его самому, не владея мастерством программирования будет очень трудно. Компиляторы тестируются разработчиками с большим стажем, которые знают все нюансы, фишки и проблемные места языка и понимают, каким образом работает компилятор изнутри.

Если компилятор промышленный, то есть фактически внешний для вас продукт, то не вижу большого смысла его тестировать.
Тут скорее следует проводить интеграционное тестирование всех компонентов: что данные из базы1 берутся верно, подставляются в нужные места в написанных скриптах, а результат получается в том формате, в котором его ожидает другая база.
Для этого определите те операции, которые будут использоваться в скриптах, протестируйте их поодиночке и соединенными разными логическими условиями. Не забудьте про разные типы данных, работу с датой/временем. ПОсмотрите, какие особенности у TCl при работе с разными типами данных, где возникают сложности, в том числе, напрмиер, с производительностью или использованием памяти.
  • 0


Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных