点击0.2.2

Taps 0.2.2

测试已测试
语言语言 SwiftSwift
许可协议 MIT
发布最后发布2017年1月
SwiftSwift版本3.0
SPM支持SPM

Valentin Knabel维护。



 
依赖项
RxSwift~> 3.0
RxBlocking~> 3.0
TestHarness= 0.0.1
 

Taps 0.2.2

Taps是一个轻量级的单元测试库,针对异步代码进行了优化。它使用RxSwift实现,因此可以轻松测试自己的Observables,但无需了解RxSwift。

由于生成的输出与TAP13兼容,因此可以轻松自定义。您可以使用Taps集成的TapsHarness,或者使用pod TestHarness来自定义输出。

您可以在此处找到自动生成的文档。

示例

Taps假设所有测试都是并发的。这意味着运行它们非常容易

taps.test("test async completion", timeout: 0.1) { t in
  DispatchQueue.global().async {
    t.pass()
    t.end() // this terminates the test
  }
}

但测试同步代码时,不必总是强制调用t.end(),可以为所有预期的测试添加一个计划。

taps.test("test does not throw on return", plan: 1) { t in
  t.doesThrow("does throw is ok when throwing") {
    return 1
  }
}

由于Taps底层使用RxSwift,因此在测试Observable时表现尤为出色。如果测试的Observable完成,测试将自动完成!

tape.test("just emits", timeout: 0.01) { t in
  Observable.just(3)
    .map { $0 + 1 }
    .test(
      onNext: t.notEqual(to: 3, "just emits 3"),
      onError: t.fail(with: "just won't throw'")
    )
}

许可协议

Finite遵循MIT许可协议。有关更多信息,请参阅LICENSE文件。