Использовать 1 a float и float division
public static void main(String d[]){
double g=1f/3;
System.out.printf("%.2f",g);
}
Прежде всего, от разработчиков до тестировщиков - хорошее практическое правило , но это плохое правило .
Что вы необходимо учитывать, сколько вариантов использования имеет ваше приложение. Приложения, с которыми пользователи будут взаимодействовать неконтролируемым образом (веб-приложения IE или настольные приложения), потребуют большего количества тестеров, чем аналогичное консольное приложение.
Приложение, которое берет один файл и обнаруживает в нем шаблоны регулярных выражений, потребует меньше тестировщиков чем новая ОС.
Хотя это общие принципы, практический совет будет заключаться в использовании какой-то приблизительной формулы, основанной на этих факторах
1) Сколько существует (разделенных) вариантов использования?
Я говорю о разделенных вариантах использования, потому что если вы включаете изменения состояния и постоянные переменные,
IE 2 + 2 = 4 (1 вариант использования) 2 * 2 = 4 (2-й вариант использования). Это два простых оператора, два класса вариантов использования. Однако, если вы можете добавить
, затем умножить
, тогда вы не сможете проверить ТОЛЬКО добавить
и умножить
по отдельности, вы должны отметить их в все их возможные перестановки.
Изучая количество вариантов использования, убедитесь, что вы включили варианты использования, которые включают объединение команд в цепочки.
2) Сколько времени нужно, чтобы проверить каждую из них?
Это не означает (расширяя метафору калькулятора) только прибавление 2 + 2 и рассмотрение ответа. Вы должны указать время, необходимое для восстановления после сбоя. Если ответ неверен, можно ожидать, что тестировщик зарегистрирует ошибку со снимком экрана и конкретными инструкциями о том, как воссоздать ошибку. Если вы не Если дать им время на такую административную работу, тогда вы вплетите в свой план предположение, что у вас нет ошибок. И если мы предполагаем это, тогда зачем вообще нужны тестировщики;)
Сложный проект будет иметь как большое количество вариантов использования, так и большое количество разработчиков, но их корреляция не гарантирована. Вам лучше тщательно изучить свои варианты использования и принять обоснованное решение о том, сколько тестеров потребуется.
Добавлен бонус. После того, как вы так тщательно разбили приложение, вы можете найти некоторые варианты использования, которые никогда не рассматривались на этапе проектирования, и исправить их до того, как их найдет тестировщик.
)Сложный проект будет иметь как большое количество вариантов использования, так и большое количество разработчиков, но их корреляция не гарантирована. Вам лучше тщательно изучить свои варианты использования и принять обоснованное решение о том, сколько тестеров потребуется.
Добавлен бонус. После того, как вы так тщательно разбили приложение, вы можете найти некоторые варианты использования, которые никогда не рассматривались на этапе проектирования, и исправить их до того, как их найдет тестировщик.
)Сложный проект будет иметь как большое количество вариантов использования, так и большое количество разработчиков, но их корреляция не гарантирована. Вам лучше тщательно изучить свои варианты использования и принять обоснованное решение о том, сколько тестеров потребуется.
Добавлен бонус. После того, как вы так тщательно разбили приложение, вы можете найти некоторые варианты использования, которые никогда не рассматривались на этапе проектирования, и исправить их до того, как их найдет тестировщик.
Я вел блог об этом однажды здесь . Самая соответствующая выборка ниже.
"я видел высококачественные продукты, произведенные на 10:1 dev:test отношение и ужасные продукты, созданные с 1:1 отношение. Различие находится во внимании и заботе о качестве. Если все (включая управление) в команде глубоко заботятся о качестве продуктов, это имеет хороший шанс случая независимо от отношения. Но если качество - что-то, что, как предполагается, тестируется в продукт, любой ценой имеет по крайней мере 1 тестер для каждого разработчика - больше, если можно получить их".
Joel приводит хороший аргумент в пользу 1 тестера для каждых 2 инженеров, а также покрытие людей оправданий использует для того, чтобы не иметь те тестеры.
Нет никакого обобщенного "хорошего" отношения.
Очевидно, время, требуемое протестировать что-то, является контекстным - оно зависит от факторов, которые могут иметь мало или ничто, чтобы сделать с тем, сколько времени оно взяло для разработки той функции.
Также рассмотрите:
По-моему, хорошая метрика для использования в определении числа необходимых тестеров является сложностью требований, не числом разработчиков. Если бы я нанимал тестеры, то я смотрел бы на список требований (или повредил бы документ дизайна в список требований при необходимости), и думайте о том, насколько, тестируя время каждое требование должно было бы проверить, что работало правильно. Я использовал бы тот начальный анализ, чтобы нанять базу тестеров и затем добавить тестеры позже, если бы рабочая нагрузка оказалась слишком высокой для моей начальной базы.
, Если Вы составляете бюджет и нанимаете тестеры позже, не опция, Вы могли бы хотеть планировать в немного большем количестве ресурсов тестирования, чем Ваш анализ указывает. Слишком много всегда лучше, чем недостаточно.
, Использовать ли "чистые" тестеры, другой вопрос, это действительно зависит от того, в скольких, тестируя ресурсы Вы нуждаетесь. Я нашел, что хороший компромисс состоит в том, чтобы нанять тестеры, которые способны к другим заданиям и используют их в других мощностях время от времени, когда загрузка тестирования легка.
Редактирование: , Если Вам повезло иметь ряд приемочных испытаний вначале, замените "приемочными испытаниями" "список требований" выше. :-)
Была недавняя, соответствующая статья о InfoQ, который Вы могли бы найти интересным.
Я сказал бы (в зависимости от скорости, Вам нужны протестированные вещи) с автоматизацией, у Вас могли быть как 1 или 2 тестера для каждого 5 разработчиков.
, Почему:
Hope это поможет :)
кроме того, Вы использовали бы 'чистые' тестеры, или Вы объедините тестирование с другими ролями (например, документация, обучение пользователей, и т.д.)?
Это зависит от типа тестирования, но я не обременил бы тестеры другими ролями. Компетентные инженеры-испытатели стоят своего веса в золоте (то же как компетентные разработчики программного обеспечения). Если Вы даете им задачи за пределами их домена экспертных знаний, Вы собираетесь замедлить их и p*ss их прочь. Разработчикам программного обеспечения нравится делать документацию или обучение пользователей? Обычно нет. Ни один не делает тестеры.
Однако нет, ничто неправильно с добавлением Вашего теста не подходит к людям от других областей, специально для тестирования удобства пользования, приемочных испытаний, быстрых обзоров, и т.д.