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

Фотография

задачка для тестирования


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

#1 top-pot

top-pot

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

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

Отправлено 28 октября 2009 - 14:22

Наткнулась на тестовое задание яндекса. "Составить набор тестов для тестирования лексического анализатора, разбирающего декларации следующего вида (здесь приведён синтаксис декларации в нотации Бэкуса-Наура):

procedure <return type> <name> ([<param type> <param name>[, ...]]); <return type>= void | int <param type>= int | long <name>, <param name> - идентификаторы, соответствующие требованиям java.

Результат работы лексического анализатора - заключение о том, является ли введенная строка корректной декларацией.

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

Обращаем внимание на то, что выполнение этого задания не требует специальных знаний, не имеет отношения к программированию или к тестированию белого ящика. Для его выполнения достаточно узнать о нотации Бэкуса-Наура (если раньше вам не приходилось о ней слышать).
"

Мне не очень понятно само задание. Опыт тестирования у меня небольшой.
В этом задании нужно просто перечислить все варианты и сделать вывод правильно или нет? Например, procedure void <name> (); - верная декларация. Так?

Или же что-то другое?

Заранее, всем спасибо за помощь :0)
  • 0

#2 astenix

astenix

    Специалист

  • Members
  • PipPipPipPipPip
  • 906 сообщений
  • ФИО:Лёша Лупан
  • Город:Кишинев


Отправлено 28 октября 2009 - 21:17

Да, в этом задании нужно перечислить все варианты и сделать утверждение по каждому случаю - будет работать или нет.
  • 0

Software Testing Glossary - простыми словами о непростых словах.


#3 top-pot

top-pot

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

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

Отправлено 28 октября 2009 - 22:06

Да, в этом задании нужно перечислить все варианты и сделать утверждение по каждому случаю - будет работать или нет.


Спасибо большое ))) Я так и сделала
  • 0

#4 Clauster

Clauster

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

  • Members
  • PipPipPipPipPipPip
  • 1 913 сообщений
  • ФИО:Худобородов Валерий
  • Город:Espoo

Отправлено 28 октября 2009 - 23:28

Да, в этом задании нужно перечислить все варианты и сделать утверждение по каждому случаю - будет работать или нет.

скорее всего, не все варианты.
  • 0

#5 top-pot

top-pot

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

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

Отправлено 29 октября 2009 - 21:35

в общем, перечисление вариантов - это неправильный ответ :(

скорее всего, не все варианты.

это как?
  • 0

#6 Clauster

Clauster

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

  • Members
  • PipPipPipPipPipPip
  • 1 913 сообщений
  • ФИО:Худобородов Валерий
  • Город:Espoo

Отправлено 29 октября 2009 - 23:05

в общем, перечисление вариантов - это неправильный ответ :(

скорее всего, не все варианты.

это как?

ну например, чтобы проверить умножение на калькуляторе, вы же не будете перебирать все числа?
  • 0

#7 prosmith

prosmith

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

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

Отправлено 15 марта 2010 - 07:52

Я вот сам сижу какраз над этой задачей и не могу понять с какой стороны к ней подойти :)
  • 0

#8 Freiman

Freiman

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

  • Members
  • PipPipPipPipPipPip
  • 1 591 сообщений
  • ФИО:Андрей Адеркин
  • Город:Йошкар-Ола

Отправлено 15 марта 2010 - 08:07

а в чем проблема-то? :)
составляешь классы эквивалентности для входных данных и для каждого делаешь пример.
тут получается не очень много.

я это задание тоже когда-то делал, и, по всей видимости, успешно, т.к. получил следующее :)
  • 0

#9 Clauster

Clauster

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

  • Members
  • PipPipPipPipPipPip
  • 1 913 сообщений
  • ФИО:Худобородов Валерий
  • Город:Espoo

Отправлено 15 марта 2010 - 09:09

Первоисточник http://company.yande...st_engineer.xml
У нас, кстати, похожее задание, только у нас функция парсит ini-файлы
  • 0

#10 prosmith

prosmith

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

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

Отправлено 15 марта 2010 - 10:48

а в чем проблема-то? :)
составляешь классы эквивалентности для входных данных и для каждого делаешь пример.
тут получается не очень много.

я это задание тоже когда-то делал, и, по всей видимости, успешно, т.к. получил следующее :)


А проблема в том, что я только начинаю этим всем заниматься и по неопытности туплю жутко. Все утро смотрел на этот пример и так и не понял. Вечером сяду и не успокоюсь, пока не дойдет.
  • 0

#11 Freiman

Freiman

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

  • Members
  • PipPipPipPipPipPip
  • 1 591 сообщений
  • ФИО:Андрей Адеркин
  • Город:Йошкар-Ола

Отправлено 15 марта 2010 - 11:30

ответ предполагается примерно такой:

тесты, на которых должно проходить:
procedure void Name()
procedure void Name(int i)
procedure void Name(long l)
procedure void Name(int i, long l)
+ аналогично для <return type> = int

тесты, на которых должно выдавать ошибку:
procedure void ()
procedure Name()
procedure long Name()
procedure int Name(string s)
procedure int Name(int i long l)
...

также проверить "<name>, <param name> - идентификаторы, соответствующие требованиям java" - попробовать начать с цифры, например. я требования java уже точно не помню.
  • 0

#12 DrVal

DrVal

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

  • Members
  • PipPipPip
  • 230 сообщений
  • ФИО:Drozdov V. V.

Отправлено 15 марта 2010 - 13:14

Маловато, маловато будет :-)

Еще могу предложить
procedure void Name(int i
procedure void Name ()(int i)
procedure void Name(,int i)
procedure void Name (int i,)
procedure void Name((int i))
procedure void int Name(int i)

ответ предполагается примерно такой:

тесты, на которых должно проходить:
procedure void Name()
procedure void Name(int i)
procedure void Name(long l)
procedure void Name(int i, long l)
+ аналогично для <return type> = int

тесты, на которых должно выдавать ошибку:
procedure void ()
procedure Name()
procedure long Name()
procedure int Name(string s)
procedure int Name(int i long l)
...

также проверить "<name>, <param name> - идентификаторы, соответствующие требованиям java" - попробовать начать с цифры, например. я требования java уже точно не помню.


  • 0

#13 Freiman

Freiman

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

  • Members
  • PipPipPipPipPipPip
  • 1 591 сообщений
  • ФИО:Андрей Адеркин
  • Город:Йошкар-Ола

Отправлено 15 марта 2010 - 13:42

Маловато, маловато будет :-)

Еще могу предложить
procedure void Name(int i
procedure void Name ()(int i)
procedure void Name(,int i)
procedure void Name (int i,)
procedure void Name((int i))
procedure void int Name(int i)


на fail можно придумать тысячи кейсов :)
  • 0

#14 Tuchka_84

Tuchka_84

    Активный участник

  • Members
  • PipPip
  • 105 сообщений
  • ФИО:Маша

Отправлено 15 марта 2010 - 13:49

Главное с чего надо начать это с теории Бэкуса-Науэра - как он представляет выражения числа и т.д. что двузначное число состоит из двух цифр а цифра от 0,,10 вложенность короче. а второе это почитать чуть-чуть про java какие поля задавать можно int char .... могут ли названия функций быть цифр или не могут и т.д. и составить список какие выражения пройдут тестирование и какие не пройдут
  • 0

#15 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 872 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 15 марта 2010 - 13:53

Кстати, никто не заметил ошибку в самом задании? :)
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#16 LeshaL

LeshaL

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

  • Members
  • PipPipPipPipPipPip
  • 1 094 сообщений
  • ФИО:Алексей Лянгузов
  • Город:Saint-Petersburg


Отправлено 15 марта 2010 - 14:36

Кстати, никто не заметил ошибку в самом задании? :)

Разве что круглые скобки должны быть в кавычках '(' ')'. Больше не вижу.
  • 0
Regards,
Alexey

#17 Freiman

Freiman

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

  • Members
  • PipPipPipPipPipPip
  • 1 591 сообщений
  • ФИО:Андрей Адеркин
  • Город:Йошкар-Ола

Отправлено 15 марта 2010 - 14:44

Кстати, никто не заметил ошибку в самом задании? :)

смесь синтаксисов БНФ и РБНФ?
  • 0

#18 Clauster

Clauster

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

  • Members
  • PipPipPipPipPipPip
  • 1 913 сообщений
  • ФИО:Худобородов Валерий
  • Город:Espoo

Отправлено 15 марта 2010 - 15:49

Кстати, никто не заметил ошибку в самом задании? :)

{;} - оно?
  • 0

#19 DrVal

DrVal

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

  • Members
  • PipPipPip
  • 230 сообщений
  • ФИО:Drozdov V. V.

Отправлено 15 марта 2010 - 16:22

на fail можно придумать тысячи кейсов :)

кейсов да, но классов эквивалетности все-таки меньше...
  • 0

#20 LeshaL

LeshaL

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

  • Members
  • PipPipPipPipPipPip
  • 1 094 сообщений
  • ФИО:Алексей Лянгузов
  • Город:Saint-Petersburg


Отправлено 15 марта 2010 - 16:33

на fail можно придумать тысячи кейсов :)

кейсов да, но классов эквивалетности все-таки меньше...

Об том и речь. И вопрос НЕ такой, "а покажите мне решение". А вопрос тут в том, что люди не до конца разобрались в тестовом задании и надо всего-лишь их направить на путь к решению, что и сделал Freiman. Перечислять все варианты никто и не просил.
  • 1
Regards,
Alexey


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

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