我在哪里可以找到这样的练习?也许我的想法不正确。我是否应该不做任何练习就读这些书?但是我觉得这是不对的。
你能帮我吗?
我需要练习编写单元测试,功能测试,集成测试,回归测试等。
我正在阅读David Sale撰写的“测试Python:应用单元测试,TDD,BDD和验收测试”这本书。我还买了哈里·佩西瓦尔(Harry Percival)的书《用Python测试驱动的开发》。但是这些书就像指南。他们不提供任何练习。我该怎么办?我想将来申请测试员职位。至少我会尝试。
#1 楼
我的建议是寻找程序和测验的程序,并编写程序和测验中描述的程序,但是要通过编写针对它们的测试用例来做到这一点。尝试在应用程序代码之前编写测试用例。如果不能这样做,请在编写完应用程序功能的每一部分后尝试编写测试。确保所有应用程序代码均已通过测试。示例站点:
http://programmingzen.com/15-sites-for-programming-exercises/http :// https://rubyquiz.com/
可以在https://softwareengineering.stackexchange.com/a/764/34069
上找到大量练习。
评论
编程挑战不属于SQA SE,测试代码属于。
–Rsf
17年5月12日在7:35
是的,我知道@Rsf的意思是使用这些练习,同时您也可以编写测试。因此,tdd / bdd我更新了答案以更清楚
–迈克尔·杜兰特(Michael Durrant)
17年5月12日在9:45
收回我的不赞成票,但OP仍将如何检查他的测试?您始终可以构建自己的项目并对其进行测试,但这不是学习的简单有效方法
–Rsf
17年5月12日在13:34
在编写测试之前,OP需要成为一名合格的程序员。 OP至少对掌握手艺感兴趣。如此多的其他发帖人不花力气去熟练掌握这项技术,因此我们对“如何阅读文本”,“如何遍历列表”等问题有很多疑问。如果这些其他发帖人烦恼至少要学习基础知识就工艺而言(很明显OP会尝试),SQA SE中的问题质量将大大提高。因此,我不明白您为什么对这个问题感到沮丧。考虑到我们的听众,这是一个非常有效的问题。应要求阅读每张新海报。
–Peter M.-代表莫妮卡(Monica)
17年5月12日14:00
您如何编写好的测试?您怎么知道您编写的测试是否良好?这些是好问题,恕我直言。我想我会尝试为此单独提出一个问题?
–迈克尔·杜兰特(Michael Durrant)
17年5月12日在14:20
#2 楼
感谢您的询问!您在问一个非常正确的问题。几年前,我为python学习者提供了一个完全包含此类资源的小型Wiki:
http://learnpython.pbworks.com
它有训练任务的部分。
https://projecteuler.net/作为开始,http://www.pythonchallenge.com/对于沙漠。
考虑获取《程序员的练习曲》并解决那里的一些东西。如果找不到或买不起(可悲的是,它很古老,没有什么比以前写的东西)的了,那么从那本书的Wiki上可以看到很少的任务。
如今,这样的小型训练任务不被称为“练习曲”(使用80年代的钢琴课术语),而是“ katas”,其中kata来自武术(现在凉爽得多)-参见http:/ /codekata.com/以及kata和技能习得
#3 楼
这是一个很好的问题,很容易找到在线资源来练习编程技能,但是用于提高和练习测试技能的资源却很少。但是,您可以在很多地方了解有关现有测试框架的信息。我想(而且我自己从来没有机会做得很好),最好的办法是作为一个开源项目加入。测试员。通过向他人学习或进行手动测试来慢慢开始,然后逐渐开始贡献代码。
评论
在加入任何项目之前,人们需要学习基础知识。像OP这样的培训任务正在要求(并且我的答案提供了)参加之后才能参加。就像这里我们不想解释如何编写循环一样,任何项目中的开发人员也都没有时间这样做。但是,诸如Euler项目之类的简单任务将训练您做到这一点。
–Peter M.-代表莫妮卡(Monica)
17年5月12日20:00
我不同意,但是这种培训不属于该SE。
–Rsf
17年5月15日在7:27
我同意你的看法,它不属于这里,但听众却不这么认为,每天我们都会得到一个问题,那就是问问OP是否拥有微不足道的技能和经验。我们必须与我们拥有的参与者,而不是我们希望拥有的参与者建立这个社区。
–Peter M.-代表莫妮卡(Monica)
17年5月15日在14:04
评论
您要寻找哪种类型的测试练习?单元测试练习?边界+等价类练习?可悲的是,这个问题非常模糊。@Chris Kenst我编辑了我的问题。
这个问题应该被接受,并要求所有新的海报阅读。遵循此建议将消除此处提出的最棘手的问题(“如何遍历列表”)的30%,并显着提高问题的质量。
好问题!