测试用例是如何生成?有什么理论么?

2020-08-26 08:52发布

2条回答
霸气的名字 - 喜欢晴天
2楼 · 2020-08-27 20:28

第一:依据分明

众所周知,一个项目首先立项,然后经过一系列的动作到了需求分析,做完需求分析后,测试就可以做测试需求,然后就可以写测试用例了。所以写测试用例的依据就是需求。这么说太笼统,举一个例子。一个系统经过前期的需求分析,详细设计,模块设计等一系列的动作,最后生成了详细的需求说明和详细设计文档等等,在这些文档中,已经很详细的描述了所有的需求点和功能点,也有较详细的技术说明,接下来的工作就是怎么把这些功能点和需求点变成测试点,这就需要做好测试需求分析和测试方案工作,生成一个个可测试的测试点。这也是需求必须可测的一个体现。

假设经过上一步工作,分析出这个系统有5个模块,50个大的功能点,500个具体需求点,最后生成了5000个测试点。那么 ok,我们就要写5000个测试用例。还是那句话,一个测试用例只能对应一个测试点,测试点和用例是1对1的关系;一个需求点可以对应多个用例,需求点和用例是1对多的关系。这样做的目的在统计中讲。

第二:目的明确

用例都有个测试目的,这就是要目的明确,并且也只能有一个目的。前面无论多少步骤,都是为了找到这个目的途径。功能从大到小有层次的划分,我们做测试用例也是有层次的,不然你怎么定义用例的优先级呢?等到测试最小的功能点是,支持这个功能点的其他上层功能点,我们都默认正确就可以了,这就是我们的预期,所以在测试步骤中不用对上层的功能专门考虑测试数据,只把他当成一个正确的找到目前的功能点的途径就行。换句话说,你要测试的功能点需要点10个连接才能找到,那么前9个连接我们再以前就应该设计了用例,在第10个连接中默认他们正确就ok,这个用例的前9步,只是告诉你如何找到第10步。就是这样。

第三:便于统计

测试用例对整个测试过程的质量控制和评估有很重要的意义。

一,可以做测试需求覆盖分析。这样如果一个用例写几个测试点,那么就无法完成需求覆盖分析工作,至少是不符合规则的。

二,做用例成功率分析。一个用例中有多个测试点,肯定会造成用例数量减少,用例失败率大大增多。那么你做的用例成功率还有什么意义?

你还可以通过模块划分,来分析哪个模块存在的问题较多,还有可能存在更多的问题(应为程序员不同,能力就不同,缺陷喜欢扎堆分布,这个大家都知道),存在问题较多的模块需要做进一步的测试或者下一次作为测试重点。如果你统计的数据不准确,会误导结果的。

三,做缺陷分析。用例失败了,就生成一个缺陷。如果一个用例中写了多个测试点,回归的时候,这几个测试点也有回归,有些可能与缺陷毫无关系的测试点,都被你回归了。


Emma - QQ:1548057217
3楼 · 2020-09-03 09:39

1、WinRunner

Winrunner 最主要的功能是自动重复执行某一固定的测试过程,它以脚本的形式记录下手工测试的一系列操作,在环境相同的情况下重放,检查其在相同的环境中有无异常的现象或与预期结果不符的地方。

2、LoadRunner

LoadRunner® 是一种预测系统行为和性能的工业标准级负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 能够对整个企业架构进行测试。

3、QTP

QTP是一个B/S系统的自动化功能测试的利器,软件程序测试工具。Mercury的自动化功能测试软件QuickTest Professional ,可以覆盖绝大多数的软件开发技术,简单高效,并具备测试用例可重用的特点。

4、TestDirector

基于WEB的测试管理工具,他能够让你系统地控制整个测试过程,并创建整个测试工作流的框架和基础,使整个测试管理过程变得更为简单和有组织。

5、SilkTest

SilkTest 是面向Web应用、Java应用和传统的C/S应用,进行自动化的功能测试和回归测试的工具。它提供了用于测试的创建和定制的工作流设置、测试计划和管理、直接的数据库访问及校验等功能,使用户能够高效率地进行软件自动化测试。

6、Selenium

Selenium是为正在蓬勃发展的web应用开发的一套完整的测试系统。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。

7、TPT

TPT是针对嵌入式系统的基于模型的测试工具,特别是针对控制系统的软件功能测试。TPT支持所有的测试过程:包括测试建模、测试执行、测试评估以及测试报告的生成。


相关问题推荐

  • 回答 19
    已采纳

    软件测试最主要的目的,是为了保证软件上线以后,能够正常平稳没有bug的运行下去,因为测试的本质就是找应用程序和需求规格说明书之间的不同,如果两者发现不一致了,那一定是出现问题了。而通过软件测试工作,能够帮助甲方人员更好的接受软件提供依据,也让...

  • 回答 10

    简单地说,测试点就是一个安装了网络速度测试程序的网站或服务器,供其它网友测试从其它地方连接到该网站或服务器的速度。比如,您有一个网站,您在网站中安装了我们免费为您提供的网络速度测试程序,经本站技术人员审核合乎要求,您的网站就成为本站测试联盟...

  • 回答 4

    果图法是一种适合于描述对于多种输入条件组合的测试方法,根据输入条件的组合、约束关系和输出条件的因果关系,分析输入条件的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件涉及的各种组合情况。因果图法一般和判定表结合使用,通过映射同...

  • 回答 10

       采用黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误推测、因果图和综合策略。

  • 回答 7
    已采纳

    在编程中,布尔量指一个真或假状态。通常它们分别用0,1或1,-1来表示,这和编程语言有关。具体来说当布尔量为真的时候表示一个表达式或判断成立,否则这个式子或判断不成立。你把它理解为成立或不成立就行了。...

  • 回答 6
    已采纳

     功能测试框架一般情况就是包含以下几类:界面友好性测试、功能测试、页面链接测试、容错测试、稳定性测试、 性能测试(简单方面)等等。   1.1.1 界面友好性测试  风格、样式的协调性是否合理  界面布局是否整齐,尽量不要使用滚动条  界面操作、...

  • 回答 6

    测试用例:为实施测试而向被测试系统提供的输入数据、操作或各种环境设置以及期望结果的一个特定的集合。测试脚本是为了进行自动化测试而编写的脚本。两者的关系: 测试脚本的编写必须对应相应的测试用例...

  • 回答 6

    功能点:能够单独完成的某个具体业务流程。 一般在软件测试工作流程中的需求分析阶段,要根据需求说明书或者原型图提取功能点,功能点是和需求点相对应的。例如:每个软件都有注册登录,注册、登录就是两个功能点。登录模块还可以细化成登录功能,忘记密码功...

  • 回答 7
    已采纳

    一、一定要提交。1. 记得有这么个缺陷,以后再遇到的时候可能就会了解发生的原因。2. 尽力去查找出错的原因,比如有什么特别的操作,或者一些操作环境等。3. 程序员对程序比测试人员熟悉的多,也许你提交了,即使无法重新,程序员也会了解问题所在。4. 无...

  • 回答 5

    1、如果你的自学能力较弱,就找个靠谱的培训机构学习,培训机构的功能很简单:公司需要什么,机构就培训什么。针对市场,公司用人也舒服,求职者找工作也好找。2、如果你自学能力强就找些专业教材,结合网上的资料来学习。但是需要你有坚持的毅力。3、测试分...

  • 回答 5

    判定表(Decision Table)是分析和表达多逻辑条件下执行不同操作的情况下的工具.在程序设计发展的初期,判定表就已被当作编写程序的辅助工具了.由于它可以把复杂的逻辑关系和多种条件组合的情况表达得既具体又明确....

  • 回答 5

    判定表通常有以下四个部分组成:1)条件桩(Condition Stub):列出了问题的所有条件。通常认为列出的条件的次序无关紧要。2)动作桩(Action Stub):列出了问题规定可能采取的操作。这些操作的排列顺序没有约束。3)条件项(Condition Entry):列出针对它左列...

  • 回答 6

    、 黑盒测试:是一种常用的软件测试方法,它将被测软件看作一个打不开的黑盒,主要根据功能需求设计测试用例,进行测试。几种常用的黑盒测试方法和黑盒测试工具有,等价类划分法、边界值分析法、因果图法、决策表法。在实际运用中要选择合适的方法。二、 因果...

  • 回答 3

    长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。使用边界值分析方法设计测试用例,首先应确定边界情况。通常输入和输出等价类的边界,就是...

  • 回答 2

    1) 边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件。2) 边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。

没有解决我的问题,去提问