为何有Bug?
程式码错误:程式码中可能存在语法错误、逻辑错误或其他错误,导致软体无法正常运作。
边界条件:软体的边界条件可能没有被考虑到,例如输入数值太大或太小,或者输入内容为空等。
资料问题:测试中使用的测试资料可能存在问题,例如资料遗失、错误或不一致。
环境问题:软体在不同的环境中可能有不同的行为,例如操作系统版本、硬体设置或网路环境等。
整合问题:软体与其他系统或服务的整合可能存在问题,例如API的相容性或通讯协定的不同等。
使用者操作问题:使用者的操作过程可能导致程式出现问题,例如输入错误的资料或违反程式的使用规则。
测试的定义
为了发现错误而执行程式的过程。
使用自动或手动来运型或测定某个系统的过程,其目的在于检验它是否满足规定的需求,或是釐清预期结果与实际结果之间的差别。
测试的过程
需求分析:根据需求规格书,明确定义所需的功能和性能指标。
设计测试计画:根据需求,制定测试计画,包括测试的目标、範围、测试类型、测试方法、测试资料、测试人员等。
编写测试用例:根据需求和测试计画,编写测试用例,测试用例描述了测试目标、步骤、期望结果等。
执行测试:执行测试用例,验证软件是否符合需求规格书中定义的功能和性能指标。
错误报告:当测试发现错误时,需详细记录错误信息,包括错误的发生时间、错误描述、错误原因等。
错误修复:当发现错误时,开发人员需要修复错误,并测试修复后的软件是否正常运行。
重複测试:当开发人员修复错误后,需要进行重複测试,确保修复错误不会影响其他功能。
验证测试结果:根据测试结果,确认软件是否符合需求规格书中定义的功能和性能指标。
发布:当软件通过测试后,可以发布软件并进行使用。