1.如何提出测试程序需求,并完成程序的编写
呵呵,我刚写的一篇文章~专门讨论测试需求~~摘抄一些吧~1. 基本概念软件测试需求是根据测试目标而确定的被测软件的测试属性。
测试属性就是软件测试人员结合软件测试意图和被测软件本身的特点分析得到的测试对象、范围和内容等要素。其中软件测试意图指测试人员根据被测软件或系统的实际使用情况或者工作环境,考察被测软件功能性、可靠性、安全性、易用性等方面能力的想法。
软件测试类型是软件测试意图的具体表现。通过对测试模式的总结,并且从软件质量属性的角度进行分类,形成软件测试类型。
根据被测试对象的不同,软件测试可以分成不同的级别如单元测试、部件测试、配置项测试、系统测试等。软件系统测试需求则是软件测试需求在系统测试级别中的具体应用。
同理,软件系统测试类型也是软件测试类型在系统测试级别中的实例应用。在软件需求规格说明文档中,开发人员对各个软件需求点进行了描述,因此我们用{软件需求}表示依据软件需求点形成的矩阵,用符号 表示。
2.软件系统测试需求与软件需求的关系软件系统测试需求和软件需求的相同之处在于两者分析的对象都是软件系统,并且都是对其需求的描述。理想状态下,软件系统测试需求与软件需求应该是相同的,均是以用户需求为依据,对其进行全面阐述。
但是由于软件工程化水平的发展情况,以及实际操作过程中由于软件开发人员和软件测试人员从不同的角度分析和理解用户的需求,造成软件系统测试需求和软件需求现实上的差异。在实际操作过程中,软件需求主要是描述软件该实现什么样的功能或者该达到什么样的性能等用户的需求[2]。
软件需求与用户的需要有着十分紧密的关系,软件需求是本着实现用户需要的思想开展的,以满足用户需要为前提的。因此软件需求就是描述软件要做什么。
而软件系统测试需求又是从另外一个角度分析软件的。软件测试需求主要描述软件是否做了应该做的,同时没有做不该做的,也就是说从用户实际使用的角度出发,考察软件是否实现了用户的需求,同时考察软件对非用户需求的处理情况。
软件系统测试需求就是在系统测试这个测试级别上以软件需求为基础分析出的测试需求,它是进行软件系统测试活动的基础。欢迎讨论~~。
2.写测试代码从哪些方面考虑
1、养成良好的书写代码的习惯,该加注释的时候一定要加注释,该大写的地方一定要大写,变量命名不能模糊不清。这是基础,是为了让别人能看明白你所写的代码,不能你写的代码只有你自己才看的明白。
2、注意所写软件的版本控制。
3、勤奋学习最新的技术,计算机技术日新月异,这点我不说相信你也知道。
4、养成写开发文档的好习惯,再接到一个项目时,第一件事情是进行需求分析,然后写开发文档,把你每一步要做什么都先写清楚,再动手做。
5、不要怕技术难题,在计算机领域,只有不能解决难题的人,没有人解决不了的难题。
6、虚心象他人学习,即使技术实力比你差很多的人,也肯定会知道一些你所不知道的技术点。
3.需求测试怎么做
欢迎进入IT技术社区论坛,与300万技术人员互动交流 >>进入 需求测试软件测试 软件测试V模型要求我们在需求阶段就开始制定系统测试的计划,开始考虑系统测试的方法。但这还不是足够的。全面的质量管理要求我们在每个阶段都要进行验证和确认的过程。因此在需求阶段我们还需要对需求本身进行测试。这个测试是必要的,因为在许多失败的项目中,7 0 %~8 5 %的返工是由于需求方面的错误所导致的。并且因为需求的缘故而导致大量的返工,造成进度延迟、缺陷的发散,这是一件及其痛苦的事情。因此我们要求在项目的源头(需求)就开始测试。这类测试更多的还只是静态手工方面的测试,当然也有一些自动化的工具,但这些工具会要求我们按照某个固定的格式进行需求的表述(例如形式化的方法),因此在适用性上会受到限制。通过静态手工方法进行需求测试中最常使用的手段是同行评审。 通过评审来测试需求
同行评审是业界公认的最有效的排错手段之一。我们在需求测试过程当中,使用最多的也是同行评审(Peer Review),尤其是正规检视(Inspection)。正规检视是由Michael Fagan 在I B M 制定出来的一种非常严格的评审过程。
好的需求应当具有的特点
一个良好的需求应当具有一下特点:
完整性:每一项需求都必须将所要实现的功能描述清楚,以使开发人员获得设计和实现这些功能所需的所有必要信息。
正确性:每一项需求都必须准确地陈述其要开发的功能。
一致性:一致性是指与其它软件需求或高层(系统,业务)需求不相矛盾。
可行性:每一项需求都必须是在已知系统和环境的权能和限制范围内可以实施的。
无二义性:对所有需求说明的读者都只能有一个明确统一的解释,由于自然语言极易导致二义性,所以尽量把每项需求用简洁明了的用户性的语言表达出来。
健壮性:需求的说明中是否对可能出现的异常进行了分析,并且对这些异常进行了容错处理。
必要性:“必要性”可以理解为每项需求都是用来授权你编写文档的“根源”。要使每项需求都能回溯至某项客户的输入,如Use Case或别的来源。
可测试性:每项需求都能通过设计测试用例或其它的验证方法来进行测试。
可修改性:每项需求只应在S R S 中出现一次。这样更改时易于保持一致性。另外,使用目录表、索引和相互参照列表方法将使软件需求规格说明书更容易修改。
可跟踪性:应能在每项软件需求与它的根源和设计元素、源代码、测试用例之间建立起链接链,这种可跟踪性要求每项需求以一种结构化的,粒度好(f i n e - g r a i n e d )的方式编写并单独标明,而不是大段大段的叙述。
另外应当对所有的需求分配优先级。如果把所有的需求都看作同样的重要,那么项目管理者在开发或节省预算或调度中就丧失控制自由度
4.要正确测试代码的正确性,需要测试哪些情况,请一一举例说明
1. 熟悉软件测试流程,有智能产品/网络应用经验者优先考虑;
2. 熟悉软件测试理论和方法,能够熟练应用多种测试工具;
3. 熟悉 C/C++/C#/Java编程, 有网络协议测试经验;
4. 有较强的逻辑分析能力和学习能力,具备较强的总结能力;
5. 热爱软件测试工作,可以胜任重复性工作。
6. 软件测试员是指根据测试计划和测试方案进行软件测试;能够针对软件需求开发测试模型,制定测试方案,安排测试计划,并对测试项目进行管理的专业人员。每一阶段的测试都是为了减少软件的bug和提升软件的功能需求,所以测试人员必须具备良好的编程功底。