Wenn bei der Maven-Verpackung ein Unit-Test-Fehler auftritt, müssen Sie den Unit-Test überspringen. Um das Packen zu beschleunigen, muss auch auf Unit-Tests verzichtet werden.
Um die Springboot-Anwendung in einer formalen Umgebung auszuführen, müssen Sie sie zuerst packen und dann java -jar xx.jar
verwenden, um unser Projekt auszuführen. java -jar xx.jar
就能运行我们的项目。
我们平时使用的在开发中使用的是开发或测试的数据库,和生产上面的一般是隔离的,意味着打包的时候需要激活生产的配置文件,但是我们不一定有访问生产库的权限,此时我们直接打包就会出现问题。当我们直接点击上面的package的时候他会激活单元测试,需要测试通过以后才能打包,但是很显然测是不能通过的,因为我激活了生产的配置但是我并没有访问上产库的权限,此时就会陷入一直打包却打不完的感觉,这就需要我们打包时跳过测试。那怎么跳过测试呢?下面我们探讨一下此问题的解决方法:
我们可以通过使用命令将项目打包,添加跳过测试的命令就可以了,可以用两种命令来跳过测试:
mvn package -DskipTests=true
-DskipTests=true
不执行测试用例,但编译测试用例类生成相应的class文件至 target/test-classes 下。
mvn package -Dmaven.test.skip=true
-Dmaven.test.skip=true
不执行测试用例,也不编译测试用例类。
在使用 mvn package
进行编译、打包时,Maven会执行 src/test/java
中的 JUnit 测试用例,有时为了跳过测试,会使用参数 -DskipTests=true
和 -Dmaven.test.skip=true
,这两个参数的主要区别是:
使用 -Dmaven.test.skip=true
,不但跳过单元测试的运行,也跳过测试代码的编译;
使用 -DskipTests=true
跳过单元测试,但是会继续编译。
可以在 pom.xml 中添加如下配置来跳过测试:
<build> <plugins> <!-- maven 打包时跳过测试 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <skip>true</skip> </configuration> </plugin> </plugins> </build>
Maven命令栏的工具栏有下图中的图标,这个图标就是 Skip Tests
。点击选中,再用 LifeStyle 中的打包就会跳过测试。注:因为我的IDEA是2022的版本,图标可能和以前的版本有些许区别,以前的版本应该是一个蓝色的圆圈里面带一个闪电。
打开配置,找到 Build,Exxcution,Deployment –> Maven Tools –> Maven –> Runner,在 VM option 中添加 -Dmaven.test.skip=true
或者 -DskipTests=true
Was wir normalerweise tun Die in der Entwicklung verwendete Datenbank ist im Allgemeinen von der Produktion isoliert. Dies bedeutet, dass die Produktionskonfigurationsdatei beim Packen aktiviert werden muss, wir jedoch nicht unbedingt über die Berechtigung verfügen, auf die Produktionsbibliothek zuzugreifen. Wir können es direkt verpacken. Es werden Probleme auftreten. Wenn wir direkt auf das Paket oben klicken, wird der Unit-Test aktiviert. Der Test muss bestanden werden, bevor er gepackt werden kann. Der Test kann jedoch nicht bestanden werden, da ich die Produktionskonfiguration aktiviert habe, aber keine Zugriffsberechtigung habe In der Produktionsbibliothek haben Sie manchmal das Gefühl, dass Sie mit dem Verpacken, aber nie fertig sind, was dazu führt, dass wir beim Verpacken auf Tests verzichten müssen. Wie kann man den Test überspringen? Lassen Sie uns die Lösung für dieses Problem besprechen:
Wir können das Projekt mithilfe von Befehlen packen und einfach einen Befehl zum Überspringen des Tests hinzufügen mvn package -DskipTests=true
-DskipTests=true
führt den Testfall nicht aus, aber Kompilieren Sie die Testfallklasse, um die entsprechende Klassendatei unter Ziel/Testklassen zu generieren.
mvn package -Dmaven.test.skip=true
-Dmaven. test.skip=true
führt den Testfall nicht aus und kompiliert die Testfallklasse nicht. 🎜mvn package
zum Kompilieren und Verpacken verwendet wird, führt Maven die JUnit-Testfälle in src/test/java
aus, manchmal für To Wenn Sie Tests überspringen, werden die Parameter -DskipTests=true
und -Dmaven.test.skip=true
verwendet. Der Hauptunterschied zwischen diesen beiden Parametern ist: 🎜🎜Verwenden Sie -Dmaven.test.skip=true
, überspringt nicht nur die Ausführung von Komponententests, sondern auch die Kompilierung von Testcode;-DskipTests=true
zum Überspringen Unit-Tests, aber die Kompilierung wird fortgesetzt. 🎜🎜2. Konfigurieren Sie das Überspringen von Tests in pom.xml.🎜🎜Sie können die folgende Konfiguration in pom.xml hinzufügen, um Tests zu überspringen: 🎜rrreee🎜3. Idea Direct-Konfiguration: Die Symbolleiste der Maven-Befehlsleiste hat das Symbol im Bild Unten ist dieses Symbol Tests überspringen
. Klicken Sie zum Auswählen und verwenden Sie dann die Verpackung in LifeStyle, um den Test zu überspringen. Hinweis: Da es sich bei meiner IDEA um die Version 2022 handelt, unterscheidet sich das Symbol möglicherweise geringfügig von der vorherigen Version. Die vorherige Version sollte ein blauer Kreis mit einem Blitz darin sein. 🎜🎜🎜🎜4 Maven-Konfigurationsparameter 🎜🎜Öffnen Sie die Konfiguration, suchen Sie nach 🎜Build, Exxcution, Deployment –> VM-Optionscode> oder -DskipTests=true
können Sie Tests während des Packens überspringen. 🎜🎜🎜🎜🎜5. Öffnen Sie die Konfiguration, indem Sie die Einstellungen ändern 🎜🎜, suchen Sie nach 🎜Build, Exxcution, Deployment –> Maven > Runner🎜 und aktivieren Sie die Option „Test überspringen“. . 🎜🎜🎜🎜Das obige ist der detaillierte Inhalt vonSo überspringen Sie Tests in der Springboot Maven-Verpackung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!