kotlin-fixture Kotlin自动化测试数据生成库

自动生成 Kotlin 测试数据的烦恼?试试kotlin-fixture吧,灵感来自.NET 的 AutoFixture,用起来还蛮顺手的。

Kotlin 的自动化测试数据生成一直挺让人头大的,是对象属性多、层级深的时候。kotlin-fixture就像个“测试数据工厂”,fixture.create()一行代码就能整出一份完整的对象,省心。

基本类型、枚举、集合、甚至sealed class,都能生成。想自定义生成规则?也能搞,比如实现ISpecimenBuilder接口或者用FixtureCustomization来包装一下,扩展性还不错。

你也可以用fixture.fill()快速填满已有对象,适合已有数据结构的补全操作。配合FixtureRule,每次测试前自动重置数据,干净整洁不串数据。

Spock 也能用,对混用 Groovy 和 Kotlin 的项目挺友好。如果你项目里有复杂数据结构、还不想手动构建一堆 mock,那这个库真的可以试试。

对了,文档也比较清晰,配合Kotlin 构建器类Spek 测试框架这些工具用,组合拳效果更好。

如果你常写测试代码、又烦配置测试数据,kotlin-fixture真的是个不错的帮手,装上就知道爽在哪了。

zip
kotlin-fixture.zip 预估大小:84个文件
folder
kotlin-fixture-master 文件夹
file
.gitignore 1008B
folder
sample 文件夹
file
.gitignore 7B
file
build.gradle 1KB
folder
src 文件夹
folder
androidTest 文件夹
folder
java 文件夹
folder
com 文件夹
folder
marcellogalhardo 文件夹
folder
fixture 文件夹
file
ExampleInstrumentedTest.kt 675B
folder
main 文件夹
file
AndroidManifest.xml 750B
folder
res 文件夹
folder
mipmap-xhdpi 文件夹
file
ic_launcher_round.png 7KB
file
ic_launcher.png 4KB
folder
mipmap-mdpi 文件夹
file
ic_launcher_round.png 3KB
file
ic_launcher.png 2KB
folder
layout 文件夹
file
activity_main.xml 815B
folder
mipmap-xxhdpi 文件夹
file
ic_launcher_round.png 10KB
file
ic_launcher.png 6KB
folder
drawable 文件夹
file
ic_launcher_background.xml 5KB
folder
mipmap-anydpi-v26 文件夹
file
ic_launcher_round.xml 272B
file
ic_launcher.xml 272B
folder
drawable-v24 文件夹
file
ic_launcher_foreground.xml 2KB
folder
mipmap-hdpi 文件夹
file
ic_launcher_round.png 5KB
file
ic_launcher.png 3KB
folder
mipmap-xxxhdpi 文件夹
file
ic_launcher_round.png 15KB
file
ic_launcher.png 9KB
folder
values 文件夹
file
strings.xml 78B
file
colors.xml 208B
file
styles.xml 383B
folder
java 文件夹
folder
com 文件夹
folder
marcellogalhardo 文件夹
folder
fixture 文件夹
file
MainActivity.kt 2KB
folder
test 文件夹
folder
java 文件夹
folder
com 文件夹
folder
marcellogalhardo 文件夹
folder
fixture 文件夹
file
ExampleUnitTest.kt 353B
file
proguard-rules.pro 751B
file
settings.gradle 36B
file
build.gradle 968B
file
.detekt.yml 14KB
file
.travis.yml 247B
file
gradlew 5KB
file
LICENSE 1KB
folder
.github 文件夹
folder
ISSUE_TEMPLATE 文件夹
file
bug_report.md 834B
file
feature_request.md 595B
file
README.md 7KB
file
gradlew.bat 2KB
file
gradle.properties 1KB
folder
gradle 文件夹
folder
wrapper 文件夹
file
gradle-wrapper.properties 233B
file
gradle-wrapper.jar 53KB
folder
kotlin-fixture 文件夹
file
build.gradle 585B
folder
src 文件夹
folder
main 文件夹
folder
java 文件夹
folder
com 文件夹
folder
marcellogalhardo 文件夹
folder
fixture 文件夹
folder
resolver 文件夹
file
CompositeResolver.kt 708B
folder
type 文件夹
file
InterfaceTypeResolver.kt 1KB
file
ObjectTypeResolver.kt 529B
file
AbstractClassTypeResolver.kt 561B
file
ClassTypeResolver.kt 992B
file
IntTypeResolver.kt 619B
file
LongTypeResolver.kt 619B
file
SealedClassTypeResolver.kt 796B
file
BooleanTypeResolver.kt 519B
file
MapTypeResolver.kt 1KB
file
FloatTypeResolver.kt 513B
file
DoubleTypeResolver.kt 628B
file
CharTypeResolver.kt 619B
file
ListTypeResolver.kt 961B
file
StringTypeResolver.kt 516B
folder
param 文件夹
file
ClassParamResolver.kt 594B
file
TypeParamResolver.kt 1KB
file
SimpleResolver.kt 575B
file
FixtureBuilder.kt 509B
file
DefaultFixture.kt 846B
file
FixtureRandom.kt 971B
file
FixtureRegistry.kt 333B
file
KTypes.kt 3KB
file
FixtureConfigs.kt 280B
file
FixtureExceptions.kt 426B
file
Fixture.kt 374B
file
FixtureContext.kt 1KB
file
FixtureResolver.kt 2KB
file
DefaultRandom.kt 1KB
folder
test 文件夹
folder
java 文件夹
folder
com 文件夹
folder
marcellogalhardo 文件夹
folder
fixture 文件夹
folder
resolver 文件夹
file
CompositeResolverTest.kt 1KB
file
SimpleResolverTest.kt 1KB
folder
type 文件夹
file
InterfaceTypeResolverTest.kt 1KB
file
ClassTypeResolverTest.kt 2KB
folder
param 文件夹
file
ClassParamResolverTest.kt 2KB
file
TypeParamResolverTest.kt 2KB
file
FixtureRegistryTest.kt 887B
folder
utils 文件夹
file
TestDefinitions.kt 940B
file
TestFixture.kt 834B
file
TestResolver.kt 377B
file
FixtureRandomTest.kt 5KB
file
FixtureTest.kt 1KB
file
KTypesTest.kt 1KB
file
FixtureBuilderTest.kt 6KB
file
detekt.gradle 150B
...
zip 文件大小:174.15KB