Пользователь HeadHunter
Для входа воспользуйтесь учетной записью любого из проектов HeadHunter или зарегистрируйтесь
Я в сообществе



Календарь

Поиск по сообществу
 

Как изменить GUI-скрипт по умолчанию в IBM Rational Robot'e.

Попов Александр
27 марта 2009, 13:24
Скрыть запись
Скрыть запись
При создании GUI-скрипт по умолчанию выглядит следующим образом:

Sub Main
    Dim Result As Integer

'Initially Recorded: 16.02.2009 13:52:20
    'Script Name: temp

End Sub

А хочется, чтобы при создании скрипта в него сразу прописывались заголовочные файлы, метакоманды и комментарии. И получалось что-то на подобии:

'$Include "global.sbh"

Sub Main
    '$CStrings
    Dim Result As Integer

'Initially Recorded: 16.02.2009 13:52:20
    'Script Name: temp

'$NoCStrings
End Sub


Для этого нужно отредактировать Testproc.tpl:
  1. Выбрать в меню File → Open → SQABasic File.
  2. Выбрать тип файла шаблона *.tpl.
  3. Выбрать в списке файлов testproc.tpl и кликнуть Open.
  4. Изменить содержимое файла.
  5. Кликнуть File → Save.
+ 1
- 0
Просмотров:
29
 

Отчет об ошибке

Pavlova Zoya
27 июля 2008, 00:25
Скрыть запись
Скрыть запись

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

  • Простота

Отчет должен описывать только одну проблему. Если обнаружено несколько тесно связанных проблем, о них лучше составить разные отчеты. Можно включить в них перекрестные ссылки друг на друга, но не стоит "сливать" их в один отчет. Бывает, что похожие с виду ошибки имеют разные причины. Да и отчет о нескольких ошибках сразу создает впечатление сложного и трудоемкого.

  • Понятность

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

  • Воспроизводимость

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

  • Беспристрасность

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

  • Разборчивость

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



Схема описания найденной проблемы
:

  1. Что сделал?
  2. Что получил?
  3. Что ожидал получить?

+ 5
- 0
Просмотров:
20
 

Тестируем wysiwyg

Pavlova Zoya
11 марта 2008, 22:46
Скрыть запись
Скрыть запись

Итак, кроме общих правил для тестирования текстовых полей можно добавить следующие:

- проверить обработку html-тегов (как и чем заменяются "запрещенные" теги) - например, должны обрезаться некоторые стили

Пример:

Читать далее
свернуть
свернуть

- если есть возможность редактировать html - нужно проверить невалидный html ( например, без закрывающего тега div или tr)

- проверить регистр тегов (<img src="http://darkroom.net.ru/pic/screenshot/20..."/> <IMG src="http://darkroom.net.ru/pic/screenshot/20...">)

- проверить copy-past сложноформатированного текста из текстовых процессоров (например из MS Word)

Пример:

Читать далее
свернуть
свернуть

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

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

- проверить вставку видео и флэш-роликов

На этом пока все. Буду рада дополнениям.

+ 1
- 0
Просмотров:
28
 

Как тестировать поля ввода

Pavlova Zoya
7 марта 2008, 22:57
Скрыть запись
Скрыть запись

 Попробую собрать воедино все, что пока знаю: 
 Числовые поля ввода:
- правильное значение;
- граничные значения;
- значения выходящие за заданый диапазон;
- пустое значение;
- нечисловое значение;  
 
Текстовые поля ввода:
- корректное значение;
- очень длинный текст (сколько-нибудь  килобайт, в зависимости от того, что тестируем);
- корректный SQL запрос ( DROP TABLE user; SELECT * FROM blog WHERE code LIKE 'a%';);
- корректный скрипт (<script>alert("Hello, world!")</alert>, <script>document.getElementByID("...").disabled=true</script>)
- html-теги (<form action="http://live.hh.ru"><input type="submit"></form>)
- сложную последовательность символов вроде "♣☺♂" , ""'~!@#$%^&*()?>,./\<][ /*<!--"", "${code}";
- текст состоящий из одних пробелов;
- текст, начинающийся с нескольких пробелов;   
- текст с различным регистром символов.
 
Кроме всего этого в поиске стоит проверить:
- вилдкарты и прочие regexp'ы  (.*,  *., ?, *);
- ищется ли по цифрам;
- ищутся ли слова с различными "сложными" символами вроде '+' (например, c++)
- являются ли цифры разделителями слов (не должны являться);
- является ли запятая разделителем слов (должна являться);
- ищется ли по словоформам (например, "систему" и "система" - поиск должен считать за одно слово);
- поиск по нескольким словам, разбросанным по записи (то есть не идущим последовательно друг за другом)
- поиск с учетом порядка слов ( "Вася сказал" и "сказал Вася" - результат должен быть одинаковый);
- ввести текст в другой кодировке (например, Óèêèïåäèÿ å ìíîãîåçè÷íà åëåêòðîííà)

+ 2
- 0
Просмотров:
108
 

Интересно, как в тесте отследить время жизни куки?

Pavlova Zoya
9 октября 2007, 21:18
Скрыть запись
Скрыть запись

С помощью селениума не получается. Возвращается пара имя=значение, без дополнительных параметров (вроде необходимого expires), то есть возвращается то, что можно получить из document.coockie. А этого мало. Задача вообщем-то стоит такая: нужно удалить только те куки, у которых время жизни - сессия.

Тут 2 очевидных пути решения:

  1. закрыть браузер и открыть его снова;
  2. как-то найти куки, у которых время жизни - сессия;

У того же селениума нельзя просто взять и закрыть браузер. Только таб (или popup). Нужно перестартовать селениум. А он создаст чистый профиль. Можно прописать в строке запуска что нить в виде "*custom < path2Fiirefox > -P < path2customProfile >". Но это не совсем верно, так тестировать хочется и нужно еще и под IE.

Можно ботом принудительно закрыть окно (например, нажав alt+F4). Но селениум дальше работать отказывается. Что вполне понятно.

Здесь для этого пути мысли заканчиваются.

Следующий путь - каким-либо образом получить время жизни куки. С помощью JS не получается. Можно попробовать прочитать куки из файла, который хранит браузер. Опять таки приходится делить метод для разных браузеров. А хочется, чтобы одной строчкой и везде работало :) Тут есть небольшая загвоздка: если где лежат куки для IE по умолчанию - известно, то для firefox'a каждый раз создается новый профиль и нужно искать его. У SeleniumServer есть свойство firefoxProfileTemplate. Соответственно можно узнать, какой именно профиль он использует в этот раз. Теоретически. У меня пока не получилось.

Можно написать тест, например на jwebUnit . Тоже идея. Только мне не удалось заставить его представится firefox'ом. А по умолчанию он считает себя IE4. Зато он замечательно возвращает все, что мне нужно знать о куке. Должен же быть способ сделать это?

+ 0
- 0
Просмотров:
210