JUnit initializationError - статический метод - PullRequest
0 голосов
/ 30 апреля 2018

Мой профессор заставил нас использовать служебный класс со всеми статическими методами. Когда я пытаюсь проверить методы в тесте JUnit, я получаю ошибку инициализации. Я включил код и фотографии кода ниже ошибки и того, что я считаю путем сборки. Причина, по которой я включил фотографии, заключалась в том, чтобы показать путь сборки в случае, если это было причиной проблемы. Как вы можете видеть из кода на картинках, я еще не проводил никаких тестов.

Может кто-нибудь помочь мне точно определить ошибку и дать мне знать, как тестировать статические методы служебного класса в JUnit?

Спасибо.

public class MorseCodeTest {

@Test
public static void testGetEncodingMap() {

    //https://stackoverflow.com/questions/1293337/how-can-i-test-final-and-static-methods-of-a-utility-project

    Map<Character, String> map = new HashMap<Character, String>();
    map = MorseCode.getEncodingMap();

    for (Map.Entry<Character, String> entry : map.entrySet()) {
        System.out.println(entry.getKey() + " | " + entry.getValue());

    }



} 


/**
 * 
 * @return the mapping of encodings from each character to its morse code representation.
 */
public static Map<Character, String> getEncodingMap(){

    Map<Character,String> tmpMap = new HashMap<Character,String>();

    Set<Map.Entry<Character,String>> mapValues = encodeMappings.entrySet(); // this is the Entry interface inside of the Map interface
    //the entrySet() method returns the set of entries aka the set of all key-value pairs

    //deep copy encodeTree
    for(Map.Entry<Character,String> entry : mapValues){
        tmpMap.put(entry.getKey(), entry.getValue());
    } //end of enhanced for-loop


    return tmpMap;

} //end of getEncodingMap method

1 Ответ

0 голосов
/ 30 апреля 2018

Ваш тестовый метод не должен быть статическим, чтобы проверить статический getEncodingMap. Метод test является собственным методом и не имеет ничего общего с тем, что getEncodingMap является статическим.

@Test public void testGetEncodingMap() { *Your code here* }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...