20155213 第十三周课堂博客
20155213 第十三周课堂博客
第一题
-
题目——教材代码检查
-
在IDEA中对P145 MathTool.java 使用JUnit进行单元测试,测试用例不少于三个,要包含正常情况,边界情况。
-
提交测试代码和运行结果截图,加上学号水印,提交码云代码链接。
-
测试代码
import junit.framework.TestCase;
import org.junit.Test;
/**
* Created by 联想 on 2017/5/17.
*/
public class MathToolTest extends TestCase {
int[]c={1,2,4,6};
@Test
public void testNumber1(){
MathTool a=new MathTool();
assertEquals(13,a.sum(c));
}
@Test
public void testNumber2(){
assertEquals((int)12,MathTool.sum(12,9,7));
}
@Test
public void testNumber3(){
assertEquals((int)19,MathTool.sum(12,7));
}
}
- 运行截图
第二题
-
题目——类定义
-
设计并实现一个Book类,定义义成Book.java,Book 包含书名,作者,出版社和出版日期,这些数据都要定义getter和setter。定义至少三个构造方法,接收并初始化这些数据。覆盖(Override)toString方法,返回良好的含有多行的书的描述信息。覆盖equals方法,书名,作者,出版社和出版日期完全一致才说明两本书是一样的。
-
创建一个测试类Bookshelf, 其中的main方法创建并更新几个Book对象。Book至少包含三本本学期教材内容。
-
提交测试代码和运行结果截图,加上学号水印,提交码云代码链接。
-
源代码
/**
* Created by 联想 on 2017/5/13.
*/
import java.lang.String;
public class Book {
String Name;
String Author;
String publicplace;
String publicTime;
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public String getAuthor() {
return Author;
}
public void setAuthor(String author) {
Author = author;
}
public String getPublicplace() {
return publicplace;
}
public void setPublicplace(String publicplace) {
this.publicplace = publicplace;
}
public String getPublicTime() {
return publicTime;
}
public void setPublicTime(String publicTime) {
this.publicTime = publicTime;
}
@Override
public String toString() {
return "String1{" +
"Name='" + Name + '\'' +
", Author='" + Author + '\'' +
", publicplace='" + publicplace + '\'' +
", publicTime='" + publicTime + '\'' +
'}';
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof Book)) return false;
Book string1 = (Book) o;
if (!getName().equals(string1.getName())) return false;
if (!getAuthor().equals(string1.getAuthor())) return false;
if (!getPublicplace().equals(string1.getPublicplace())) return false;
return getPublicTime().equals(string1.getPublicTime());
}
@Override
public int hashCode() {
int result = getName().hashCode();
result = 31 * result + getAuthor().hashCode();
result = 31 * result + getPublicplace().hashCode();
result = 31 * result + getPublicTime().hashCode();
return result;
}
}
- 测试代码
/**
* Created by lzm on 2017/5/17.
*/
public class Bookself {
public static void main(String[] args) {
Book book1=new Book();
Book book2=new Book();
Book book3=new Book();
book1.setName("Java程序设计");
book1.setAuthor("lin");
book1.setPublicplace("taiwan");
book1.setPublicTime("2015");
book2.setName("Android开发");
book2.setAuthor("Xinghuo");
book2.setPublicplace("neilu");
book2.setPublicTime("2017");
book3.setName("Java程序设计");
book3.setAuthor("lin");
book3.setPublicplace("taiwan");
book3.setPublicTime("2015");
System.out.println(book1.toString());
System.out.println(book2.toString());
System.out.println(book3.toString());
System.out.println(book1.equals(book2));
System.out.println(book3.equals(book1));
}
}
- 运行截图
课后问题总结
- 问题:第一题出现了前所未有的问题就,就是
No Test Found
,从而导致的无法测试成功
- 问题解决
- 解法其实很简单,就是在
Number1()
前加上test
感想
- 像今天出现的问题,其实是有点小儿科的,也就是一个小细节,平时没有注意到,今天出现了,结果弄得自己手足无措。这是一个需要时刻记住的教训,细节很重要。今后学习,不能在囫囵吞枣,不求甚解了,每一步骤都要搞明白,搞透彻,然后在进行下一步学习。