Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: Aloittelijan Java testijuttu (kiire)

Slaya83 [01.06.2011 08:58:31]

#

Olen tehnyt netbeansilla softan, johon generoin testit.

Yksi testi on tämännäköinen:

/**
 * Test of refreshDepartmentDropBoxEdit method, of class DepartmentEditJPanel.
 */
   @Test
   public void testRefreshDepartmentDropBoxEdit() {
       System.out.println("refreshDepartmentDropBoxEdit");
       DepartmentEditJPanel instance = null;
       instance.refreshDepartmentDropBoxEdit();

Antaa erroria "Null pointer Exception".
Mitä tuo instance = null tekee??

Softassani haetaan tiedostosta tiedot ja päivitetään dropboxiin. refreshDepartmentDropBoxEdit();
Nyt ilmeisesti testi yrittää tehdä jotain mitä en ymmärrä. Ilmeisesti yrittää hakea tyhjiä tietoja listaan?


Tässä vielä koodi, mitä tuo refreshDepartmentDropBoxEdit() tekee:

BufferedReader input = null;
        try {
              input = new BufferedReader(new FileReader("osasto.txt")); // Read file
        }
        catch (FileNotFoundException ex) {
            Logger.getLogger(MainWindowJPanel.class.getName()).log(Level.SEVERE, null, ex);
        }
    ArrayList<String> strings = new ArrayList<String>(); // New ArrayList
        try {
            String line = null;
            while (( line = input.readLine()) != null) {
                strings.add(line); // Write line to array list
            }
         }
        catch (IOException ex) {
            Logger.getLogger(MainWindowJPanel.class.getName()).log(Level.SEVERE, null, ex);
        }
     finally {
        try {
            input.close(); // Close file
        }
        catch (IOException ex) {
            Logger.getLogger(MainWindowJPanel.class.getName()).log(Level.SEVERE, null, ex);
        }
     }

    String[] lineArray = strings.toArray(new String[]{});

    // Add ArrayList data to combobox
    jDepSelDropBox2.removeAllItems();
    Component add = add(jDepSelDropBox2);
    jDepSelDropBox2.setModel(new javax.swing.DefaultComboBoxModel(lineArray));
    jDepSelDropBox2.setBounds(50, 60, 180, 20); // Set location and size

Joten yksinkertainen kysymys... Miten saan testin menemään läpi??

The Alchemist [01.06.2011 09:03:59]

#

Otat sen nulliksi alustamisen pois ja laitat tilalle objektin. Pitäisihän sinun Java-ohjelmoinnista sen verran ymmärtää, että funktiokutsun suorittaminen null-oliossa ei johda mihinkään hyvään.

Slaya83 [01.06.2011 09:17:05]

#

En ole noita testejä ikinä tehnyt. Tein harjoitustyön kouluun ja opettaja rupesi vaatimaan noita testejä mukaan. Nyt generoin ne äkkiä ja kakkaahan siitä tuli niskaan. Sori tyhmä kysymys, mutta minkä objektin tuohon instanssiin voi laittaa?

The Alchemist [01.06.2011 09:29:53]

#

Jospa se selviäisi muuttujan tyyppiä katsomalla... En kyllä tiedä testien generoimisesta mitään, mutta varmaan generointikin on menny puihin jos testit kaatuvat tuollaisiin virheisiin. Koska testejä on erikseen vaadittu, niin liekö kannattaa edes alkaa käsin purkata niitä kasaan.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta