一些单元测试方面的疑问,请大家帮忙
1.在产品代码没有编写之前,写测试代码(TDD),应该也属于单元测试的范畴,但是此时的测试用例,所测试的内容是依据功能而写的,其中用到的方法并不能采用什么语句覆盖,路径覆盖等白盒测试技术作为测试用例的分析方法,我该如何做,如何理解。2.如果在产品代码已经编写,写测试代码,编写的测试用例的内容只是对程序的逻辑覆盖(语句覆盖,条件覆盖等)而写吗?而更多的一些测试用例是黑盒测试吗(因果图、等价类等)?
我现在对如何写测试用例,也就是测试用例中要设计的内容很迷惑。 未编写测试代码时,当然只能根据功能来编写测试用例,但可以在完成编码后,根据覆盖率来补充测试用例,这样既保证完整性,又避免重复工作。
Visual Unit的“三步法”也许可以参考:
1. 基本功能测试:自动生成测试驱动代码,用户只要在测试用例编辑器中填写输入输出数据即可建立首个测试用例,用拷贝/修改的方法快速建立多个测试用例。根据文档或代码需要实现的功能,基本测试用例通常是现成的。
2. 完成白盒覆盖:VU自动统计未覆盖的逻辑单位(语句、条件、分支、路径),并在代码窗口和逻辑结构图中标示,用户选中一个逻辑单位,打开测试用例设计器,VU自动从现有测试用例中计算出一个近似用例,并生成修改提示,依据修改提示对近似用例进行修改,即可覆盖该逻辑单位。不可覆盖的分支和路径可以在逻辑结构图中删除,经过已删除分支的所有路径会自动删除,从而减少路径数量。
3. 依据预先定义的边界值,自动生成测试用例进行测试,用于发现“未考虑某些特殊输入”造成的错误,这类错误无法通过白盒覆盖来发现。 那现在大家所说的单元测试,通常都是代码已经编写,而做得测试工作?
白盒测试也就是单一的测试代码的覆盖情况?因为看了很多白盒测试的方法,都是跟覆盖有关的!
那这种语句覆盖等白盒测试方法,主要在单元测试中的作用是什么呢?也就是我为什么要这么作呢,我看了一下,除了可以发现多余的代码,逻辑问题是如何发现的呢? 一、我认为现在国内真正做到TDD测试驱动开发的程序员不多,这样进行开发的公司更少。
二、白盒的覆盖率可以告诉你 你的代码有多少是测试用例没有走过的,只是统计一个百分数我觉得意义不大,关键是能够补充测试用例将未覆盖的地方覆盖,进行完整的测试。
三、大部分的逻辑问题是根据测试用例通过情况查找出来的,你的某个用例失败了,你会去查看这个用例走过了哪些代码,然后发现问题
页:
[1]