![]() |
1
11
TDD和projecteuler分配不一定很好地结合在一起。首先也是最重要的,TDD不会帮助您解决任何项目Euler(PE)问题。这让我想起了一个众所周知的尝试,一个家伙试图通过 using TDD . TDD不是一种设计技术。如果适用的话,它可能非常有用,但不要把它看作是一颗灵丹妙药。 一个PE问题通常涉及到一些以一个数字结束的繁重计算,这就是答案。要有意识地应用TDD,我建议你将它用于数学实用程序,作为你解决体育问题努力的一部分。例如,MyUtils模块For PE包含用于计算素数、将数字拆分为数字、检查回文等的函数。此模块有一组测试,因为这些函数 一般的 足够测试了。PE解决方案本身没有测试——他们唯一需要的真正测试是最终生成正确答案。 |
![]() |
2
4
欧拉项目网站上的问题页面有一个输入来检查你的答案。这就是我真正需要的。 |
![]() |
3
2
是的,您可以根据单元测试提供的测试数据设置单元测试。 assert '针对示例数据的语句。它工作得很好,而且时间开销较少。此外,当您只需要知道问题30的新更改是否正确时,不需要运行整个测试套件。 |
![]() |
4
1
单元测试就是答案。 这些问题通常非常简单(不是从难度上来说,而是至少从代码布局上来说),将它们分解成各种方法/类通常是愚蠢的。 |
![]() |
5
1
我知道我迟到了3年,但我想我会分享我是如何通过TDD接近欧拉项目。 我在用Python工作,如果这对你很重要的话。 我要做的是:
然后我坐下来,写下一个或多个除数的三角数。一旦测试通过,我就会努力解决真正的问题;如果可行的话,我会用真实答案更新我的测试题 巴姆 |
![]() |
7
0
我想分享一下我的方法: Project Euler section ,遵循TDD范式。它使用 测试用例。它们提供了一个示例测试用例来帮助您开始。我离线开发并编写一些其他测试用例来验证我的解决方案,以获得更快更精确的反馈。
JavaScript测试示例:
虽然Hackerrank使用stdin和stdout,但我仍然尝试将主代码隔离到函数中,并使用函数式编程。 |
![]() |
mg610 · 如何开始C++单元测试 2 年前 |
![]() |
Phil Gunning · 使用嵌套函数更改进行模拟测试 2 年前 |
![]() |
shilin agre · 在Python中测试修饰函数 2 年前 |
![]() |
SlipScout · Unittest只传递单个值,而不是获取多个值 2 年前 |
![]() |
Alex · 从实际对象的实例返回默认模拟结果 2 年前 |