What is 'Software Testing'?
Testing involves operation of a system or application under controlled conditions and evaluating the results (eg, 'if the user is in interface A of the application while using hardware B, and does C, then D should happen'). The controlled conditions should include both normal and abnormal conditions. Testing should intentionally attempt to make things go wrong to determine if things happen when they shouldn't or things don't happen when they should. It is oriented to 'detection'. (See the Bookstore section's 'Software Testing' category for a list of useful books on Software Testing.)



Organizations vary considerably in how they assign responsibility for QA and testing. Sometimes they're the combined responsibility of one group or individual. Also common are project teams that include a mix of testers and developers who work closely together, with overall QA processes monitored by project managers. It will depend on what best fits an organization's size and business structure.





软件测试是在特定的条件下操作一个系统或应用软件并评估结果(例如,如果用户在使用硬件B上的应用程序A界面时,做C操作,这时将出现D结果)。特定的条件包括正常的和非正常的条件。测试的主要目的是尽量使事件出现错误来决定是否出现了不应该发生的事件或者事件不按照它们应该出现的形式出现。主要是针对“发现”。



各个公司根据自身的情况来安排QA和测试人员。一个小组可能具有QA和测试两个职责,有时分两个小组。通常一个项目组包括测试人员和与之相关的开发人员,项目经理监控QA过程。采取什么样的形式往往依据公司规模和业务结构来设置。