[JAVA] "Développement piloté par les tests" à partir du terminal Création d'un environnement de copie

Calendrier de l'Avent Classi 2017 C'est l'article du 13e jour. Je suis @kasaharu, un ingénieur front-end. Ceci est le deuxième article pour la première fois en 12 jours.

Récemment en interne ["test drive development"](https://www.amazon.co.jp/%E3%83%86%E3%82%B9%E3%83%88%E9%A7%86%E5% 8B% 95% E9% 96% 8B% E7% 99% BA-Kent-Beck / dp / 4274217884) a commencé une session de lecture. (Ce n'est qu'une fois ...) J'ai entendu à l'avance que ce livre pouvait être copié, alors j'ai commencé par supposer qu'il sera copié.

À ce moment-là, il y avait un gros problème. Oui, peu importe ce que je cache, je n'ai pas d'environnement où Java s'exécute sur mon Mac! Cependant, le conflit de ne pas vouloir inclure un IDE pour la copie ...

Ainsi, le thème d'aujourd'hui est la construction d'un environnement de copie «développement piloté par les tests», qui commence au terminal!

Insérer Java

$ brew tap caskroom/cask
$ brew cask install java
$ java -version
java version "9.0.1"
Java(TM) SE Runtime Environment (build 9.0.1+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)

Insérer JUnit

bash_profile


export CLASSPATH=$HOME/sukina/basyo/junit-jupiter-api-5.0.2.jar

Essayez d'exécuter le code du chapitre 1

MoneyTest.java


package money;

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;

public class MoneyTest {
  @Test
  public void testMultiplication() {
    Dollar five = new Dollar(5);
    five.times(2);
    assertEquals(10, five.amount);
  }
}

Dollar.java


package money;

class Dollar {
  int amount;

  Dollar(int amount) {
  }

  void times(int multiplier) {
  }
}
$ javac Dollar.java MoneyTest.java
avertissement:État de la constante d'énumération inconnue.STABLE
Raison: org.apiguardian.api.API$Fichier de classe d'état introuvable
avertissement:État de la constante d'énumération inconnue.STABLE
2 avertissements
$ javac Dollar.java MoneyTest.java
(C'est parti!)
$ javac Dollar.java MoneyTest.java
MoneyTest.java:11:Erreur:Impossible de trouver le symbole
    assertEquals(10, five.amount);
                         ^
symbole:Montant variable
endroit:Variable de type Dollar cinq
1 erreur

Résumé

C'est pourquoi je suis prêt à copier sans avoir d'IDE. Je vais faire une fête de lecture!

Demain, c'est @ spin13! Restez à l'écoute!

Recommended Posts

"Développement piloté par les tests" à partir du terminal Création d'un environnement de copie
Créer un environnement pour copier le livre "Test Driven Development"
[Rails] Création d'un environnement pour le développement d'applications Web
Utilisez MailHog pour vérifier le courrier dans l'environnement de développement (à l'aide de Docker)
Procédure de création d'un environnement de développement d'applications Rails avec Docker [Rails, MySQL, Docker]