软件测试—软件测试基础知识—（三）软件测试的原则和（四）软件测试策略_小�幸运的博客
（三）软件测试的原则 1.测试应该尽早进行，最好在需求阶段就开始介入，因为最严重的错误不外乎是系统不能满足用户的需求。 2.程序员（开发）应该避免检查自己的程序，软件测试应该由第三方（测试人员）来负责。 3.设计测试用例时应考虑到合法的输入和不合法的输入 。【比如：金额输入框】 4.在测试程序时，不仅要检验程序是否做了该做的事，还要检验程序是否做了不该做的事，多余的工作会带来副作用，影响程序的效率，有时会带来潜在的危害或错误。 5.应长期保留所有测试用例 ，保留测试用例有助于以后修改程序后的回归测试。 （四）软件测试策略
选择测试方法：选择最合适当前项目的测试方法（比如项目紧急的时候？项目频繁发版）（例如：重复测试的工作可以采用自动化测试）
角色和职责：需要在测试策略里面明确定义各个角色，以及该角色的职责 。比如项目经理、测试组长、测试工程师。（分工明确，效率才会高）
环境需求：这一点非常重要，它将描述测试时需要的系统环境（软件，服务器Linux，windows，数据库MySQL），包括软硬件以及网络环境等等。在澄清环境需求的时候，测试组织可以识别出资源方面的风险。（不同情况，给不同的配置）
风险分析：影响测试过程的风险都应该尽早被识别出来，而且必须有相应的解决办法以便消除或减轻这些风险。（例如：软件不会安装，环境配置不够，人员休假、软件是否完成）
测试进度评估：测试进度将会评估完成测试所需要的时间。在设定进度的时候，首先需要明测试范围（比如说这次增加一个D模块，部分功能会影响原来已经上线的B模块的功能）然后根据测试资源的多少来指定能被各方面认可的测试进度计划。
回归测试（Regression Testing）策略：回归测试用来保证之前fix bug（修复的bug）的代码不会影响软件的其他部分，这样需要我们选择已经执行过的测试用例重新运行。测试人员需要找到一个方法来确定哪些测试用例应该在回归测试中运行，用例不能太多，因为资源有限，用例也不能太少，否则会达不到必须的测试强度。
优先级：测试范围内的东西不会都是一样重要的，加上测试资源各种有限，所以为测试的模块排定优先级是十分的必要。