我正在权衡专业人士和在独立软件包中测试我的ServiceProviders的能力。
由于laravel应用程序不是包的依赖项,我不认为我应该/可以编写集成测试。
但有时我会在use语句中输入拼写错误,导致我为这些小错误创建一个全新的版本。您是否对ServiceProvider绑定进行单元测试以获得额外的代码覆盖率?
模拟闭包只是看起来很痛苦,它看起来更像是比实际测试更昂贵的拼写检查。
答案 0 :(得分:1)
我实际上写了a package与L 5.1 LTS紧密结合。为了测试所有功能而不依赖于Mocks(主要是因为它也写了webserver文件,这也很麻烦...)我确实包括整个框架来测试集成。
结果在one of my unit tests我甚至测试ServiceProviders是否已经正确加载并且在继续进行任何进一步测试之前是否可用。
尽管最佳做法是制作与框架无关的软件包,但有时候知道软件包实际上仍在继续处理您认为重要的框架可能会很好。