Swift-是否可以对多个类进行单元测试?

时间:2018-08-09 18:51:05

标签: swift unit-testing viper viper-architecture

我尝试为简单的模块编写诸如集成测试之类的东西,它负责文本输入及其验证。

模块看起来像这样

查看

  • func didSubmit(值:字符串)
  • func showError(文本:字符串)

演示者

  • func didSubmit(值:字符串)
  • showError(text:String)
  • processPayment(eReceipt:字符串)

交互器

  • validate(值:字符串)

工作流程非常简单-提交内容时,调用视图的didSubmit会调用演示者的didSubmit并调用交互者的validate,并且可能在交互者的函数validate内部两件事之一-演示者的调用显示错误,调用显示视图的错误,或者可以调用processPayment的processPayment

因此,我尝试编写一个单元测试,该测试从视图提交错误的值,然后声明文本错误消息。问题在于,根据测试,它永远不会改变!但是,如果我在模拟器中手动测试,我会看到文本更改。

同一时间,如果我从直接设置错误的presenter方法中调用,则断言有效。

在成功的案例中,我尝试了相同的操作-如果我是从视图或交互器启动链的,则再次尝试-它并没有成立。仅当链条有一站时。

有什么我可能做错的事情还是不打算这样工作?

0 个答案:

没有答案