我刚刚开始使用F#,这是我的第一个功能语言。我已经准备专门与C#工作,并享受很多如何F#引导我重新思考我如何编写代码。一个方面我发现有点迷惑的是写代码的过程中的变化。我一直在使用TDD多年的C#现在,真的很感激有单元测试知道我在哪里。
到目前为止,我使用F#的过程一直是写一些功能,与交互式控制台一起玩,直到我“合理地”确定它们工作,以及调整&结合。这对于像欧拉项目这样的小规模问题很有效,但我不能想象这样大的东西。
人们如何接近单元测试并为F#程序构建测试套件?是否有相当于TDD?任何指针或想法赞赏。
测试驱动的开发人员应该在功能语言如F#中感觉自如:提供确定性可重复结果的小函数完全适合单元测试。还有F#语言的功能,便于编写测试。例如,
Object Expressions.你可以很容易地写作假设的功能,作为他们的输入接口类型。
如果有什么,F#是一流的面向对象的语言,你可以使用在C#中做TDD时使用的相同的工具和技巧。还有一些测试工具写在或专门为F#:
> NaturalSpec
> FsCheck
> FsTest
> FsUnit
Matthew Podwysocki在功能语言中写了一个伟大的series单元测试。鲍伯叔叔也写了一篇引人深思的文章here。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。