Formación intermedia de la Universidad Sun Yat-sen - Documento de prueba

documentación de prueba

1. Artículos de prueba

Una clase llamada Jumper. Este actor puede avanzar dos celdas en cada movimiento. “Salta” sobre rocas y flores. No deja nada detrás cuando salta.

2. Entorno de prueba

JUnit versión 4.10

versión de Java 1.8.0_181

Al utilizar Junit para las pruebas y ejecutar los casos de prueba que se han escrito, cada caso se escribe de acuerdo con el contenido de prueba correspondiente. Después de ejecutar el programa de prueba, juzgue si el resultado del programa es el mismo que el esperado. Si es consistente, significa que el programa es correcto; si es inconsistente, significa que el programa tiene errores dentro del alcance de la prueba. . En esta prueba, el programa se prueba creando actores de diferentes tipos y ubicaciones.

3. Casos de prueba

1. Pruebe el movimiento de dos espacios de Jumper

inicialización:

Cree un puente con ubicación (0, 0) y dirección este (Ubicación.ESTE).

esperar:

Después de ejecutar uno act(), la posición del Jumper pasa a ser (0, 2)

Código:

public void testJumperMove() {
    ActorWorld world = new ActorWorld();
    Jumper jumper = new Jumper();
    //set direction to east
    jumper.setDirection(Location.EAST);
    world.add(new Location(0, 0), jumper);
    jumper.act();
    assertEquals(0, jumper.getLocation().getRow());
    assertEquals(2, jumper.getLocation().getCol());
  }
2. Prueba Jumper para saltar obstáculos.

inicialización:

Cree un puente con ubicación (0, 0) y dirección este (Ubicación.ESTE).

Crea una roca en la posición (0, 1).

esperar:

Después de ejecutar uno act(), la posición del Jumper pasa a ser (0, 2)

Código:

public void testJumperTurn() {
    ActorWorld world = new ActorWorld();
    Jumper jumper = new Jumper();
    Rock rock = new Rock();
    jumper.setDirection(Location.EAST);
    world.add(new Location(0, 0), jumper);
    world.add(new Location(0, 2), rock);
    jumper.act();
    rock.act();
    assertEquals(Location.SOUTHEAST, jumper.getDirection());
  }
3. Pruebe el puente para girar cuando esté bloqueado

inicialización:

Cree un puente con ubicación (0, 0) y dirección este (Ubicación.ESTE).

Crea una roca en la posición (0, 2).

esperar:

act()Después de ejecutar un

La posición del Jumper no cambia a (0, 0)

La dirección de Jumperd cambia hacia el sureste (Ubicación.SURESTE)

Código:

public void testJumperTurn() {
    ActorWorld world = new ActorWorld();
    Jumper jumper = new Jumper();
    Rock rock = new Rock();
    jumper.setDirection(Location.EAST);
    world.add(new Location(0, 0), jumper);
    world.add(new Location(0, 2), rock);
    jumper.act();
    rock.act();
    assertEquals(Location.SOUTHEAST, jumper.getDirection());
    assertEquals(0, jumper.getLocation().getRow());
    assertEquals(0, jumper.getLocation().getCol());
  }
4. Pruebe la dirección del límite frente a Jumer.

inicialización:

Cree un Jumper con ubicación (0, 0) y dirección oeste (Ubicación.OESTE).

esperar:

act()Después de ejecutar un

La posición del Jumper no cambia a (0, 0)

La dirección de Jumperd cambia hacia el noroeste (Ubicación.NOROESTE)

Código:

public void testJumperEdge() {
      ActorWorld world = new ActorWorld();
      Jumper jumper = new Jumper();
      world.add(new Location(0, 0), jumper);
      jumper.setDirection(Location.WEST);
      jumper.act();
      assertEquals(Location.NORTHWEST, jumper.getDirection());
      assertEquals(0, jumper.getLocation().getRow());
      assertEquals(0, jumper.getLocation().getCol());
  }
5. Pruebe el giro de Jumer hacia el límite después de moverse un espacio.

inicialización:

Cree un Jumper con ubicación (0, 1) y dirección oeste (Ubicación.OESTE).

esperar:

act()Después de ejecutar un

La posición del Jumper no cambia a (0, 1)

La dirección de Jumperd cambia hacia el noroeste (Ubicación.NOROESTE)

Código:

public void testJumperOut() {
      ActorWorld world = new ActorWorld();
      Jumper jumper = new Jumper();
      world.add(new Location(0, 1), jumper);
      jumper.setDirection(Location.WEST);
      jumper.act();
      assertEquals(Location.NORTHWEST, jumper.getDirection());
      assertEquals(0, jumper.getLocation().getRow());
      assertEquals(1, jumper.getLocation().getCol());
  }

4. Resultados experimentales

Ejecute el comando (con el archivo fuente como directorio actual):

//编译
javac -classpath .:./../../gridworld.jar:./../../junit.jar JumperTest.java 
//运行测试
java -classpath .:./../../gridworld.jar:./../../junit.jar org.junit.runner.JUnitCore JumperTest

Resultados de la prueba
Insertar descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/qq_40135006/article/details/103223386
Recomendado
Clasificación