以下junit测试代码有错误,不知道哪里错了
-
这是JUNIT测试代码: import static org.junit.Assert.*; import 和 main 等前面的全部省略。。下面开始: protected ArrayCollection
AC; @Before public void runBeforeEveryTest(){ AC = new ArrayCollection(); AC.myStorage = (E[]) new Objec... 这是JUNIT测试代码: import static org.junit.Assert.*; import 和 main 等前面的全部省略。。下面开始: protected ArrayCollection AC; @Before public void runBeforeEveryTest(){ AC = new ArrayCollection(); AC.myStorage = (E[]) new Object [10]; AC.mySize = 0; AC.add((E) "April"); AC.add((E) "Bob"); AC.add((E) "Cathy"); } @Test public void testRemove() { for (Iterator it = AC.iterator(); it.hasNext();) { String index = (String)it.next(); if (index=="Bob"){ it.remove(); assertTrue(AC.remove("Bob")); } } } @Test public void testEqualsObject() { boolean expected = true; ArrayCollection AC_new = new ArrayCollection(); AC_new.add((E) "April"); AC_new.add((E) "Bob"); AC_new.add((E) "Cathy"); assertEquals(expected, AC_new.equals(AC)); } 下面的是被测试的类, 其中的boolean remove()和equals()方法是我自己写的,其他的是题目给出的。 public class ArrayCollection implements Collection { protected E[] myStorage; protected int mySize; public ArrayCollection() { myStorage = (E[]) new Object [10]; mySize = 0; } public String toString() { String result = ""; for (int i = 0; i < mySize; i++) result += myStorage [i] + "\n"; return result; } // method toString /** * Checks if this ArrayCollection object is empty. * * @return a boolean indicating whether this ArrayCollection object is empty or not. */ public boolean isEmpty() { return mySize == 0; } // method isEmpty /** * Checks if this ArrayCollection object contains a certain element. * * @param obj an Object that will be checked for. * * @return a boolean indicating whether this ArrayCollection object contains * obj. */ public boolean contains (Object obj) { for (int i = 0; i < mySize; i++) if (obj.equals (myStorage [i])) return true; return false; } // method contains public boolean remove(Object obj) { for(int i=0; i a=(ArrayCollection )obj; if(a.mySize != mySize) return false; return myStorage.equals(a.myStorage)&&((Integer)mySize).equals(a.mySize); } // method equals 由于字符限制,给出的被测试类里很多方法和抛出异常都省略。可以出现问题的地方只可能在我写的方法remove(),equals()里面和JUNIT测试里。 请帮我看看那错了,测试的结果不管加多少@test都只显示测试了一个。并且出现错误: Tests failed = [initializationError(ArrayCollection): No runnable methods] 展开
全部评论(3条)
热门问答
- 以下junit测试代码有错误,不知道哪里错了
- 这是JUNIT测试代码: import static org.junit.Assert.*; import 和 main 等前面的全部省略。。下面开始: protected ArrayCollection
AC; @Before public void runBeforeEveryTest(){ AC = new ArrayCollection(); AC.myStorage = (E[]) new Objec... 这是JUNIT测试代码: import static org.junit.Assert.*; import 和 main 等前面的全部省略。。下面开始: protected ArrayCollection AC; @Before public void runBeforeEveryTest(){ AC = new ArrayCollection(); AC.myStorage = (E[]) new Object [10]; AC.mySize = 0; AC.add((E) "April"); AC.add((E) "Bob"); AC.add((E) "Cathy"); } @Test public void testRemove() { for (Iterator it = AC.iterator(); it.hasNext();) { String index = (String)it.next(); if (index=="Bob"){ it.remove(); assertTrue(AC.remove("Bob")); } } } @Test public void testEqualsObject() { boolean expected = true; ArrayCollection AC_new = new ArrayCollection(); AC_new.add((E) "April"); AC_new.add((E) "Bob"); AC_new.add((E) "Cathy"); assertEquals(expected, AC_new.equals(AC)); } 下面的是被测试的类, 其中的boolean remove()和equals()方法是我自己写的,其他的是题目给出的。 public class ArrayCollection implements Collection { protected E[] myStorage; protected int mySize; public ArrayCollection() { myStorage = (E[]) new Object [10]; mySize = 0; } public String toString() { String result = ""; for (int i = 0; i < mySize; i++) result += myStorage [i] + "\n"; return result; } // method toString /** * Checks if this ArrayCollection object is empty. * * @return a boolean indicating whether this ArrayCollection object is empty or not. */ public boolean isEmpty() { return mySize == 0; } // method isEmpty /** * Checks if this ArrayCollection object contains a certain element. * * @param obj an Object that will be checked for. * * @return a boolean indicating whether this ArrayCollection object contains * obj. */ public boolean contains (Object obj) { for (int i = 0; i < mySize; i++) if (obj.equals (myStorage [i])) return true; return false; } // method contains public boolean remove(Object obj) { for(int i=0; i a=(ArrayCollection )obj; if(a.mySize != mySize) return false; return myStorage.equals(a.myStorage)&&((Integer)mySize).equals(a.mySize); } // method equals 由于字符限制,给出的被测试类里很多方法和抛出异常都省略。可以出现问题的地方只可能在我写的方法remove(),equals()里面和JUNIT测试里。 请帮我看看那错了,测试的结果不管加多少@test都只显示测试了一个。并且出现错误: Tests failed = [initializationError(ArrayCollection): No runnable methods] 展开
- 用junit怎么自动生成测试代码
- 如何使用Junit测试使用Spring框架的代码
- junit找不到测试类,Junit测试类里面有多个test,每个test之间
- 如何使用junit编写测试类
- 如何使用junit编写测试类
- myeclipse怎么使用junit测试接口
- 如何使用eclipse进行junit测试
- Eclipse中怎么使用junit测试
- 如何使用eclipse进行junit测试
- 不知道哪里有卖防毒面具的?
- 什么是测试代码
- 什么是测试代码... 什么是测试代码 展开
- 测试卡代码什么意思
- 测试卡说明书我有,上面写着代码的解释,可如何排除它出现的故障那!~~比如C1是内存的问题!~那C2====代码又是什么的问题那???帮忙解决一下谢谢我要的是如何排除故障不是要代码的解... 测试卡说明书我有,上面写着代码的解释,可如何排除它出现的故障那!~~ 比如C1是内存的问题!~那C2====代码又是什么的问题那??? 帮忙解决一下 谢谢 我要的是如何排除故障不是要代码的解释 展开
- junit对一个类进行一次测试
- 对junit4.0单元测试有点疑惑,假设某个类中有许多方法,用@Test注解去进行测试,那么如何一次性测完?我知道在outline窗口中有对单个方法中进行测试的,但是,如果方法过多那还这样子不是很麻烦吗?有没有一次测完并且能够定位到哪个方法出错的,类似junit3的... 对junit4.0单元测试有点疑惑,假设某个类中有许多方法,用@Test注解去进行测试,那么如何一次性测完?我知道在outline窗口中有对单个方法中进行测试的,但是,如果方法过多那还这样子不是很麻烦吗?有没有一次测完并且能够定位到哪个方法出错的,类似junit3的suite.addTest()可以增加的那种,我想这也是我搞不懂@Suite注解一次测试的一个原因吧,我感觉的我的问题有点奇怪,但是希望明白的可以说一下 展开
- Junit测试类中方法顺序打乱
- Junit中测试类中的方法顺序本来是A B C的,可以执行测试,类中的方法顺序就打乱了,测试也就出错,求大神指
- junit测试为什么会执行所有方法
- 关于植物组织培养内容,以下说法错误的是
- 关于植物组织培养内容,以下说法错误的是()A.一般来说容易进行无性生殖的植物,也容易进行组织培养B.对菊花茎段进行组织培养,不加植物激素也能成功C.接种后的锥形瓶放在无菌箱中,... 关于植物组织培养内容,以下说法错误的是( ) A.一般来说容易进行无性生殖的植物,也容易进行组织培养 B.对菊花茎段进行组织培养,不加植物激素也能成功 C.接种后的锥形瓶放在无菌箱中,给予适宜的温度和光照即可 D.移栽生根的试管苗之前,先打开瓶口,让试管苗在培养间生长几日 C为什么不对 D为什么对 谢谢。 展开
- 这个分液漏斗萃取振荡操作哪里错了??
- 一个555的信号发生器。求解 哪里错了
- 一个555的信号发生器。求解 哪里错了
1月突出贡献榜
推荐主页
最新话题
-
- #八一建军节——科技铸盾,仪器护航#
- 如何选择到合适的磷青铜绞线?磷青铜绞线的质量...如何选择到合适的磷青铜绞线?磷青铜绞线的质量解析和如何选择到合适的绞线?磷青铜绞线是一种特殊的铜合金导线,由铜、锡和磷等元素组成,具有很好的机械性能、电气性能和耐腐蚀性。磷青铜绞线基本定义与特性:磷青铜是铜与锡、磷的合金,质地坚硬,可制弹簧。典型成分为铜(90%)、锡(6-9%)及磷(0.03-0.6%)锡元素提升合金的强度和耐腐蚀性,磷则细化晶粒、增强耐磨性铸造性能。耐磨性:表面氧化层使其在特殊环境下耐腐蚀,使用寿命长导电性:保持铜很好导电性能的同时有化电子传输路径非铁磁性:不含铁元素,避免在强磁场环境中产生额外能量损耗弹性:受到外力作用时能迅速恢复原状
- 八一建军节 铁血铸军魂













参与评论
登录后参与评论