An ordinary start and an ordinary girl's test road。

发布新日志

  • BS架构与CS架构的区别 The differents between B/S and C/S

    2008-12-08 15:44:05

    以前在测试方向的选择上,经常会听到BS架构的系统和CS架构的系统,于是我带着迷茫去了解了一下B/S架构和C/S架构,在这之后似乎一切清晰了很多,那么就请大家一起来分享一下这方面的知识吧!

    C/S结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势。早期的软件系统多以此作为首选设计标准。

    B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。
    B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种scrīpt语言(VBscrīpt、Javascrīpt…)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。随着Windows 98/Windows 2000将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。
    C/S 与 B/S 区别:
    Client/Server是建立在局域网的基础上的.Browser/Server是建立在广域网的基础上的.
    1.硬件环境不同:
    C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务.
    B/S 建立在广域网之上的, 不必是专门的网络硬件环境,例如电话上网, 租用设备. 信息管理. 有比C/S更强的适应范围, 一般只要有操作系统和浏览器就行
    2.对安全要求不同
    C/S 一般面向相对固定的用户群, 对信息安全的控制能力很强. 一般高度机密的信息系统采用C/S 结构适宜. 可以通过B/S发布部分可公开信息.
    B/S 建立在广域网之上, 对安全的控制能力相对弱, 面向是不可知的用户群.
    3.对程序架构不同
    C/S 程序可以更加注重流程, 可以对权限多层次校验, 对系统运行速度可以较少考虑.
    B/S 对安全以及访问速度的多重的考虑, 建立在需要更加优化的基础之上. 比C/S有更高的要求 B/S结构的程序架构是发展的趋势, 从MS的.Net系列的BizTalk 2000 Exchange 2000等, 全面支持网络的构件搭建的系统. SUN 和IBM推的JavaBean 构件技术等,使 B/S更加成熟.
    4.软件重用不同
    C/S 程序可以不可避免的整体性考虑, 构件的重用性不如在B/S要求下的构件的重用性好.
    B/S 对的多重结构,要求构件相对独立的功能. 能够相对较好的重用.
    5.系统维护不同
    系统维护在是软件生存周期中,开销大, -------重要
    C/S 程序由于整体性, 必须整体考察, 处理出现的问题以及系统升级. 升级难. 可能是再做一个全新的系统
    B/S 构件组成,方面构件个别的更换,实现系统的无缝升级. 系统维护开销减到最小.用户从网上自己下载安装就可以实现升级.
    6.处理问题不同
    C/S 程序可以处理用户面固定, 并且在相同区域, 安全要求高需求, 与操作系统相关. 应该都是相同的系统
    B/S 建立在广域网上, 面向不同的用户群, 分散地域, 这是C/S无法作到的. 与操作系统平台关系最小.
    7.用户接口不同
    C/S 多是建立的Window平台上,表现方法有限,对程序员普遍要求较高
    B/S 建立在浏览器上, 有更加丰富和生动的表现方式与用户交流. 并且大部分难度减低,减低开发成本.
    8.信息流不同
    C/S 程序一般是典型的中央集权的机械式处理, 交互性相对低
    B/S 信息流向可变化, B-B B-C B-G等信息、流向的变化, 更象交易中心

  • 关于测试过程 About the testing process

    2008-12-08 12:37:57

    测试过程模型 testing process model

     如果有人告诉我测试工作是在开发完成之后才开始进行的,在一个月以前我会相信,但是现在我会告诉他你错了。那么测试到底是一个怎样的过程呢?我想应该先从软件的测试过程模型说起。

        首先,来了解一下V模型。v模型,讲述了整个软件开发、设计到测试的直筒式可互逆结构,将测试放在所有环节的后面,然后将需求分析时的遗漏或是错误,一直保留到最后去发现,就像是一个成长中的孩子将无数个本来能够及时订正的行为错误一直保留到18岁,然后被别人称为“问题人物”。(自我理解)

    优劣:V模型强调了在整个软件项目开发中需要经历的若干个测试级别,并与每一个开发级别对应;忽略了测试的对象不应该仅仅包括程序,没有明确指出对需求、设计的测试。 

        其次,来了解一下H模型。个人从开始就不认为测试是一个完全独立的环节,H模型给我们展示的是测试独立的准备和执行两类活动并发的与其他活动同时进行。只要测试准备完成并且其它流程达到测试就绪点,则测试就被执行,软件测试可以根据被测物的不同而分层次进行。(个人理解并不深刻,希望大家给予指点。)

     

                      (H模型图)                

        再次,来了解一下双V模型也叫W模型。V:verification(验证)&V:validation(确认)

    W模型是基于V模型的改进模型,实现了测试设计与测试执行相分离,并揭示了软件测试活动分层和分阶段的本质特性,能够及早的开始准备活动并能及时发现各个环节的缺陷和错误,将最后阶段的修改率降低。(个人以为比较完善的一种模型)

    优劣:补充了V模型中忽略的内容,强调了测试计划等工作的先行和对系统需求和系统设计的测试;与V模型相同,没有对软件测试的流程进行说明。

     

                         (V&V /W 模型)

     


     

  • 一个月后对测试的理解

    2008-12-05 22:18:33

    当我真正进入学习阶段之后,我才开始真正开始了解什么是软件测试。我想我应该记录下来当我作为测试“菜鸟”的理解,希望自己等到自己变成高手的时候在自我检阅一下。

    1、什么是软件测试? what is software testing?

       简单的说软件测试就是对软件进行运行或是或测试系统的过程,那么有几种运行和测试手段呢?在目前的状态来看,只有人工和自动化两种。那么软件测试的定义就是:“使用人工和自动化的手段对软件或测试某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。”(本定义来自IEEE)

    2、什么是软件生命周期(SDLC)?what is the software life cycle?

    软件有一个复杂的生命周期:计划<——>需求分析<——>设计<——>编码<——>测试<——>运行

    在计划阶段,需由高层领导(项目经理/产品经理)制定一份项目计划,作为总的指导思想,专业术语为确定软件开发总目标。

    在需求分析阶段,需由需求分析人员和客户共同决定软件需求,作为指导方针,专业术语为软件需求说明书(SRS:software requirement specification)

    在设计阶段,需由软件设计人员在SRS指导方针的基础上,交出软件概要设计(HLD:high level design),并在HLD的大指导方针下,明细每个小模块即详细设计(LLD:low level design)

    在编码阶段,需要最可爱的程序员们根据软件设计将软件代码编写出来,得到代码Code

    在测试阶段,需由我们来检测其是否满足客户需求,具体工作分为:单元测试(UT)、集成测试(IT)、系统测试(ST)

    UT:Unit testing 单元测试

    IT:integration testing 集成测试

    ST:system testing 系统测试

    在运行阶段,需要用户投入使用,并且收集、分析反馈信息,不断完善软件。

    在软件生命周期结束后大家就可以直接或间接的使用这个可爱的软件宝宝了,但是它也许还不够成熟和完善,所以就和成长中的孩童一样,不断的改进升级,已达到最优状态。

    今天就写这么多了,我突然想去找找关于蚕宝宝的故事了,软件其实也是有生命的,只是它的孕育过程是可见的,并且有各方面的软件工作人员参与使其成形,这种联想太有意思了。

我的存档

数据统计

  • 访问量: 945
  • 日志数: 3
  • 图片数: 1
  • 建立时间: 2008-12-05
  • 更新时间: 2008-12-08

RSS订阅

Open Toolbar