данные для тестов
2011-09-06 09:34
Здравствуйте! у меня, как у новичка, такой вопрос есть.
помогите разобраться. у меня есть 3 теста: по подразделениям, по пользователям и по задачам для пользователей.
все эти тесты заносят данные в систему и потом в конце удаляют их.
так вот проблема в том, что например, для создания задач сначала нужно иметь в системе каких то пользователей, а для создания этих пользователей нужно иметь подразделения.
получается такая вот последовательность... а дальше тестов будет больше, и данных для каждого из них нужно будет все больше и больше.
в интернете понятных статей о том, откуда взять нужные данные для теста, я к сожалению не нашла....
может мне кто нибудь объяснить, как поступать в такой ситуации? или нужно запускать последовательность тестов?
не судите строго, но объясните на примере. Как правильно составить (вообще) как составить unit-тест, например для подобного кода?
if vDoc.ClassID.InheritsFromClass(КПДокументНаПериод) and (позФИКСЦЕНА >= 0 or позНДСФИКСЦЕНА >= 0 or позСУММАФЦЗАПЕРИОД >= 0) then
begin
netStrok := false;
var ДопСостоянияДистр := ArrayToComma([СостояниеДистрибутива.Подключен, СостояниеДистрибутива.НаСкладе]);
var ДатаНачала := EndOfDay(ToDate(vDoc.GetAttrValuesByName('ДатаНачала')));
if fSN.AsString <> '' then
ТекДистрибутив := Номенклатура.ВернутьДистрибутив(vDoc.Клиент, CommaGet(fSN.AsString, 0),
Номенклатура(fArticle.AsInteger), ДопСостоянияДистр, ДатаНачала);
if assigned(ТекДистрибутив) then
var ФиксЦена := Rat.EvalQuery(
SQLText
!Select Reg.DistrFixedPrice
From RegChangeDistributiv Reg
Where Reg.Distributiv = &ToInt(ТекДистрибутив)&
and Reg.BeginDate <= &ToStr(ДатаНачала)&
and Reg.EndDate > &ToStr(ДатаНачала)&
and IsWorked = -1
Order by Reg.BeginDate desc!
end);
ФиксЦена := ToFloat(ФиксЦена);
if позФИКСЦЕНА >= 0 then
vMas[i, позФИКСЦЕНА] := ФиксЦена;
if позНДСФИКСЦЕНА >= 0 then
vMas[i, позНДСФИКСЦЕНА] := Round(ToFloat(ФиксЦена) * fNDSRate.AsFloat / 100, 2, 1);
if позСУММАФЦЗАПЕРИОД >= 0 then
begin
var ДатаОкончания := EndOfDay(ToDate(vDoc.GetAttrValuesByName('ДатаОкончания')));
var КолМес := Функции_мат.КолМесяцев(ДатаНачала, ДатаОкончания);
vMas[i, позСУММАФЦЗАПЕРИОД] := ФиксЦена * КолМес;
end;
Т.е. на выходе будем иметь ФИКСЦЕНА или НДСФИКСЦЕНА или СУММАФЦЗАПЕРИОД. Как правильно изолироваться от реальных объектов и переменных? Мне нужно объяснить это на пальцах, а лучше показать пример программисту, чтобы мотивировать его на создание собственных юнит-тестов. :)
Спасибо
ListView
2011-09-06 10:28
Добрый день, подскажите, пожалуйста: у меня на форме есть ListView, в нем 45 строк, а TestComplet (через .wItemCount) "говорит", что строк 40. Строк действительно 45, я не поленился и посчитал ) В чем может быть дело? Из за этого я не могу считать значение из последней строки. Заранее спасибо.
web_submit_data
2011-09-06 10:32
Есть функция, которая выбирает некие значения из исходника страницы. Мы не знаем заранее сколько таких значений будет. Поэтому используем 'ORD=All' чтобы выбрать все значения.
Есть прмиерное описание функции, которая отправляет post-запрос на сервер. Проблема в том, чтобы заменить 'n' в имени '{pCurrentIndicationId_n}' на правильное значение.
Позволяет ли Loadrunner использовать цикл внутри web_submit_data для того, чтобы отправить все параметры в одном запросе с неизвестным заранее количеством параметров ?
Предложения по тестированию игры
2011-09-06 11:37
Напишите подробно, какие действия Вы бы произвели, чтобы протестировать игру Pacman для мобильного телефона. (Если в Pacman никогда не играли – то это может быть Tetris или Lines).
Во время обучения были познаны тёмная и светлая стороны силы веб-тестировщиков, «взломаны» и «положены» несколько сайтов и получена масса удовольствия. Ни один разработчик за время проведения курса не пострадал.
Курс настоятельно рекомендуется к прохождению тестировщикам веб-продуктов, уже имеющим базовые знания в тестировании, но ещё не знакомым с веб-спецификой.
Что случилось с verifyTrue?
2011-09-06 16:57
Появилась необходимость использовать не Assert, а verifyTrue для проверки неких условий. Функция verifyTrue не доступна. что с ней случилось?
Вы работаете в Agile команде. Она может быть распределенной или совмещенной - не имеет значения. Какими средствами вы пользуетесь для учета своих проектов/задач в них? И главный вопрос, почему вы выбрали эти средства?
Заполните, пожалуйста, поля отдельно для каждой команды, в которой вы участвуете (конечно, если ответы разные;)
Найдите несколько минут, чтобы поучаствовать в опросе (на английском языке) - мы поделимся с Вами результатами! http://goo.gl/r0SMd
Организация работы отдела тестирования
2011-09-06 20:48
Добрый день, коллеги!
У нас в компании отдел тестирования состоит из 4 человек. Я как самый опытный тестировщик (стаж 3 года) являюсь неформальным руководителем отдела.
На данный момент в мои обязанности входит обучение других сотрудников и распределение тестировщиков на проекты.
Дальше выдают задания, контролируют и оценивают работу руководители проектов. Ни тестировщики, ни менеджеры мне не отчитываются.
Т.к. у меня нету опыта работы в других компаниях, я не знаю, правильно ли организована работа.
Поделитесь, пожалуйста, информацией, как работают ваши отделы тестирования, чем должен заниматься руководитель отдела?
Заранее спасибо.
Особенности тестирование Ipad
2011-09-06 23:48
Здравствуйте.
Поискал в гугле особенности тестирования приложений для Ipad. Немного полезного нашел, но как-то совсем чуть-чуть...
Может кто-то встречал какой-то путный чек-лист?
Или поделитесь пожалуйста навскидку своим опытом, где здесь узкие места)
ZendFramework+PHPUnit - имитация отправки файла пользователем
2011-09-07 08:25
Здравствуйте. Пишу приложение на Zend Framework последней версии, тесты организую через встроенные в ZF классы по работе с PHPUnit.
Есть ли способ средствами PHPUnit как-нибудь имитировать отправку пользователем файла?
Второй раз уже сталкиваюсь с этой проблемой. Впервые с ней встретился когда писал приложение без использования каких-либо фреймворков.
Тогда попробовал заполнять массив $_FILES нужными данными, прямо в коде теста, но в такой ситуации отказывается работать функция move_uploaded_file() :(