技术笔记
来杭州黑马已经12天了,在这12天总共学习了Python和前端的一些基础东西,也学了些测试基础知识,因为之前也从事过手工测试的工作,所以对软件测试会稍微稍微稍微的了解一点,来说说软测。
软件测试在整个软件周期中的重要性,它存在于整个项目周期,在项目开始之初需求调研的时候就开始了,在形成需求规格说明书的时候就需要针对文档进行测试。这个环节在后续整个项目中占了很大的比重,能主导整个项目的走向,成败与否全在于开始阶段的决策。
体会一:软件测试的真正意义在于发现错误,而不在于验证软件是正确的。
再严密的测试也不能完全发现软件当中所有的错误,但是测试还是能发现大部分的错误,能确保软件基本是可用的,所以在后续使用的过程中还需要加强快速响应的环节。结合软件测试的理论,故障暴露在最终客户端之前及时主动的去发现并解决。这一点就需要加强研发队伍的建设。
体会二:在系统性能测试方面需要重视。
随机测试不等于随意测试,主要是对被测软件的一些重要功能进行复测及测试那些当前的测试用例没有覆盖到的部分。
为保证计划中的基本功能,随机测试应在所有测试用例已执行完的前提下再进行;
总的来说,在用例能暴露大量功能性问题的情况下,最关键的是除了菜单功能遍历外,如何在测试某些界面和功能点上自行设计相关的并发、集成、压力、边界、容错性等测试的思路或大纲,是一种很重要的意识;如何在变更问题相关的模块自行设计测试大纲,也是很重要的。
心得体会:1.测试是一项重复性的工作,要有一个良好的心态。在测试的整个过程中,对一些关键的重要功能的测试,必须重视它,反复进行测试。根据可能出现的种种情况进行测试,因为这些关键的部分有问题会引起其他相关的一连串的错误。2测试重点要分明,对于一些亮点功能、经常改动的功能、新增的功能要做重点测试,而对于一些基本不改动的功能只做基本功能测试就可以了。3.善于记录,善于分析,善于总结。时时记录测试的过程、碰到的问题,分析bug的原因、找出bug的根源,总结经典bug。4.对于测试中发现的不可重现或者重现概率极低的问题,也需要重视,因为很有可能是重大问题。
功能与手工测试
检查实际功能是否符合用户需求,手工测试是指,测试人员通过一条一条的执行测试用例,期望结果跟实际结果相比较,判断输出的结果是否满足期望的结果。
性能测试
性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行的测试。
软件的性能包括很多方面,主要有时间性能和空间性能两种。
时间性能:主要是指软件的一个具体的响应时间。例如一个登录所需要的时间,一个商品交易所需要的时间等。当然,抛开具体的测试环境,来分析一次事务的响应时间是没有任何意义的,它需要在搭建好的一个具体且独立的测试环境下进行。
空间性能:主要指软件运行时所消耗的系统资源,例如硬件资源,CPU、内存、网络带宽消耗等。
自动化测试
自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计测试用例并通过评审之后,由测试人员根据测试用例中描述的规则流程一步步执行测试,把得到的实际结果与期望结果进行比较。在此过程中,为了节省人力、时间和硬件资源,提高测试效率,便引入了自动化测试的概念。
测试应该尽早进行,最好在需求阶段就开始介入,最严重的错误系统不能满足用户需求(所有的测试都应追溯到用户需求),程序员尽量避免测试自己开发的程序。(测试是否可以单独由开发者完成)越早测试越好,测试过程与开发过程应是相结合的。测试的规模由小而大,从单元测试到系统测试。设计测试用例尽量覆盖率要全面(保证测试的覆盖程度),发现BUG需要进行确认。应该充分注意测试中的群集现象。妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便。
应该知道测试软件该做什么,也该知道测试软件不该做什么。
这些是我对软件测试的一些偏入门的看法和理解。
|
|