IDEA-Java自動生成ユニットテスト
この文章は私のJekyllブログに先発します:zhang 0 peterの個人ブログ
最近ユニットテストを書いていて、Mockを書くのにうんざりしているような気がして、既成のspringプロジェクトのユニットテスト生成ツールがあるかどうか見たいです.
ネット上でJavaユニットのテスト回答の集合を見つけました:Automatic generation of unit tests for Java?-Stack Overflow
Squaretest
公式サイト:Squaretest-Java Unit Test Generator for IntelliJ IDEA
インストール方法はIDEAカード倉庫から
使用方法:SquaretestLLC/Squaretest:the Squaretest plugin for IntelliJ IDEA
一度使った後、本当に使いやすいと感じました.特にtestファイルを書くときに自動的にテスト関数を生成して、とても使いやすいです.
Spring serviceサンプルコード:
その後、テストクラスで
本当に使いやすくて、特にsetとgetを自動的に配置して、手動で配合する必要がなくて、多くの時間を節約しました.
その他
Javaのunit test Generatorはまだたくさんありますが、ほとんどは更新されていません.
Randoop:Automatic unit test generationfor Java:最終更新時間:2020-07-28、まだ更新されているユニットテストジェネレータは少数ですが、使い勝手が悪くて試していません.
JUnitGenerator V 2.0-plugin for IntelliJ IDEA and Android Studio|JetBrains:最終更新時間:2015-05-06
CodePro Analytix/CodePlex AnalytiXは2011年にグーグルに買収されてから更新されていません.
JUnit-Tools:Eclipseのみサポート、最終更新時間:2018-11-09
EvoSuite|Automatic Test Suite Generationfor Java:最終更新時間:2018-04-06
最近ユニットテストを書いていて、Mockを書くのにうんざりしているような気がして、既成のspringプロジェクトのユニットテスト生成ツールがあるかどうか見たいです.
ネット上でJavaユニットのテスト回答の集合を見つけました:Automatic generation of unit tests for Java?-Stack Overflow
Squaretest
公式サイト:Squaretest-Java Unit Test Generator for IntelliJ IDEA
インストール方法はIDEAカード倉庫から
Squaretest
をインストールする使用方法:SquaretestLLC/Squaretest:the Squaretest plugin for IntelliJ IDEA
一度使った後、本当に使いやすいと感じました.特にtestファイルを書くときに自動的にテスト関数を生成して、とても使いやすいです.
Spring serviceサンプルコード:
import java.util.List;
import lombok.Data;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
@Service
public class springServiceImpl {
@Data
static public class Person {
private String name;
private Integer age;
}
public boolean judge(List<Person> persons) {
for (Person person : persons
) {
if (StringUtils.isBlank(person.getName()) || person.getAge() == null) {
return false;
}
}
return true;
}
}
その後、テストクラスで
public
を打つと、自動補完関数は次のようになります.@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = DemoApplication.class)
@ActiveProfiles("test")
public class springServiceImplTest {
@Autowired
private springServiceImpl springService;
@Test
public void testJudge() {
// Setup
final springServiceImpl.Person person = new springServiceImpl.Person();
person.setName("name");
person.setAge(0);
final List<springServiceImpl.Person> persons = List.of(person);
// Run the test
final boolean result = springService.judge(persons);
// Verify the results
assertTrue(result);
}
}
本当に使いやすくて、特にsetとgetを自動的に配置して、手動で配合する必要がなくて、多くの時間を節約しました.
その他
Javaのunit test Generatorはまだたくさんありますが、ほとんどは更新されていません.
Randoop:Automatic unit test generationfor Java:最終更新時間:2020-07-28、まだ更新されているユニットテストジェネレータは少数ですが、使い勝手が悪くて試していません.
JUnitGenerator V 2.0-plugin for IntelliJ IDEA and Android Studio|JetBrains:最終更新時間:2015-05-06
CodePro Analytix/CodePlex AnalytiXは2011年にグーグルに買収されてから更新されていません.
JUnit-Tools:Eclipseのみサポート、最終更新時間:2018-11-09
EvoSuite|Automatic Test Suite Generationfor Java:最終更新時間:2018-04-06