亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

發生java.lang.NullPointerException的錯誤?咋整?

發生java.lang.NullPointerException的錯誤?咋整?

哆啦的時光機 2022-12-17 22:17:06
實例類:package com.mypackage.junittest;public class Calculator {private static int result; // 靜態變量,用于存儲運行結果public void add(int n) {result = result + n;}public void substract(int n) {result = result - 1; // Bug: 正確的應該是 result =result-n}public void multiply(int n) {} // 此方法尚未寫好public void divide(int n) {result = result / n;}public void square(int n) {result = n * n;}public void squareRoot(int n) {for (;;); // Bug : 死循環}public void clear() { // 將結果清零result = 0;}public int getResult() {return result;}}==================================================測試類:package com.mypackage.junittest;import static org.junit.Assert.assertEquals;import org.junit.Before;import org.junit.Ignore;import org.junit.Test;public class CalculatorTest {private static Calculator calculator = new Calculator();@Beforepublic void setUp() throws Exception {calculator.clear();}@Testpublic void testAdd() {calculator.add(2);calculator.add(3);assertEquals(5, calculator.getResult());}@Testpublic void testSubstract() {calculator.add(10);calculator.substract(2);assertEquals(8, calculator.getResult());}@Testpublic void testDivide() {calculator.add(8);calculator.divide(2);assertEquals(4, calculator.getResult());}}
查看完整描述

2 回答

?
繁星點點滴滴

TA貢獻1803條經驗 獲得超3個贊

排查問題
  1,查看各位引用,Appium,selenium,junit的包都包含了,在Build path里面設置正確,此處沒有問題。
  2,APK的各種情況,版本安裝是否正確,要測試的和提供的APK的版本是否一致。經查看,是一致的,此處Pass!
  3,Capabilities各種參數的設置,對比了網上提供的實例和我以前用Python寫的,運行成功的測試用例的設置,發現完全一致,也沒有任何問題。
  4,現在只好查看一下Eclipse的問題了,查看WorkSpace下的.metadata文件夾下的.log文件,看一下是否存在問題。
  經查看,發現有org.eclipse.jdt.junit相關的錯誤,于是我就在Eclipse下查找這個jdt.junit相關的插件,發現沒有找到,現在問題就定位到了,肯定是這個插件出問題了??!
  解決問題
  問題描述:Eclipse下缺少org.eclipse.jdt.junit相關的插件,造成用junit運行測試用例的時候,報空指針的錯誤?。?!
  網上查看了一下JDT相關的東西,發現中能是我這個Eclipse下載的是ADT版本的,當時用來做Appium python版和Robotium的測試的。這個版本的Eclipse沒有SDK。于是去網上下載了一個eclipse-jee-luna-SR1-win32-x86_64,解壓后,再按Appium java環境搭建的方法配置了一下,寫了個Demo再次運行,成功??!

順便,android提供的的eclipes無法使用junit4,也需要重新下載。望采納。

查看完整回答
反對 回復 2022-12-21
?
繁星coding

TA貢獻1797條經驗 獲得超4個贊

剛才測試了你的代碼,3個test都試了,只有第二個由于有語法錯誤沒運行,第1個和第3個test都沒有問題。你報這種錯誤,很可能是環境沒有配置好,你可以從以下兩個方面考慮
1.是否安裝了正確的junit包
2.是否將android junit包誤當作java的junit包使用了。如果你沒有裝android的環境,很可能是第一種原因。

查看完整回答
反對 回復 2022-12-21
  • 2 回答
  • 0 關注
  • 155 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號