Поэтому здесь только спецификации тестирования.
1. Напишите программу, печатающую простые числа вплоть до числа, заданного командной строке
Я подошел к решению этой задачи разбив ее на два метода. Первый - проверяет является число простым или нет, второй - решает поставленную задачу.
Итак методы можно протестировать так:
@Test
public void testIsSimpleNumber()
{
boolean result = Task1.isSimple(10);
Assert.assertFalse(result);
result = Task1.isSimple(11);
Assert.assertTrue(result);
}
@Test
public void testPrintSimple()
{
Task1.PrintSimple(30);
}
* This source code was highlighted with Source Code Highlighter.
2. Реализуйте методы класса, проверяющего правильность датыЭта задача уже интереснее и для задания спецификации необходимо учитывать года до 1970 года, високосные года и проверку на 30 и 31 день в месяце.
Это все описать можно чем то таким:
@Test
public void testCheckDate()
{
boolean result = DateValidator.checkDate(12, 15);
Assert.assertTrue(result);
result = DateValidator.checkDate(2, 28);
Assert.assertTrue(result);
result = DateValidator.checkDate(-1, 28);
Assert.assertFalse(result);
result = DateValidator.checkDate(20, 28);
Assert.assertFalse(result);
result = DateValidator.checkDate(2, 29);
Assert.assertFalse(result);
result = DateValidator.checkDate(1990, 12, 1);
Assert.assertTrue(result);
result = DateValidator.checkDate(2005, 1, 1);
Assert.assertTrue(result);
result = DateValidator.checkDate(1990, -1, 1);
Assert.assertFalse(result);
result = DateValidator.checkDate(2009, 2, 29);
Assert.assertFalse(result);
result = DateValidator.checkDate(2009, 11, 35);
Assert.assertFalse(result);
result = DateValidator.checkDate(2000, 2, 29);
Assert.assertTrue(result);
result = DateValidator.checkDate(2100, 2, 29);
Assert.assertFalse(result);
result = DateValidator.checkDate(1900, 12, 29);
Assert.assertFalse(result);
}
* This source code was highlighted with Source Code Highlighter.
Единственно я здесь на описал проверку на день меньше 1.3. Реализуйте методы класса, работающего со строкой.
Здесь необходимо в первом случае проверять как правильность работы так и некорректность позиции на которую необходимо вставлять символ. Во втором случае, проверить на строках четной и нечетной длинны.
Записать проверки можно так:
@Test
public void testSetCharAt()
{
String result = StringUtils.setCharAt("aaaaaa", 'b', 3);
Assert.assertEquals("aaabaa", result);
result = StringUtils.setCharAt("aaaaaa", 'b', 5);
Assert.assertEquals("aaaaab", result);
result = StringUtils.setCharAt("aaaaaa", 'b', -3);
Assert.assertEquals("aaaaaa", result);
result = StringUtils.setCharAt("aaaaaa", 'b', 8);
Assert.assertEquals("aaaaaa", result);
}
@Test
public void testReverse()
{
String result = StringUtils.reverse("abcd");
Assert.assertEquals("dcba", result);
result = StringUtils.reverse("abc");
Assert.assertEquals("cba", result);
* This source code was highlighted with Source Code Highlighter.
На этом собственно сообщение можно заканчивать. Решения выложу чуть позже. Обед, сами понимаете.
Комментариев нет:
Отправить комментарий