精华内容
下载资源
问答
  • 资深果粉,苹果售后兼二手MacBook卖家教你如何鉴定二手Mac(一些基本要点)学会这几点办法,包你不会翻车!一,主板序列号是否与底壳一致二,屏幕有无坏点亮点(更改纯色背景查看)三,配置要与年代一致,避免买到...
    • 资深果粉,苹果售后兼二手MacBook卖家教你如何鉴定二手Mac(一些基本要点)

    学会这几点办法,包你不会翻车!

    一,主板序列号是否与底壳一致

    26a3846c64e0cc42a6538214cabcb67f.png

    bf46dfa4cc68c1e3a3554666a8bbea44.png

    二,屏幕有无坏点亮点(更改纯色背景查看)

    b36c50e19c2fd6e7ca8bac6944300c91.png

    三,配置要与年代一致,避免买到修改序列号改年份冒充新款的机器

    (以下图片中的配置、序列号年份,骗子也会修改,所以现在要点开“系统报告”看真是配置信息)

    请看以下更新文章:

    2020打假闲鱼 转转等平台二手MacBook Pro苹果笔记本 型号标识符识别法 - 摩利尔的文章 - 知乎

    摩利尔:2020打假闲鱼 转转等平台二手MacBook Pro苹果笔记本 型号标识符识别法​zhuanlan.zhihu.com

    1c68943e6462ecf3e7fe1a8a3cc3ac53.png

    8a4d30247860a128aa2e08f9ba27a8d1.png

    四,检查硬盘是否原装,12款以前的mbp就不说了(因为是机械硬盘,换了反而更好),12-15款视网膜屏mbp和16-17款不带bar的机器,都是可以更换硬盘的,市场上很多换组装硬盘的,避免买到这种机器可看下图简单分辨方法。新款带bar机器硬盘全部集成在主板可以忽略。

    791e9ea593671eb967e7571b08feacb6.png

    88ca818a3d5f393c5b158f6a515cd66e.png

    五,检查各项功能是否完好,键盘,wifi,蓝牙,摄像头,usb等接口

    自己手动挨个检查。。。

    f2e22e84ad9d4c8c759dcb077702ad65.png

    六,有条件的拆后盖查看主板有无维修进水痕迹(主板如有维修进水等,动过的螺丝会有明显的痕迹)能做到这点也是最保险的办法。

    我们店收机器都要看主板,这样最稳,售后就很少!


    作者果粉一枚

    兼二手MacBook卖家

    可以帮你鉴定二手mac真伪!


    展开全文
  • 事物认识分析基本方法(转)

    千次阅读 2019-10-02 19:32:17
     在事物认识的基本方法中,分析与综合方法等经多年发展有:①亚里士多德:归纳──演绎法模式;②伽利略:实验──数学探究模式;③培根:科学归纳探究模式;④牛顿:假说──演绎探究模式和公理化方法探究模式等。...
      虽然只了解了几个概念,但觉得很有用的一篇文章,值得研读多遍,虽然最后又说到我朝的马克思主义,但只看具体有用的部分就好,大而空的东西不必理会。
     
      在事物认识的基本方法中,分析与综合方法等经多年发展有:①亚里士多德:归纳──演绎法模式;②伽利略:实验──数学探究模式;③培根:科学归纳探究模式;④牛顿:假说──演绎探究模式和公理化方法探究模式等。而马克思从对立统一规律出发,论述和发展了分析与综合方法,使其成为唯物辩证法的重要方法,成为人们认识和解决问题的有力武器。
     
      一、分析方法
     
      所谓分析方法就是把研究对象整体分解为各个组成部分、方面、元素、因素和层次,分别加以研究,进而揭示事物属性和本质的方法。
     
      (一)分析的任务
     
      分析事物在空间分布上的各个组成部分;在时间发展上的各个阶段;分析事物的有机组成;事物逻辑组成等。
     
      (二)分析的思维过程
     
      首先把整体加以“解剖”,把它的各个部分或要素从整体中“分割”开来或“分离”出来,变整体为部分,变复杂为简单,化难为易以找出它们相同于系统整体的特征以及它们之间相互区别的特征,从而为解决问题提供重要依据。最后进一步分析各个部分相互联系、相互作用的情况,阐明它们各自所处的地位、各自所起的作用,各以何种方式与其他部分发生相互作用的规律性。
     
      (三)分析方法的类型
     
      1、定性分析法。定性分析就是对研究对象进行“质”的方面的分析。主要是解决研究对象“有没有”、“是不是”的问题,具体地说是运用归纳和演绎、分析与综合以及抽象与概括等方法,对获得的各种材料进行思维加工,从而能去粗取精、去伪存真、由此及彼、由表及里,达到认识事物本质、揭示内在规律。即本质的东西,只有这样才能正确地描述一个事物.揭示事物间的相互关系。但它只能分辨出事物指标的高与低、长与短、大与小等概念标准。定性分析定性研究分为三个过程:分析综合、比较、抽象和概括。主要如下。
     
      (1)因果分析法。首先要分清因果地位;其次要注意因果对应,任何结果由一定的原因引起,一定的原因产生一定的结果。因果常是一一对应的,不能混淆;最后,要循因导果,执果索因,从不同的方向用不同的思因果分析法维方式去进行因果分析,这也有利于发展多向性思维。按事物之间的因果关系,知因测果或倒果查因。因果预测分析是整个预测分析的基础。回归分析中,当研究的因果关系只涉及因变量和一个自变量时,叫做一元回归分析;当研究的因果关系涉及因变量和两个或两个以上自变量时,叫做多元回归分析。
     
      (2)可逆分析法。可逆分析是解答下述问题的一种分析方法:作为结果的某一现象是否又反过来作为原因,从而产生原来是原因的那一现象。
     
      (3)结构分析法。结构分析法是指对系统中各组成部分及其对比关系变动规律的分析。结构分析主要是一种静态分析,即对一定时间内系统中各组成部分变动规律的分析。如果对不同时期内系统结构变动进行分析,则属动态分析。结构分析法是在统计分组的基础上,计算各组成部分所占比重,进而分析某一总体现象的内部结构特征、总体的性质、总体内部结构依时间推移而表现出的变化规律性的统计方法。结构分析法的基本表现形式,就是计算结构指标。其公式是:结构指标(%)=(总体中某一部分/总体总量)X100%。结构指标就是总体各个部分占总体的比重,因此总体中各个部分的结构相对数之和,即等于100%。
     
      (4)比较分析法。比较是经常使用的一种方法,它既要研究事物之间的共同点,又要分析事物之间的不同点,正反比较、横向比较分析与纵向比较分析。比较是认识对象间的相同点或相异点的逻辑方法。它可以在异类对象之间进行,也可以在同类的对象之间进行,还可以在同一对象的不同方面、不同部分之间进行。横向比较分析:不同事物在同一时间阶段呈现的异同比较分析进而认识事物。纵向比较分析:事物在不同时间阶段呈现的异同。比较分析时间,要注意比较分析的参照标准要统一,具有可比性,比较要有供比较的对象,也要有比较的共同基础。所谓类比是这样的一种推理,它把不同的两个(两类)对象进行比较,根据两个(两类)对象在一系列属性上的相似,而且已知其中一个对象还具有其他的属性,由此推出另一个对象也具有相似的其他属性的结论。
     
      (5)分类分析法。把无规律的事物分为有规律的.按照不同的特点分类事物,使事物更有规律。即归类。在逻辑中,指把具有共同特点的个体对象归入一类,并把具有共同特点的类集合成类的思维过程和方法。
     
      (6)普遍联系(联想)分析法:把事物放到作为个体或一个因素放到整体大环境中来分析认识。通过正反类似等具有普遍联系联想的事物来认识基本事物某方面的特性。
     
      (7)概念分析法。根据事物的概念内涵、外延和字面来解析认识事物。
     
      (8)归纳分析法。逻辑的一个分支。有两个含义:①狭义的归纳逻辑的研究对象是前提和结论之间具有或然联系的归纳推理;②广义的归纳逻辑还包括在进行归纳推理时所使用的科学方法,亦称归纳法。归纳逻辑按其发展的不同阶段,又可以分为古典的归纳逻辑和现代的归纳逻辑两大类型。
     
      (9)演绎分析法。演绎推理是由普通性的前提推出特殊性结论的推理。演绎推理有三段论、假言推理和选言推理等形式
     
      (10)现象分析法。通过事物的现象(包括假象)来分析认识事物。
     
      2、定量分析法。定量分析是对事物的数量特征、数量关系与数量变化的分析。如资金平衡表、损益表、留存收益表等。
     
      (1)数学分析法。
     
      (2)定量试验法
     
      3、利益分析法。利益分析方法是从利益的角度,通过社会历史现象把握其本质和根源,透过各种社会主体的言论和行为把握其动因的方法。它是我们把握国内国际利益格局,正确制定战略的十分重要的工具。利益分析方法在社会领域和人类历史长河中具有普遍的适用性和有效性。
     
      (四)分析方法的局限性
     
      分析方法容易使人们的眼光限制在片面、狭窄的领域里,忽视事物之间的有机联系,养成孤立,静止和片面看问题的习惯。因此还需要与综合方法结合起来运用。
     
      二、综合方法
     
      所谓综合方法。就是把研究对象的各个部分、方面和因素联合起来加以研究,从而在整体上把握事物的本质和规律的思维方法。综合方法与分析方法相同之处在于,都是以事物的整体和部分的关系作为客观基础,只是在认识过程的方向上与分析方法相反。
     
      (一)综合方法的思维特点
     
      力求通过全面掌握事物各部分、各方面的特点及其内在联系,并通过概括和升华将事物的各部分、方面、各种属性真实联结复现事物本来面目的整体性。一句话,综合方法是变简单为复杂,变分离为统一,变局部为整体。
     
      (二)综合方法的形式
     
      从综合方法的规模来分有小型综合和大型综合;从具体的方法来分有对称法、移植法。系统法等。
     
      1、系统分析法。
     
      系统分析方法是指把要解决的问题作为一个系统,通过系统目标分析、系统要素分析、系统环境分析、系统资源分析和系统管理分析,找出解决问题的可行方案,最终解决问题。系统分析方法从系统的着眼点或角度去考察和研究整个客观世界,为人类认识和改造世界提供了科学的理论和方法,以?实物为中心?逐渐过渡到以?系统为中心?,是科学思维的一个划时代突破。系统分析方法的步骤:限定问题、确定目标、调查研究收集数据、提出备选方案和评价标准、备选方案评估和提出最可行方案。
     
      ①限定问题:所谓问题,是现实情况与计划目标或理想状态之间的差距。系统分析的核心内容有两个:其一是进行?诊断?,即找出问题是及其原因;其二是?开处方?,即提出解决问题的最可行方案。所谓限定问题,就是要明确问题的本质或特性、问题存在范围和影响程度、问题产生的时间和环境、问题的症状和原因等。在限定问题时,要注意区别症状和问题,探讨问题原因不能先入为主,同时要判别哪些是局部问题,哪些是整体问题,问题的最后确定应该在调查研究之后。
     
      ②确定目标:系统分析目标应该根据客户的要求和对需要解决问题的理解加以确定,如有可能应尽量通过指标表示,以便进行定量分析。对不能定量描述的目标也应该尽量用文字说明清楚,以便进行定性分析和评价系统分析的成效。
     
      ③调查研究,收集数据:调查研究和收集数据应该围绕问题起因进行,一方面要验证有限定问题阶段形成的假设,另一方面要探讨产生问题的根本原因,为下一步提出解决问题的备选方案做准备。调查研究常用的有四种方式,即阅读文件资料、访谈、观察和调查。收集的数据和信息包括事实(facts)、见解(opinions)和态度(attitudes)。要对数据和信息去伪存真,交叉核实,保证真实性和准确性。
     
      ④提出备选方案和评价标准:备选方案是解决问题和达到咨询目标可供选择的建议或设计,应提出两种以上的备选方案,以便提供进一步评估和筛选。为了对备选方案进行评估,要根据问题的性质和客户具备的条件。提出约束条件或评价标准,供下一步应用。
     
      ⑤备选方案评估:根据上述约束条件或评价标准,对解决问题备选方案进行评估,评估应该是综合性的,不仅要考虑技术因素,也要考虑社会经济等因素,评估小组的成员应该有一定代表性,除咨询项目组成员外,也要吸收客户组织的代表参加。根据评估结果确定最可行方案。
     
      ⑥提交最可行方案:最可行方案并不一定是最佳方案,它是在约束条件之内,根据评价标准筛选出的最现实可行的方案。如果客户满意,则系统分析达到目标。如果客户不满意,则要与客户协商调整约束条件或评价标准,甚至重新限定的问题,开始新一轮系统分析,直到客户满意为止。
     
      (三)分析和综合的关系
     
      分析与综合是辩证统一不可分割的。从认识过程来看,分析与综合的方向相反,分析是化整为零,化繁为简,由未知追溯到已知;而综合是化零为整,变部分为有机联系的统一整体。由已知引导到未知。综合优于分析的地方,在于它恢复并把握了事物本来的联系,揭示了事物在分割状态下不可能具有的特征。
     
      而事物的研究过程,一般是先分析,后综合,分析是综合的基础,没有分析就没有综合,正确的综合,必须先分析对象内部各方面的本质、各种因素的特点。当分析达到一定程度后再进行综合。综合是分析的发展,没有综合也就没有分析,任何分析总要从某种整体性出发,离开了综合,分析就会有很大的盲目性。
     
      分析和综合是辩证的统一,在一定条件下,它们可以相互转化。人们的认识就是沿着这种分析-综合-再分析-再综合的轨迹不断前进。
     
      三、事物的基本要素与方面
     
      一、时间:历史、现状、未来。
     
      二、价值:价格、价值、使用价值。
     
      三、空间:平面、垂直、立体分布;抽象(广度、深度)。
     
      四、质量:
     
      五、环境因素:内部因素、外部因素
     
      六、运动:
     
      七、学科:物理、化学、生物学
     
      八、其他:精神、意识层面
     
      利益分析方法
     
      利益分析方法是从利益的角度,通过社会历史现象把握其本质和根源,透过各种社会主体的言论和行为把握其动因的方法。它是我们把握国内国际利益格局,正确制定战略的十分重要的工具。利益分析方法在社会领域和人类历史长河中具有普遍的适用性和有效性。
     
      在马克思主义看来,认识世界主要不是为了解释世界,而是改造世界,因此,马克思主义非常强调理论与实践的统一、世界观与方法论的统一。正因如此,马克思主义不仅重视利益理论,也非常重视利益分析方法。在他们看来,利益分析方法是深入把握社会事件的本质及其根源的方法,在进行社会革命过程中只有自觉地运用它才能掌握主动并取得成功。
     
      那么,利益分析方法的基本依据何在呢?
     
      (一)利益是历史发展的基本动因的历史观,必然导致利益分析的方法论。
     
      人类的自身机能需要必须首先解决吃穿住等问题,因此人类的物质生活资料的生产就构成了历史的基本前提。在人类为了实现生存和发展所进行的物质资料的生产过程中,必然产生对物质产品的占有、支配和使用问题,从而形成产生、交换、分配、消费的方式和关系,产生错综复杂的物质利益关系,并经常发生利益冲突。为了调节人类这些利益矛盾和利益关系,社会逐步形成了相应的包括政治法律、宗教哲学在内的意识形态和包括政府、军队、警察、监狱等在内的社会上层建筑机构。在阶级社会中,各个阶级和社会集团都力图利用国家机器为自己服务,都力图利用意识形态为自身的利益辩护,因此在人类社会不仅有经济领域的斗争,还有思想文化领域和政治领域的斗争。人类为适应经济发展的要求即社会生产力发展的要求,不断适时地调整生产关系和变革上层建筑,从而形成了历史的演变过程。
     
      第一,物质利益是生产力形成和发展的原始动因。第二,生产关系实质是物质利益关系,物质利益关系是人与人之间最基本的关系。生产关系的内容就是各个时期人们对产品的占有、分配、交换的物质利益关系,正是这些利益关系的不同及其演变形成了不同的利益差别、利益矛盾和利益对立。第三,物质利益是上层建筑的最终动因。无论是政治的上层建筑还是思想的上层建筑,其形成和发展都根源于物质利益。因为政治斗争?归根到底都是围绕着经济解放进行的。“宗教也是如此,历史上的宗教斗争?每次都隐藏着实实在在的现世利益”。(注:《马克思恩格斯全集》第22卷,第526页。)毫无疑问,在生产力和生产关系,经济基础和上层建筑这个社会基本矛盾运动中,自始自终贯穿着物质利益这一主线。物质利益既是社会基本矛盾运动的动力,又是社会基本矛盾运动的目的和归宿,人类历史的画卷正是围绕着谋取利益、实现利益而展开的。既然如此,把这种利益动力的历史观转化为分析和观察人类历史社会的方法论,是很自然的。
     
      (二)利益对于人们思想和行为的根源性和支配性,必然导致利益的分析方法。
     
      马克思说过:“人们奋斗所争取的一切和他们的利益有关”。(注:《马克思恩格斯全集》第1卷,第82页。)司马迁也说过:“天下熙熙,皆为利来,天下攘攘,皆为利往。”《管子〃牧民》也指出:“国多财则远者来,地辟举则民留处。?这些话语准确无误地反映了利益对于人们思想和行为的根源性和支配性,古代如此,现代和将来也是如此。“害取其轻,两利取其大”,这不仅表现在商品选择上,还表现在职业选择,生产行业、生产品种的选择,生产技术和生产方法的选择以及方针路线政策的选择,国家制度的选择以及战略的选择上,而客观对象的命运如何,是否受到欢迎,则取决于客观对象满足人们需要的程度。新的事物(包括产品、产业、工艺和方法)之所以取代旧事物,就在于它更适合人类的需要,能够在较大的范围和更高的程度上满足人类的需要。
     
      利益支配人们的行为,自然支配着人们的思想和言论。利益支配人们的思想和言论还有另外一种表现方式,即把真实的意图和利益目的掩盖起来,搞骗人把戏。兵不厌诈?,在军事斗争中如此,在经济生活中也是如此,在政治生活中也是如此。
     
      利益也支配着各种社会群体。对于阶级而言,某一个阶级的领袖牺牲了,但那个阶级所进行的斗争是不会停止的,这是由他们的利益所决定的,除非社会条件得到了改造。对于国家也是如此,国家领导人的更替一般不影响其对外政策的性续性,这是由国家的利益决定了的。列宁在十月革命后就明确指出:“我国内外政策归根到底是由我国统治价级的经济利益和经济地位决定的,这一原理是马克思主义整个世界观的基础。”
     
      既然社会由人及其活动组成,而利益对于人的思想和言行具有支配性和根源性,由此自然引出利益分析的方法论。
     
      二、利益分析方法的内容
     
      (一)要把握重大社会事件背后的阶级和社会集团的利益根源。
     
      利益问题既是重大社会事件的导火线,又是它的根本原因,因此,要把握重大社会事件的本质,除了了解事件形成和发展经过的事实外,更重要的是要把握它的利益根源,这样才能不被它的假像所迷惑,把握到其本质、动因和发展的趋势。
     
      (二)各个阶级和社会集团的利益是它在社会关系中的地位决定的。
     
      一切重大社会事件都可以归结到一定的阶级和社会集团的利益,那么,其利益是由什么决定的呢?是由其所处社会关系中的地位决定了的。任何政治制度和经济制度对当时各个阶级、阶层和社会集团的利益并非是完全均等的,一般而言取得政治统治的阶级和社会集团获得的利益最大。各个阶级和社会集团在社会中的不同地位决定了它的基本态度。
     
      (三)分析利益格局是制定战略的依据。
     
      既然重大的社会事件的产生根源于一定阶级和社会集团的利益,而它的利益是由所处的社会关系中的地位决定的,那么分析社会关系即整个利益格局是制定整个战略的依据。
     
      (四)要根据社会事件对谁有利有害的性质和程度,决定我们的政策和策略。
     
      社会主体倡导和策划,以及实施任何事情都出于一定的利益动因,因此必须根据社会事件对谁有利以及利害的性质和程度来决定我们的政策和策略。
     
      三、利益分析方法的战略地位和实践价值
     
      怎样看待利益分析方法的战略地位和实践价值?如果用一句话来表述,就是:利益分析方法是社会领域中最基本的认识方法和分析方法之一,是任何社会主体要有效地参与社会生活实践必须运用的最基本的方法之一。
     
      (一)利益分析方法是认识社会的十分重要的方法之一。
     
      第一,利益分析方法是认识社会基本矛盾形成和发展的一把钥匙。众所周知,生产力之所以决定生产关系,并推动其发展(表述为生产关系一定适合生产力发展规律),经济基础之所以决定上层建筑并推动它发展(表述为上层建筑一定要适合经济基础及其发展规律),原因何在?就是社会成员的利益起决定作用的结果。因为生产关系不适合生产力发展,人们的利益就得不到实现和发展,最后必然损害到广大社会成员的利益,这是广大社会成员所不允许的。恩格斯说过:?透过各种偶然性为自己开辟道路的必然性,归根到底仍然是经济的必然性。?(注:《马克思恩格斯选集》第4卷,第506页。)这无疑是正确的,因为经济发展是社会发展的基础和条件,是广大社会成员的利益所在。
     
      另一方两,生产关系,上层建筑之所以对生产力、经济基础发生作用,也是通过利益而实现的。新的生产关系使人们日益实现自身的利益,就能唤起人们的生产热情,从而推动生产力的迅速发展。相反,如果生产关系使人们日益陷入困境,就必然挫伤人们的积极性,使生产萎缩不前甚至受到破坏。上层建筑对经济基础的作用也是如此,要是它维护旧的生产关系,损害广大劳动人民利益,势必阻碍经济发展,若是它为新的经济关系的确立和实施服务,给广大群众进一步发展利益提供了广阔的前景,自然就促进经济的迅速发展。可见,社会基本矛盾确实是在利益的基础上发挥作用的,把利益方法作为钥匙,才能对社会基本矛盾相互作用及其运动获得深刻而又具体的理解。
     
      第二,利益分析方法是深刻理解一系列社会现象的工具。人类社会现象是复杂的,有民族纠纷、阶级斗争、社会革命等等,这些社会现象无疑与社会基本矛盾相联系,因此,用社会基本矛盾即生产力和生产关系、经济基础与上层建筑之间的相互关系去说明在一定程度上是可以理解的。然而,社会基本矛盾是在利益的基础之发生作用的,因此用利益去说明就更深刻、更彻底,更能抓住根本。例如各个阶级内部矛盾、冲突、相互残杀,民族社会中氏族集团之间的冲突和吞并,同一社会制度的不同国家之间的战争,仅仅从社会基本矛盾去分析是难以理解的。
     
      第三,利益分析方法是理解各种社会主体本性及其运行趋势的重要法宝。社会主体是多层次的,有个人、家庭、宗族、村落、企业、地方群体、社会集团、民族、阶层、阶级、国家以及全人类等等。它们都有一个共同点,那就是他们都由人所组成,其行为都根源于利益,受利益的支配和制约,而它们的利益是由其所处的社会地位所决定,因此利益分析方法是理解它们的本性及其运行趋势的重要法宝。利益分析方法在判断个人、阶级上是有效的,在分析和判断国家上也是有效的。
     
      (二)利益分析方法与其它方法的关系是一般与特殊、内容与形式的关系。
     
      第一,利益分析方法与阶级分析方法是一般与特殊的关系。阶级分析方法是利益分析方法的具体运用。利益分析方法就是从利益的角度探求社会事件根源的方法,它把握了事物的利益根源之后反过来就可以预见它的发展趋势。这种方法在阶级社会中的运用,就是分析各个阶级在生产关系中的地位以及它们与现存制度的利益关系,从而预见他们对现制度的政治态度和思想观点,从而形成了阶级分析方法。阶级分析方法在阶级社会中很有效且非常重要。阶级分析方法之所以有效,就是它贯彻了利益分析方法,把握了各个阶级的利益所在,从而预见他们基本的政治立场和基本的倾向。阶级分析方法之所以重要,就是舍此很难解决阶级的政治战略问题。阶级分析方法适用于阶级社会,利益分析方法适用于人类社会的始终。而且在阶级社会中,在个别地方、个别事件如同一阶级内部的利益矛盾,阶级分析方法不一定适用,但利益分析方法却是普遍适用。
     
      第二,利益分析方法与因果法具有同一性,两者的关系是内容与形式的关系。利益分析方法本质上就是从社会现象探求其原因的方法,它与因果法是一致的。虽然因果法适用自然界、人类社会和思维领域,而利益分析方法只适用于人类社会,但利益分析方法在社会领域有着特殊的功能,它是社会领域中探求社会现象根本原因的最基本亦即最重要的方法。其道理很简单,因为利益是人们的基本动因,而社会由人所组成,不用利益分析方法是很难把握到社会事件形成和发展的原因的。
     
      第三,利益分析方法为从社会存在看社会意识的方法提供进一步的支持。社会存在决定社会意识是历史唯物论的基本原理。这一原理转化为方法论就是从社会存在看社会意识,从社会存在的变化去理解社会意识的变化。换句话说,就是社会意识的变化要从社会存在的变化中去追溯根源。那么,利益分析方法与之是什么关系呢?利益分析方法为之提供了可以依托的基础和依据。众所周知,社会利益关系的变化必然引起上层建筑包括社会意识的变化。为什么会如此,因为前者决定后者,后者要为前者服务。社会存在之所以决定社会意识其根源在于利益对于思想的根源性和支配性。正因为如此,马克思说过:?‘思想’一旦离开‘利益’,就一定会使自己出丑。?(注:《马克思恩格斯全集》第2卷,第103页。)可见,用利益分析方法去审视社会存在即人们的物质利益关系决定社会意识即人们的思想观念,这是自然的。
     
      第四,利益分析方法为历史唯物主义方法提供了理解社会现象的指导线索。历史唯物主义方法不脱离历史事件,从而避免了脱离实际的唯心主义抽象。然而这种方法如果仅仅停留在现象的罗列上,就把握不到事件的本质。因此,历史主义方法需要利益分析方法作为其辅助的工具,帮助其揭示事件的内在利益根源,并把事件发生的各种现象串连起来加以理解,从而把握其脉络及其本质。所以,利益分析方法是把各种现象按其内在关系串连起来加以理解的基本线索和基本的工具。它与历史主义方法是相辅相成的关系。
     
      (三)利益分析方法在社会各个领域和各个学科中都有广泛的适用性。
     
      利益问题贯彻于人类社会的各个领域,因此利益分析方法当然适用于社会的各个领域,并被各门具体的社会科学广泛运用。例如在刑事侦察中常常运用利益动因的分析方法来寻找作案的对象和分析案件的脉络,以及对案件的性质作出判断。在经济领域,制定行业政策、产业政策和进行资源配臵过程中,也需要运用利益分析的方法,因为利益是经济调控的重要杠杆。在政治领域,确立政党制度、国家制度,制定民族政策、干部政策等等都离不开利益分析方法。正确处理国家间的关系离不开利益分析方法。就是做思想工作也离不开利益分析方法。
     
      利益分析方法对普通老百姓而言,是需要的。因为人与人的关系,最本质的是利益关系。作为生活在社会上的人总是与他人以及整个社会发生关系,因此任何言行都对他人发生影响,如不正视利益问题,讲话和做事很容易伤害到他人的利益和感情,肯定是要碰壁的。当然作为一位企业家、商人更需要重视顾客的利益,因而更需要利益分析方法了。至于对于掌握着一定的社会权力,领导着一个国家一个部门,肩负着调控社会,组织人们进行经济建设的政治家们和领导干部更是不用说了。
     
      解决一切问题的标准思路
     
      在生活和工作中,人们在各个方面都会碰到各种问题需要解决。问题五花八门,解决有普遍规律吗?
     
      其实,解决问题属于一个演化过程。套用五分法,分化为五个阶段,每个阶段暂且按照两分法。这样,解决问题就具有五纵两横的结构,如下所示:
     
      发现(确定-排除)——探因(主观-客观)——对策(制约-消除)——实施(执行-停止)——后果(反思-随意)
     
      一发现
     
      爱因斯坦曾经说过:提出一个问题往往比解决一个问题更重要。因为解决一个问题也许仅仅是一个数学上的或实验上的技能而已,而提出新的问题、新的可能性,从新的角度看旧的问题,却需要有创造性的想像力,而且标志着科学的真正进步。
     
      面对一种新现象,人们树立的态度分化为五种:
     
      板上钉钉——确定——犹豫——排除——熟视无睹
     
      其中,确定和排除属于典型态度。有些现象被人们经常发现,就逐渐麻木,根本不会作为问题来考虑,就形成极左的熟视无睹。有些问题表现十分明显和突出,人们就会极端强烈地确定,板上钉钉。有些现象,人们会拿不定主意,犹豫不决。
     
      1确定
     
      问题间或具有以下表现:
     
      (1),一件事情表现出与自己的传统观念不相符的形式,具有反常的特征。
     
      (2),对于同一件事情,不同的人有不同的解释。
     
      (3),某件事情让自己付出很大代价,感觉不舒服。
     
      (4),直觉某件事情不对劲。
     
      (5),有些问题以前就存在,当时无力解决而搁臵,现在能够解决而重新确定。
     
      发现问题时,人们要同时分析,既要定性,也要定量。
     
      关于定性,问题属于哪方面?是工作还是家务?是工作状态还是人事关系?
     
      其次要定量。看看问题表现得哪种程度?是小还是大?是急还是缓?
     
      根据问题的表现,再衡量自己的解决力量。如果盘算自己能够解决之,就作为问题确定下来,下定决心解决它。另外,也可以只把问题放在心上,以后看情况
     
      [故事述评]--吊灯和钟表
     
      1582年的一个星期天,十八岁的伽利略随着熙熙攘攘的人流,漫不经心地走进比萨的一座圆顶天主教堂。教堂里响起了和谐悦耳的管风琴乐曲,人们开始做礼拜了。
     
      心不在焉的伽利略,抬头仰望着天花板,目不转睛地盯住悬挂着的铜吊灯。微风一吹,吊灯来回摆动。他惊异地发现,无论吊灯摆动的幅度多大,摆动一次所用的时间总是大致相同的。伽利略又用右手按着左手的脉搏,进行测验,嘴唇不时微微动弹。这位科学奇才,从吊灯摆动的奥秘中,开创了对摆的运动规律的研究。
     
      根据单摆的等时性原理,荷兰的惠更斯制造了第一个机械摆钟。
     
      2排除
     
      人们不能把所有事情都当作问题来对待,也不能把所有问题都当作必要问题来处理。排除问题也属于解决问题的一种策略。需要排除的现象或问题有如下表现:
     
      (1),有些事情尽管反常,但并不见得成为问题,可以不予理会。
     
      (2),有些问题的确属于问题,但属于微小问题,几乎没有影响,可以不予理会。
     
      (3),有些问题应该解决,但是现在缺乏条件,可以延后处理。
     
      [故事述评]--杞人忧天
     
      从前有个小国家叫杞。杞国有一个人,整天胡思乱想,疑神疑鬼。他一会儿担心天会崩塌下来,砸扁了脑袋;一会儿担心地会陷落下去,埋住了全身。他越想越害怕,整天忧心忡忡,白天吃不下饭,夜里不敢睡觉。
     
      这件事慢慢地传开了。有个热心人看到他那副忧愁烦闷的样子,担心他把身体弄坏了,就去开导他说:?天不过是一股积聚的气体,上下四方到处都有。人的一举一动,一呼一吸都要和它接触。你整天在气体里活动,为什么还要担心它会掉下来呢??
     
      这个杞国人半信半疑地问:?如果天真是一股积聚的气体,那么太阳、月亮和星星不就要掉下来了吗???不会,不会!?那个人回答,?太阳、月亮、星星也不过是气体中会发光的物质。就是掉下来,也不会伤人的。你尽管放心。?
     
      杞国人又问:“那么地要是塌下去怎么办呢??热心人说:地不过是堆积起来的土块罢了。东南西北到处都有这样的土块。你东走西跑,蹦蹦跳跳,成天在地上活动,根本不必担心它会塌陷下去。?杞国人听了,心里好像放下了千斤重担,脸上露出了笑容。
     
      ——头顶蓝天,却整天担心蓝天会崩塌下来;脚踏大地,却成天害怕大地会陷落下去。这则寓言辛辣地讽刺了那些胸无大志,患得患失的人。?天下本无事,庸人自扰之。?我们决不做?现代的杞人?,而要胸怀大志,心境开阔,为了实现远大的理想,把整个身心投入到学习和工作中去
     
      寓言中那位热心人对天、地、星、月的解释是不科学的,只能代表当时的认识水平。
     
      二探因
     
      当决定问题需要解决时,接下来就要分析其中的原因。原因就是问题的病根。只有找到原因,才能对症下药。
     
      事物表现属于主体和客体的共同作用,原因就划分为主体和客体两个典型,构成五大层次:
     
      本质——主体——联系——客体——第三者
     
      举个例子说明。例如,轿车发生打滑问题。其主体原因在于轮胎等零件;客体原因在于路面;联系原因在于双方的摩擦;极左的第三者原因可能有风力;极右的本质原因在于轮胎的设计标准。
     
      继续深入地探讨,每个事物内部还具有许多因素。我们知道:
     
      事物力量=方向x能力x状态
     
      人的力量=动力x能力x方法
     
      应该强调的是,每个因素包含两个基本属性:种类和程度,或者说性质和数量。不同因素通过结构联系起来,组成事物。
     
      因此,综合来说
     
      事物作用=主观力量x客观条件=方向x能力x状态x条件=种类x程度x结构
     
      可见,方向、能力、状态、条件以及种类、程度、结构这四种三属共七大因素成为事物的基本因素,从而成为问题的具体原因。
     
      1主体
     
      如果人出现问题,要从三个因素来分析——
     
      动力方面,是缺乏责任还是耐心?责任缺乏多少?
     
      能力方面,是缺乏专业技术还是从业经验?技术缺乏多少?
     
      方法方面,是时间选择不对还是地点选择不对?自己这边的人和物是否协调运用?
     
      [故事述评]--刘邦的总结
     
      邦胜利之后,有一天问左右臣子:?你们直说,我为什么能打败项羽??这些臣子只是说些拍马奉承的话,刘邦听后摇头说:?我所以能打败项羽,主要靠三位人才。?接着他又说:?出谋划策,研究正确作战方针,保证打胜仗,我不如张良;制订典章法令,管理政务,筹集军费粮草,我不如萧何;身临第一线带兵打仗,做到战必胜,攻必克,我不如韩信。此三人皆为人中豪杰,均能为我所用,这是我战胜项羽的主要原因,而项羽只有一个范增也不能用,所以他注定要灭亡。
     
      2联系
     
      联系原因属于主观和客观的结合,因此,虽然不典型,但是很普遍。
     
      在现实生活中,许多人际矛盾都是由于磨和不够造成的。两个死敌之间可能没有品德差别和利益矛盾,如果磨和好就会成为好朋友。
     
      [故事述评]--向前跨一步
     
      二战期间,一位美国将军在给部下布臵任务,几个下级在他面前排成一列。他说:?这个任务很艰巨,也很重要。谁愿意接受任务,就向前跨一步。?
     
      说完话的同时,电话铃响了,将军转身接电话。之后再转身,发现几个下级还是排成一列。将军勃然大怒。部下委屈地辩解:我们每个人都向前跨了一步。
     
      ——在那种条件下,我们很难说是将军缺乏观察能力,没有水平,也很难说是将军犯下错误。是双方关系给大家开了玩笑。这提醒我们,有些客观情况是瞬间发生了变化,主观的认识难以跟随,就造成脱节误事。
     
      三对策
     
      原因确定后,就对症下药。人们往往借鉴历史传统、个人经验和他人经验的方法。这些已经得到实践的检验,具有确定的效果,而且最迅捷。但是,也要注意经验的局限,有些新问题不能完全照搬旧经验。
     
      对策分化为两个典型,一种是消除,把问题事物消灭掉。一种是放任,任凭问题的发展。二者构成五层系统
     
      铲草除根——消除——制约——放任——推波助澜
     
      在一般情况下,人们都采取消除措施,甚至把滋生问题的背景和环境都铲除。在特殊情况下,例如力不从心,人们只好采取放任措施。在极少数条件下,例如趁机暗中报复,人们还推波助澜,把问题扩大化,公开化。
     
      1消除
     
      当自己力量巨大,问题严重到无法承受的地步,人们往往采取消除对策。
     
      针对问题事物的内在结构,消除的方式有许多。例如,起火时,调整火向以控制方向,用水浇以除其能力,用沙石覆盖以断绝空气条件。
     
      [故事述评]--杰弗逊大厦
     
      美国华盛顿广场有一座宏伟的建筑,这就是杰弗逊纪念馆大厦。这座大厦历经风雨沧桑,年久失修,表面斑驳陈旧。政府非常担心,派专家调查原因。
     
      调查的最初结果以为侵蚀建筑物的是酸雨,但后来的研究表明,酸雨不至于造成那么大的危害。最后才发现原来是冲洗墙壁所含的清洁剂对建筑物有强烈的腐蚀作用,而该大厦墙壁每日被冲洗的次数大大多于其他建筑,因此腐蚀就比较严重。
     
      问题是为什么每天清洗呢?因为大厦被大量的鸟粪弄得很脏。为什么大厦有那么多鸟粪?因为大厦周围聚集了很多燕子。为什么燕子专爱聚集在这里?因为建筑物上有燕子爱吃的蜘蛛。为什么这里的蜘蛛特别多?因为墙上有蜘蛛最喜欢吃的飞虫。为什么这里的飞虫这么多?因为飞虫在这里繁殖特别快。为什么飞虫在这里繁殖特别快?因为这里的尘埃最适宜飞虫繁殖。为什么这里的尘埃最适宜飞虫繁殖?其原因并不在尘埃,而是尘埃在从窗子照射进来的强光作用下,形成了独特的刺激致使飞虫繁殖加快,因而有大量的飞虫聚集在此,以超常的激情繁殖,于是给蜘蛛提供了丰盛的大餐。蜘蛛超常的聚集又吸引了成群结队的燕子流连忘返。燕子吃饱了,自然就地方便,给大厦留下了大量粪便……
     
      因此解决问题的最终方法是:拉上窗帘。杰弗逊大厦至今完好。
     
      ——可见,有些问题并不像我们看起来的那样复杂,只是我们还没有找到解决问题的简单办法。
     
      2制约
     
      所谓制约,就是限制约束的意思。当自己力量不足够,无法把问题铲除又必须解决时,可以用约束、掩盖、拖延等方式,把问题的影响尽量缩小。
     
      我们知道,事物因素有四种三属,可以从七个方面制约。例如,当两人发生矛盾时,从目的方面可以想办法降低对方的敌意,从能力方面削弱其体力,从方法方面打乱其计划,从条件方面限制其时间和地点。
     
      [故事述评]--画像
     
      以前有一位国王,他独眼缺手断脚。他却很爱面子,很想将他那副尊容画下来,留给后代子孙瞻仰,于是请来全国最好的画家。一个画家将国王画得很逼真,栩栩如生,很传神。但是,国王看了之后很难过,说:?我这么一副残缺像,怎么传得下去!?于是就把这位画家给宰了。
     
      他又请来第二位画家。这位因有前车之鉴,不敢据实作画,就把国王画得圆满无缺。把缺的手补上去,把断的腿补上去,国王看了之后更难过,说:?这个不是我,你在讽刺我。?又把他给宰了。
     
      第三位画家怎么办呢?写实派的给宰了,完美派的也给宰了。想了很久,急中生智,画了一幅国王一手持手枪单腿跪下闭住一只眼瞄准射击的肖像画,把国王的缺点全部掩盖。结果国王大大的奖赏了他。
     
      ——掩盖是艺术也是智慧。
     
      四实施
     
      制定对策后,就进入实施阶段。人们既要执行对策,同时检验效果,作出必要的修正。如果出现意外,执行过程就会停止
     
      执行和停止构成五层系统:检验——执行——拖延——停止——放弃
     
      在一般情况下,人们会执行对策,进而检验效果。在特殊情况下,例如出现重大变故,人们会停止对策,甚至放弃对策。
     
      1执行
     
      人们争取目标实施行为的过程是漫长和复杂的,表现为许多阶段。目的和目标经常在意志中发生递进转换。本阶段的目标成为成为下阶段的目的,下阶段的目的又组成新的目标,如此循环递进,直到结局。
     
      久而久之,主体可能混淆真正的目的和目标,把目标当作目的,不把结果对照目的进行分析,这个时候,人们要保持一定的警惕,时刻反思自己的目的和目标之间关系,不要陷入把目标当目的的陷阱。
     
      例如,人们把吃饭当作目的,把饭菜当作最后目标。在实际过程中,第一阶段,人们要先买来大米。这时,买大米成为第一大目标。在买大米的过程中,到市场成为第一小目标,而买大米化为一种目的。在到市场过程中,到市场成为一种目的,寻找出租车成为一种目标。如此递进转换,到最后,人们很容易忘记自己的本来目的和终极目标。
     
      一个明显的例子是,许多家长望子成龙,把培养孩子能力作为目的,把孩子服从自己安排作为目标。但在实际过程中,往往把管制孩子作为目的,只要孩子服从自己的安排就行,而不仔细考察孩子的能力是否真正和全面发展,结果事与愿违,适得其反。
     
      人们的目的都渴望出人头地,渴望成功。许多人把考上名牌大学作为一种阶段目标。结果,进入大学后不思进取,荒废学业,毕业后?泯然众人矣?。
     
      [故事述评]--圆珠笔
     
      圆珠笔开始发明以后,很受大众欢迎。但它有个毛病,书写到大约2万字,圆珠和笔管的缝隙扩大,就容易漏油。圆珠笔厂为了解决此问题,要找到一种新型圆珠材料,既不易磨损,又很顺滑,造价还得便宜。他们做了很多试验都找不到满意的物质。
     
      后来,有个日本人把制造新圆珠的目标去掉,追溯本来的书写目的,制定出新目标:把油墨只注入到写2万字的水平,写完更换新笔。这个人因此申请专利,成为富翁。
     
      2检验
     
      检验属于执行中的执行,是对执行效果的检测和控制。有些人只注意干活,不注意效果,这非常愚蠢。
     
      有些人认为检验占用了一些资源,不值得。这非常错误。对于关键的事情,人们应该随时检验,防止偏差;对于一般的事情,人们可以定期和放松检查。
     
      行为总要持续一段时间。在实践过程中,人们会发现新情况乃至新问题,就要对比既定策略,考虑既定方法是否合适?。
     
      人们必须进行鉴定。只有鉴定结束,整个行为才算告一段落。
     
      结果分为两种典型。一是完成,基本、完全甚至超额解决了问题。二是欠缺,没有或者部分解决了问题。对此也要辩证看待。如果一个不重要的问题,需要你拼命解决,就不如保留欠缺。
     
      [故事述评]--卞和献璧
     
      春秋时期,楚国人卞和在荆山得一玉璞,献给厉王,厉王使人鉴别,说是石头,有欺君之罪,断其左足。到武王即位,卞和再次献玉,武王使人鉴别,仍说是石头,又断其右足。后来文王即位,卞和抱玉恸哭于荆山下,文王派人去问他为什么哭。他说:?宝玉而名之曰石,贞士戮之而漫(欺骗),此臣之所以悲也。?文王令人剖璞,果得宝玉。因此称?和氏璧?。卞和以功封为零阳侯。
     
      后来,和氏璧流落到赵国,《史记》所说的?完璧归赵?故事中的?璧?,即是卞和所献之宝玉。数十年后,秦灭赵而得到和氏璧。秦始皇顺天意统一六国,用和氏壁雕刻成传国玉玺,上写篆书?受命于天,既寿永昌?八个字,形同龙凤鸟之状,玺文由丞相李斯书写,著名玉匠孙寿镌刻。从此千多年成为帝王的象征,代代相传,称为?传国玺?。
     
      [故事述评]--漏掉的敌人
     
      1947年5月,华东野战军在山东孟良崮地区全歼了国民党军?王牌中的王牌?、全部美械装备的整编74师,击毙敌中将师长张灵甫。孟良崮上枪声停止的这个傍晚,我军甚至连战场都顾不上打扫就匆匆撤出,因为外围有大量国民党军队。
     
      当大概的战果统计数字报上来后,心细的粟裕发现连死带抓只有25000人。他居然派出一支部队重返战场,从山沟里搜出了因为弹药殆尽而隐藏不露的7000国军,这才凑齐了张灵甫麾下的32000人。
     
      ——粟裕敢于如此冒险,是因为外围的诸多国民党军听到孟良崮方向已无枪声,多被74师这样的王牌师被共军全歼的事实所震慑,个个原地不动,生怕那山上还有共军在等着自己。他们哪知,把那7000人救出来而避免74师全军覆灭的最后一个机会,就这样,随着他们那已经萎靡的意志,流到沂蒙山的溪流里去了。
     
      3停止
     
      在特殊情况下,人们会停止行动,其状况多多,如下——
     
      (1)能力不济。
     
      (2)客观条件发生变化,无法适应。
     
      (3)通过检验和反思,发现此问题不值得进行,半途而废。
     
      五后果
     
      当行为停止后,有些事情值得总结。并非许多问题都值得反思,许多问题的解决都是按照固定程序来干得,人们可以放任随意,不进行反思也可以。
     
      总结和放任构成五层系统:
     
      预防——总结——印象——烙印——消逝
     
      有些事情给当事者留下深刻印象,有些则消逝,没有印记。
     
      对于许多事情来说,结局并非结束,而是新一轮行为的开始,包括总结和预防两个阶段问题。而预防属于解决问题的升华层次。
     
      1总结
     
      人们往往发问:我的方法是否妥善?有什么新的发现和补充?花费的代价和取得的效果是多少?效益如何?
     
      2预防
     
      预防属于总结的极端升华。根据经验教训,人们要进行预防,可以收到事半功倍的效果。因为,事物主要按照自己的规律运做。当特定条件产生后,问题必然形成和发作。我们早早地把问题发生的条件控制住,就能把问题消灭在萌芽状态,何乐而不为呢?
     
      [故事述评]--刘邦的预防
     
      西汉的陆贾以门客身分跟随刘邦平定天下。刘邦当上皇帝后,他经常在刘邦面前提到《诗经》和《尚书》,并讲述商、周的历史。
     
      刘邦认为陆贾虽然懂得不少,但过于迂腐,十分生气地对他说:?我靠骑马驰骋疆场,夺取了天下,哪里用得着读书诵经!?陆贾回答说:?骑马打天下成功了,难道还能靠骑马纵横来治理天下吗?从前的商汤王和周武王算是贤明能干的人了,他们虽然以诸侯身分用武力夺取了王位,但称帝后却能息武功,推行文治之道。文武并用,打下的江山才会保持长久。如果秦国统一天下后,能够大力推行仁政,向从前的圣贤学习,陛下怎么可能消灭秦国夺取天下??
     
      原来,周武王推翻商朝后,为了巩固政权,大力推行仁治德政,以安抚商朝百姓。他起用了殷纣王的儿子武庚,封给他领地,让他继续统治京城的商朝遣民。周武王打开监狱,大赦囚犯,使自由民得到了解放。他把宫廷聚集的财物和粮食分发给无衣无食的贫民,解决了他们的温饱,并将被殷纣王剖心杀死的比干的坟墓重新修整,以表示对这位忠义正直之士的崇敬。这一系列措施得到了被征服的商朝人民的拥护,都乐意归顺武王的统治。后来,辅佐周成王的周公继续推行这样的仁治德政,并制定礼乐,逐步稳定了社会,使政治经济出现了繁荣的局面。
     
      刘邦听了陆贾这番话后,内心里感到惭愧,决心效法前贤。他请陆贾写文章,探讨秦国失败、刘邦获得成功的原因,总结历史上兴衰成败的经验教训,作为治国的参考。
     
      陆贾据此撰写了《新语》一书,用十二篇文章探讨了治国成败之道。刘邦对这本书大加赞赏,采纳书中的建议,清除秦国的暴政,推行仁治,让人民得到休养生息。这样,西汉初期的社会秩序逐步稳定下来,经济开始复苏。
     
      ——许多人认为刘邦乃小人一个,不该得天下。从上面故事看,刘邦具有大智慧。许多人钟情项羽,请看韩信拜将后,对刘邦谈论项羽的话:项王一声怒喝,千人会吓碍胆战腿软,可是他不能放手任用贤将,这只算匹夫之勇。项王待人恭敬慈爱,语言温和,人有疾病,同情落泪,把自己的饮食分给他们。可是等到部下有功应当封爵时,他把官印的棱角都磨光滑了也舍不得给人家,这是妇人之仁。
     
      事物认识分析基本方法
     
      在事物认识的基本方法中,分析与综合方法等经多年发展有:①亚里士多德:归纳──演绎法模式;②伽利略:实验──数学探究模式;③培根:科学归纳探究模式;④牛顿:假说──演绎探究模式和公理化方法探究模式等。而马克思从对立统一规律出发,论述和发展了分析与综合方法,使其成为唯物辩证法的重要方法,成为人们认识和解决问题的有力武器。
     
      一、分析方法
     
      所谓分析方法就是把研究对象整体分解为各个组成部分、方面、元素、因素和层次,分别加以研究,进而揭示事物属性和本质的方法。
     
      (一)分析的任务
     
      分析事物在空间分布上的各个组成部分;在时间发展上的各个阶段;分析事物的有机组成;事物逻辑组成等。
     
      (二)分析的思维过程
     
      首先把整体加以?解剖?,把它的各个部分或要素从整体中?分割?开来或?分离?出来,变整体为部分,变复杂为简单,化难为易以找出它们相同于系统整体的特征以及它们之间相互区别的特征,从而为解决问题提供重要依据。最后进一步分析各个部分相互联系、相互作用的情况,阐明它们各自所处的地位、各自所起的作用,各以何种方式与其他部分发生相互作用的规律性。
     
      (三)分析方法的类型
     
      1、定性分析法。定性分析就是对研究对象进行?质?的方面的分析。主要是解决研究对象?有没有?、?是不是?的问题,具体地说是运用归纳和演绎、分析与综合以及抽象与概括等方法,对获得的各种材料进行思维加工,从而能去粗取精、去伪存真、由此及彼、由表及里,达到认识事物本质、揭示内在规律。即本质的东西,只有这样才能正确地描述一个事物.揭示事物间的相互关系。但它只能分辨出事物指标的高与低、长与短、大与小等概念标准。定性分析定性研究分为三个过程:分析综合、比较、抽象和概括。主要如下。
     
      (1)因果分析法。首先要分清因果地位;其次要注意因果对应,任何结果由一定的原因引起,一定的原因产生一定的结果。因果常是一一对应的,不能混淆;最后,要循因导果,执果索因,从不同的方向用不同的思因果分析法维方式去进行因果分析,这也有利于发展多向性思维。按事物之间的因果关系,知因测果或倒果查因。因果预测分析是整个预测分析的基础。回归分析中,当研究的因果关系只涉及因变量和一个自变量时,叫做一元回归分析;当研究的因果关系涉及因变量和两个或两个以上自变量时,叫做多元回归分析。
     
      (2)可逆分析法。可逆分析是解答下述问题的一种分析方法:作为结果的某一现象是否又反过来作为原因,从而产生原来是原因的那一现象。
     
      (3)结构分析法。结构分析法是指对系统中各组成部分及其对比关系变动规律的分析。结构分析主要是一种静态分析,即对一定时间内系统中各组成部分变动规律的分析。如果对不同时期内系统结构变动进行分析,则属动态分析。结构分析法是在统计分组的基础上,计算各组成部分所占比重,进而分析某一总体现象的内部结构特征、总体的性质、总体内部结构依时间推移而表现出的变化规律性的统计方法。结构分析法的基本表现形式,就是计算结构指标。其公式是:结构指标(%)=(总体中某一部分/总体总量)X100%。结构指标就是总体各个部分占总体的比重,因此总体中各个部分的结构相对数之和,即等于100%。
     
      (4)比较分析法。比较是经常使用的一种方法,它既要研究事物之间的共同点,又要分析事物之间的不同点,正反比较、横向比较分析与纵向比较分析。比较是认识对象间的相同点或相异点的逻辑方法。它可以在异类对象之间进行,也可以在同类的对象之间进行,还可以在同一对象的不同方面、不同部分之间进行。横向比较分析:不同事物在同一时间阶段呈现的异同比较分析进而认识事物。纵向比较分析:事物在不同时间阶段呈现的异同。比较分析时间,要注意比较分析的参照标准要统一,具有可比性,比较要有供比较的对象,也要有比较的共同基础。所谓类比是这样的一种推理,它把不同的两个(两类)对象进行比较,根据两个(两类)对象在一系列属性上的相似,而且已知其中一个对象还具有其他的属性,由此推出另一个对象也具有相似的其他属性的结论。
     
      (5)分类分析法。把无规律的事物分为有规律的.按照不同的特点分类事物,使事物更有规律。即归类。在逻辑中,指把具有共同特点的个体对象归入一类,并把具有共同特点的类集合成类的思维过程和方法。
     
      (6)普遍联系(联想)分析法:把事物放到作为个体或一个因素放到整体大环境中来分析认识。通过正反类似等具有普遍联系联想的事物来认识基本事物某方面的特性。
     
      (7)概念分析法。根据事物的概念内涵、外延和字面来解析认识事物。
     
      (8)归纳分析法。逻辑的一个分支。有两个含义:①狭义的归纳逻辑的研究对象是前提和结论之间具有或然联系的归纳推理;②广义的归纳逻辑还包括在进行归纳推理时所使用的科学方法,亦称归纳法。归纳逻辑按其发展的不同阶段,又可以分为古典的归纳逻辑和现代的归纳逻辑两大类型。
     
      (9)演绎分析法。演绎推理是由普通性的前提推出特殊性结论的推理。演绎推理有三段论、假言推理和选言推理等形式
     
      (10)现象分析法。通过事物的现象(包括假象)来分析认识事物。
     
      2、定量分析法。定量分析是对事物的数量特征、数量关系与数量变化的分析。如资金平衡表、损益表、留存收益表等。
     
      (1)数学分析法。
     
      (2)定量试验法
     
      3、利益分析法。利益分析方法是从利益的角度,通过社会历史现象把握其本质和根源,透过各种社会主体的言论和行为把握其动因的方法。它是我们把握国内国际利益格局,正确制定战略的十分重要的工具。利益分析方法在社会领域和人类历史长河中具有普遍的适用性和有效性。
     
      (四)分析方法的局限性
     
      分析方法容易使人们的眼光限制在片面、狭窄的领域里,忽视事物之间的有机联系,养成孤立,静止和片面看问题的习惯。因此还需要与综合方法结合起来运用。
     
      二、综合方法
     
      所谓综合方法。就是把研究对象的各个部分、方面和因素联合起来加以研究,从而在整体上把握事物的本质和规律的思维方法。综合方法与分析方法相同之处在于,都是以事物的整体和部分的关系作为客观基础,只是在认识过程的方向上与分析方法相反。
     
      (一)综合方法的思维特点
     
      力求通过全面掌握事物各部分、各方面的特点及其内在联系,并通过概括和升华将事物的各部分、方面、各种属性真实联结复现事物本来面目的整体性。一句话,综合方法是变简单为复杂,变分离为统一,变局部为整体。
     
      (二)综合方法的形式
     
      从综合方法的规模来分有小型综合和大型综合;从具体的方法来分有对称法、移植法。系统法等。
     
      1、系统分析法。
     
      系统分析方法是指把要解决的问题作为一个系统,通过系统目标分析、系统要素分析、系统环境分析、系统资源分析和系统管理分析,找出解决问题的可行方案,最终解决问题。系统分析方法从系统的着眼点或角度去考察和研究整个客观世界,为人类认识和改造世界提供了科学的理论和方法,以?实物为中心?逐渐过渡到以?系统为中心?,是科学思维的一个划时代突破。系统分析方法的步骤:限定问题、确定目标、调查研究收集数据、提出备选方案和评价标准、备选方案评估和提出最可行方案。
     
      ①限定问题:所谓问题,是现实情况与计划目标或理想状态之间的差距。系统分析的核心内容有两个:其一是进行?诊断?,即找出问题是及其原因;其二是?开处方?,即提出解决问题的最可行方案。所谓限定问题,就是要明确问题的本质或特性、问题存在范围和影响程度、问题产生的时间和环境、问题的症状和原因等。在限定问题时,要注意区别症状和问题,探讨问题原因不能先入为主,同时要判别哪些是局部问题,哪些是整体问题,问题的最后确定应该在调查研究之后。
     
      ②确定目标:系统分析目标应该根据客户的要求和对需要解决问题的理解加以确定,如有可能应尽量通过指标表示,以便进行定量分析。对不能定量描述的目标也应该尽量用文字说明清楚,以便进行定性分析和评价系统分析的成效。
     
      ③调查研究,收集数据:调查研究和收集数据应该围绕问题起因进行,一方面要验证有限定问题阶段形成的假设,另一方面要探讨产生问题的根本原因,为下一步提出解决问题的备选方案做准备。调查研究常用的有四种方式,即阅读文件资料、访谈、观察和调查。收集的数据和信息包括事实(facts)、见解(opinions)和态度(attitudes)。要对数据和信息去伪存真,交叉核实,保证真实性和准确性。
     
      ④提出备选方案和评价标准:备选方案是解决问题和达到咨询目标可供选择的建议或设计,应提出两种以上的备选方案,以便提供进一步评估和筛选。为了对备选方案进行评估,要根据问题的性质和客户具备的条件。提出约束条件或评价标准,供下一步应用。
     
      ⑤备选方案评估:根据上述约束条件或评价标准,对解决问题备选方案进行评估,评估应该是综合性的,不仅要考虑技术因素,也要考虑社会经济等因素,评估小组的成员应该有一定代表性,除咨询项目组成员外,也要吸收客户组织的代表参加。根据评估结果确定最可行方案。
     
      ⑥提交最可行方案:最可行方案并不一定是最佳方案,它是在约束条件之内,根据评价标准筛选出的最现实可行的方案。如果客户满意,则系统分析达到目标。如果客户不满意,则要与客户协商调整约束条件或评价标准,甚至重新限定的问题,开始新一轮系统分析,直到客户满意为止。
     
      (三)分析和综合的关系
     
      分析与综合是辩证统一不可分割的。从认识过程来看,分析与综合的方向相反,分析是化整为零,化繁为简,由未知追溯到已知;而综合是化零为整,变部分为有机联系的统一整体。由已知引导到未知。综合优于分析的地方,在于它恢复并把握了事物本来的联系,揭示了事物在分割状态下不可能具有的特征。
     
      而事物的研究过程,一般是先分析,后综合,分析是综合的基础,没有分析就没有综合,正确的综合,必须先分析对象内部各方面的本质、各种因素的特点。当分析达到一定程度后再进行综合。综合是分析的发展,没有综合也就没有分析,任何分析总要从某种整体性出发,离开了综合,分析就会有很大的盲目性。
     
      分析和综合是辩证的统一,在一定条件下,它们可以相互转化。人们的认识就是沿着这种分析-综合-再分析-再综合的轨迹不断前进。
     
      三、事物的基本要素与方面
     
      一、时间:历史、现状、未来。
     
      二、价值:价格、价值、使用价值。
     
      三、空间:平面、垂直、立体分布;抽象(广度、深度)。
     
      四、质量:
     
      五、环境因素:内部因素、外部因素
     
      六、运动:
     
      七、学科:物理、化学、生物学
     
      八、其他:精神、意识层面
     
      利益分析方法
     
      利益分析方法是从利益的角度,通过社会历史现象把握其本质和根源,透过各种社会主体的言论和行为把握其动因的方法。它是我们把握国内国际利益格局,正确制定战略的十分重要的工具。利益分析方法在社会领域和人类历史长河中具有普遍的适用性和有效性。
     
      在马克思主义看来,认识世界主要不是为了解释世界,而是改造世界,因此,马克思主义非常强调理论与实践的统一、世界观与方法论的统一。正因如此,马克思主义不仅重视利益理论,也非常重视利益分析方法。在他们看来,利益分析方法是深入把握社会事件的本质及其根源的方法,在进行社会革命过程中只有自觉地运用它才能掌握主动并取得成功。
     
      那么,利益分析方法的基本依据何在呢?
     
      (一)利益是历史发展的基本动因的历史观,必然导致利益分析的方法论。
     
      人类的自身机能需要必须首先解决吃穿住等问题,因此人类的物质生活资料的生产就构成了历史的基本前提。在人类为了实现生存和发展所进行的物质资料的生产过程中,必然产生对物质产品的占有、支配和使用问题,从而形成产生、交换、分配、消费的方式和关系,产生错综复杂的物质利益关系,并经常发生利益冲突。为了调节人类这些利益矛盾和利益关系,社会逐步形成了相应的包括政治法律、宗教哲学在内的意识形态和包括政府、军队、警察、监狱等在内的社会上层建筑机构。在阶级社会中,各个阶级和社会集团都力图利用国家机器为自己服务,都力图利用意识形态为自身的利益辩护,因此在人类社会不仅有经济领域的斗争,还有思想文化领域和政治领域的斗争。人类为适应经济发展的要求即社会生产力发展的要求,不断适时地调整生产关系和变革上层建筑,从而形成了历史的演变过程。
     
      第一,物质利益是生产力形成和发展的原始动因。第二,生产关系实质是物质利益关系,物质利益关系是人与人之间最基本的关系。生产关系的内容就是各个时期人们对产品的占有、分配、交换的物质利益关系,正是这些利益关系的不同及其演变形成了不同的利益差别、利益矛盾和利益对立。第三,物质利益是上层建筑的最终动因。无论是政治的上层建筑还是思想的上层建筑,其形成和发展都根源于物质利益。因为政治斗争?归根到底都是围绕着经济解放进行的。?宗教也是如此,历史上的宗教斗争?每次都隐藏着实实在在的现世利益?。(注:《马克思恩格斯全集》第22卷,第526页。)毫无疑问,在生产力和生产关系,经济基础和上层建筑这个社会基本矛盾运动中,自始自终贯穿着物质利益这一主线。物质利益既是社会基本矛盾运动的动力,又是社会基本矛盾运动的目的和归宿,人类历史的画卷正是围绕着谋取利益、实现利益而展开的。既然如此,把这种利益动力的历史观转化为分析和观察人类历史社会的方法论,是很自然的。
     
      (二)利益对于人们思想和行为的根源性和支配性,必然导致利益的分析方法。
     
      马克思说过:?人们奋斗所争取的一切和他们的利益有关?。(注:《马克思恩格斯全集》第1卷,第82页。)司马迁也说过:?天下熙熙,皆为利来,天下攘攘,皆为利往。?《管子〃牧民》也指出:?国多财则远者来,地辟举则民留处。?这些话语准确无误地反映了利益对于人们思想和行为的根源性和支配性,古代如此,现代和将来也是如此。?两
     
      13害取其轻,两利取其大?,这不仅表现在商品选择上,还表现在职业选择,生产行业、生产品种的选择,生产技术和生产方法的选择以及方针路线政策的选择,国家制度的选择以及战略的选择上,而客观对象的命运如何,是否受到欢迎,则取决于客观对象满足人们需要的程度。新的事物(包括产品、产业、工艺和方法)之所以取代旧事物,就在于它更适合人类的需要,能够在较大的范围和更高的程度上满足人类的需要。
     
      利益支配人们的行为,自然支配着人们的思想和言论。利益支配人们的思想和言论还有另外一种表现方式,即把真实的意图和利益目的掩盖起来,搞骗人把戏。兵不厌诈?,在军事斗争中如此,在经济生活中也是如此,在政治生活中也是如此。
     
      利益也支配着各种社会群体。对于阶级而言,某一个阶级的领袖牺牲了,但那个阶级所进行的斗争是不会停止的,这是由他们的利益所决定的,除非社会条件得到了改造。对于国家也是如此,国家领导人的更替一般不影响其对外政策的性续性,这是由国家的利益决定了的。列宁在十月革命后就明确指出:?我国内外政策归根到底是由我国统治价级的经济利益和经济地位决定的,这一原理是马克思主义整个世界观的基础。?
     
      既然社会由人及其活动组成,而利益对于人的思想和言行具有支配性和根源性,由此自然引出利益分析的方法论。
     
      二、利益分析方法的内容
     
      (一)要把握重大社会事件背后的阶级和社会集团的利益根源。
     
      利益问题既是重大社会事件的导火线,又是它的根本原因,因此,要把握重大社会事件的本质,除了了解事件形成和发展经过的事实外,更重要的是要把握它的利益根源,这样才能不被它的假像所迷惑,把握到其本质、动因和发展的趋势。
     
      (二)各个阶级和社会集团的利益是它在社会关系中的地位决定的。
     
      一切重大社会事件都可以归结到一定的阶级和社会集团的利益,那么,其利益是由什么决定的呢?是由其所处社会关系中的地位决定了的。任何政治制度和经济制度对当时各个阶级、阶层和社会集团的利益并非是完全均等的,一般而言取得政治统治的阶级和社会集团获得的利益最大。各个阶级和社会集团在社会中的不同地位决定了它的基本态度。
     
      (三)分析利益格局是制定战略的依据。
     
      既然重大的社会事件的产生根源于一定阶级和社会集团的利益,而它的利益是由所处的社会关系中的地位决定的,那么分析社会关系即整个利益格局是制定整个战略的依据。
     
      (四)要根据社会事件对谁有利有害的性质和程度,决定我们的政策和策略。
     
      社会主体倡导和策划,以及实施任何事情都出于一定的利益动因,因此必须根据社会事件对谁有利以及利害的性质和程度来决定我们的政策和策略。
     
      三、利益分析方法的战略地位和实践价值
     
      怎样看待利益分析方法的战略地位和实践价值?如果用一句话来表述,就是:利益分析方法是社会领域中最基本的认识方法和分析方法之一,是任何社会主体要有效地参与社会生活实践必须运用的最基本的方法之一。
     
      (一)利益分析方法是认识社会的十分重要的方法之一。
     
      第一,利益分析方法是认识社会基本矛盾形成和发展的一把钥匙。众所周知,生产力之所以决定生产关系,并推动其发展(表述为生产关系一定适合生产力发展规律),经济基础之所以决定上层建筑并推动它发展(表述为上层建筑一定要适合经济基础及其发展规律),原因何在?就是社会成员的利益起决定作用的结果。因为生产关系不适合生产力发展,人们的利益就得不到实现和发展,最后必然损害到广大社会成员的利益,这是广大社会成员所不允许的。恩格斯说过:?透过各种偶然性为自己开辟道路的必然性,归根到底仍然是经济的必然性。?(注:《马克思恩格斯选集》第4卷,第506页。)这无疑是正确的,因为经济发展是社会发展的基础和条件,是广大社会成员的利益所在。
     
      另一方两,生产关系,上层建筑之所以对生产力、经济基础发生作用,也是通过利益而实现的。新的生产关系使人们日益实现自身的利益,就能唤起人们的生产热情,从而推动生产力的迅速发展。相反,如果生产关系使人们日益陷入困境,就必然挫伤人们的积极性,使生产萎缩不前甚至受到破坏。上层建筑对经济基础的作用也是如此,要是它维护旧的生产关系,损害广大劳动人民利益,势必阻碍经济发展,若是它为新的经济关系的确立和实施服务,给广大群众进一步发展利益提供了广阔的前景,自然就促进经济的迅速发展。可见,社会基本矛盾确实是在利益的基础上发挥作用的,把利益方法作为钥匙,才能对社会基本矛盾相互作用及其运动获得深刻而又具体的理解。
     
      第二,利益分析方法是深刻理解一系列社会现象的工具。人类社会现象是复杂的,有民族纠纷、阶级斗争、社会革命等等,这些社会现象无疑与社会基本矛盾相联系,因此,用社会基本矛盾即生产力和生产关系、经济基础与上层建筑之间的相互关系去说明在一定程度上是可以理解的。然而,社会基本矛盾是在利益的基础之发生作用的,因此用利益去说明就更深刻、更彻底,更能抓住根本。例如各个阶级内部矛盾、冲突、相互残杀,民族社会中氏族集团之间的冲突和吞并,同一社会制度的不同国家之间的战争,仅仅从社会基本矛盾去分析是难以理解的。
     
      第三,利益分析方法是理解各种社会主体本性及其运行趋势的重要法宝。社会主体是多层次的,有个人、家庭、宗族、村落、企业、地方群体、社会集团、民族、阶层、阶级、国家以及全人类等等。它们都有一个共同点,那就是他们都由人所组成,其行为都根源于利益,受利益的支配和制约,而它们的利益是由其所处的社会地位所决定,因此利益分析方法是理解它们的本性及其运行趋势的重要法宝。利益分析方法在判断个人、阶级上是有效的,在分析和判断国家上也是有效的。
     
      (二)利益分析方法与其它方法的关系是一般与特殊、内容与形式的关系。
     
      第一,利益分析方法与阶级分析方法是一般与特殊的关系。阶级分析方法是利益分析方法的具体运用。利益分析方法就是从利益的角度探求社会事件根源的方法,它把握了事物的利益根源之后反过来就可以预见它的发展趋势。这种方法在阶级社会中的运用,就是分析各个阶级在生产关系中的地位以及它们与现存制度的利益关系,从而预见他们对现制度的政治态度和思想观点,从而形成了阶级分析方法。阶级分析方法在阶级社会中很有效且非常重要。阶级分析方法之所以有效,就是它贯彻了利益分析方法,把握了各个阶级的利益所在,从而预见他们基本的政治立场和基本的倾向。阶级分析方法之所以重要,就是舍此很难解决阶级的政治战略问题。阶级分析方法适用于阶级社会,利益分析方法适用于人类社会的始终。而且在阶级社会中,在个别地方、个别事件如同一阶级内部的利益矛盾,阶级分析方法不一定适用,但利益分析方法却是普遍适用。
     
      第二,利益分析方法与因果法具有同一性,两者的关系是内容与形式的关系。利益分析方法本质上就是从社会现象探求其原因的方法,它与因果法是一致的。虽然因果法适用自然界、人类社会和思维领域,而利益分析方法只适用于人类社会,但利益分析方法在社会领域有着特殊的功能,它是社会领域中探求社会现象根本原因的最基本亦即最重要的方法。其道理很简单,因为利益是人们的基本动因,而社会由人所组成,不用利益分析方法是很难把握到社会事件形成和发展的原因的。
     
      第三,利益分析方法为从社会存在看社会意识的方法提供进一步的支持。社会存在决定社会意识是历史唯物论的基本原理。这一原理转化为方法论就是从社会存在看社会意识,从社会存在的变化去理解社会意识的变化。换句话说,就是社会意识的变化要从社会存在的变化中去追溯根源。那么,利益分析方法与之是什么关系呢?利益分析方法为之提供了可以依托的基础和依据。众所周知,社会利益关系的变化必然引起上层建筑包括社会意识的变化。为什么会如此,因为前者决定后者,后者要为前者服务。社会存在之所以决定社会意识其根源在于利益对于思想的根源性和支配性。正因为如此,马克思说过:?‘思想’一旦离开‘利益’,就一定会使自己出丑。?(注:《马克思恩格斯全集》第2卷,第103页。)可见,用利益分析方法去审视社会存在即人们的物质利益关系决定社会意识即人们的思想观念,这是自然的。
     
      第四,利益分析方法为历史唯物主义方法提供了理解社会现象的指导线索。历史唯物主义方法不脱离历史事件,从而避免了脱离实际的唯心主义抽象。然而这种方法如果仅仅停留在现象的罗列上,就把握不到事件的本质。因此,历史主义方法需要利益分析方法作为其辅助的工具,帮助其揭示事件的内在利益根源,并把事件发生的各种现象串连起来加以理解,从而把握其脉络及其本质。所以,利益分析方法是把各种现象按其内在关系串连起来加以理解的基本线索和基本的工具。它与历史主义方法是相辅相成的关系。
     
      (三)利益分析方法在社会各个领域和各个学科中都有广泛的适用性。
     
      利益问题贯彻于人类社会的各个领域,因此利益分析方法当然适用于社会的各个领域,并被各门具体的社会科学广泛运用。例如在刑事侦察中常常运用利益动因的分析方法来寻找作案的对象和分析案件的脉络,以及对案件的性质作出判断。在经济领域,制定行业政策、产业政策和进行资源配臵过程中,也需要运用利益分析的方法,因为利益是经济调控的重要杠杆。在政治领域,确立政党制度、国家制度,制定民族政策、干部政策等等都离不开利益分析方法。正确处理国家间的关系离不开利益分析方法。就是做思想工作也离不开利益分析方法。
     
      利益分析方法对普通老百姓而言,是需要的。因为人与人的关系,最本质的是利益关系。作为生活在社会上的人总是与他人以及整个社会发生关系,因此任何言行都对他人发生影响,如不正视利益问题,讲话和做事很容易伤害到他人的利益和感情,肯定是要碰壁的。当然作为一位企业家、商人更需要重视顾客的利益,因而更需要利益分析方法了。至于对于掌握着一定的社会权力,领导着一个国家一个部门,肩负着调控社会,组织人们进行经济建设的政治家们和领导干部更是不用说了。
     
      解决一切问题的标准思路
     
      在生活和工作中,人们在各个方面都会碰到各种问题需要解决。问题五花八门,解决有普遍规律吗?
     
      其实,解决问题属于一个演化过程。套用五分法,分化为五个阶段,每个阶段暂且按照两分法。这样,解决问题就具有五纵两横的结构,如下所示:
     
      发现(确定-排除)——探因(主观-客观)——对策(制约-消除)——实施(执行-停止)——后果(反思-随意)
     
      一发现
     
      爱因斯坦曾经说过:提出一个问题往往比解决一个问题更重要。因为解决一个问题也许仅仅是一个数学上的或实验上的技能而已,而提出新的问题、新的可能性,从新的角度看旧的问题,却需要有创造性的想像力,而且标志着科学的真正进步。
     
      面对一种新现象,人们树立的态度分化为五种:
     
      板上钉钉——确定——犹豫——排除——熟视无睹
     
      其中,确定和排除属于典型态度。有些现象被人们经常发现,就逐渐麻木,根本不会作为问题来考虑,就形成极左的熟视无睹。有些问题表现十分明显和突出,人们就会极端强烈地确定,板上钉钉。有些现象,人们会拿不定主意,犹豫不决。
     
      1确定
     
      问题间或具有以下表现:
     
      (1),一件事情表现出与自己的传统观念不相符的形式,具有反常的特征。
     
      (2),对于同一件事情,不同的人有不同的解释。
     
      (3),某件事情让自己付出很大代价,感觉不舒服。
     
      (4),直觉某件事情不对劲。
     
      (5),有些问题以前就存在,当时无力解决而搁臵,现在能够解决而重新确定。
     
      发现问题时,人们要同时分析,既要定性,也要定量。
     
      关于定性,问题属于哪方面?是工作还是家务?是工作状态还是人事关系?
     
      其次要定量。看看问题表现得哪种程度?是小还是大?是急还是缓?
     
      根据问题的表现,再衡量自己的解决力量。如果盘算自己能够解决之,就作为问题确定下来,下定决心解决它。另外,也可以只把问题放在心上,以后看情况
     
      [故事述评]--吊灯和钟表
     
      1582年的一个星期天,十八岁的伽利略随着熙熙攘攘的人流,漫不经心地走进比萨的一座圆顶天主教堂。教堂里响起了和谐悦耳的管风琴乐曲,人们开始做礼拜了。
     
      心不在焉的伽利略,抬头仰望着天花板,目不转睛地盯住悬挂着的铜吊灯。微风一吹,吊灯来回摆动。他惊异地发现,无论吊灯摆动的幅度多大,摆动一次所用的时间总是大致相同的。伽利略又用右手按着左手的脉搏,进行测验,嘴唇不时微微动弹。这位科学奇才,从吊灯摆动的奥秘中,开创了对摆的运动规律的研究。
     
      根据单摆的等时性原理,荷兰的惠更斯制造了第一个机械摆钟。
     
      2排除
     
      人们不能把所有事情都当作问题来对待,也不能把所有问题都当作必要问题来处理。排除问题也属于解决问题的一种策略。需要排除的现象或问题有如下表现:
     
      (1),有些事情尽管反常,但并不见得成为问题,可以不予理会。
     
      (2),有些问题的确属于问题,但属于微小问题,几乎没有影响,可以不予理会。
     
      (3),有些问题应该解决,但是现在缺乏条件,可以延后处理。
     
      [故事述评]--杞人忧天
     
      从前有个小国家叫杞。杞国有一个人,整天胡思乱想,疑神疑鬼。他一会儿担心天会崩塌下来,砸扁了脑袋;一会儿担心地会陷落下去,埋住了全身。他越想越害怕,整天忧心忡忡,白天吃不下饭,夜里不敢睡觉。
     
      这件事慢慢地传开了。有个热心人看到他那副忧愁烦闷的样子,担心他把身体弄坏了,就去开导他说:?天不过是一股积聚的气体,上下四方到处都有。人的一举一动,一呼一吸都要和它接触。你整天在气体里活动,为什么还要担心它会掉下来呢??
     
      这个杞国人半信半疑地问:?如果天真是一股积聚的气体,那么太阳、月亮和星星不就要掉下来了吗???不会,不会!?那个人回答,?太阳、月亮、星星也不过是气体中会发光的物质。就是掉下来,也不会伤人的。你尽管放心。?
     
      杞国人又问:?那么地要是塌下去怎么办呢??热心人说:地不过是堆积起来的土块罢了。东南西北到处都有这样的土块。你东走西跑,蹦蹦跳跳,成天在地上活动,根本不必担心它会塌陷下去。?杞国人听了,心里好像放下了千斤重担,脸上露出了笑容。
     
      ——头顶蓝天,却整天担心蓝天会崩塌下来;脚踏大地,却成天害怕大地会陷落下去。这则寓言辛辣地讽刺了那些胸无大志,患得患失的人。?天下本无事,庸人自扰之。?我们决不做?现代的杞人?,而要胸怀大志,心境开阔,为了实现远大的理想,把整个身心投入到学习和工作中去
     
      寓言中那位热心人对天、地、星、月的解释是不科学的,只能代表当时的认识水平。
     
      二探因
     
      当决定问题需要解决时,接下来就要分析其中的原因。原因就是问题的病根。只有找到原因,才能对症下药。
     
      事物表现属于主体和客体的共同作用,原因就划分为主体和客体两个典型,构成五大层次:
     
      本质——主体——联系——客体——第三者
     
      举个例子说明。例如,轿车发生打滑问题。其主体原因在于轮胎等零件;客体原因在于路面;联系原因在于双方的摩擦;极左的第三者原因可能有风力;极右的本质原因在于轮胎的设计标准。
     
      继续深入地探讨,每个事物内部还具有许多因素。我们知道:
     
      事物力量=方向x能力x状态
     
      人的力量=动力x能力x方法
     
      应该强调的是,每个因素包含两个基本属性:种类和程度,或者说性质和数量。不同因素通过结构联系起来,组成事物。
     
      因此,综合来说
     
      事物作用=主观力量x客观条件=方向x能力x状态x条件=种类x程度x结构
     
      可见,方向、能力、状态、条件以及种类、程度、结构这四种三属共七大因素成为事物的基本因素,从而成为问题的具体原因。
     
      1主体
     
      如果人出现问题,要从三个因素来分析——
     
      动力方面,是缺乏责任还是耐心?责任缺乏多少?
     
      能力方面,是缺乏专业技术还是从业经验?技术缺乏多少?
     
      方法方面,是时间选择不对还是地点选择不对?自己这边的人和物是否协调运用?
     
      [故事述评]--刘邦的总结
     
      邦胜利之后,有一天问左右臣子:?你们直说,我为什么能打败项羽??这些臣子只是说些拍马奉承的话,刘邦听后摇头说:?我所以能打败项羽,主要靠三位人才。?接着他又说:?出谋划策,研究正确作战方针,保证打胜仗,我不如张良;制订典章法令,管理政务,筹集军费粮草,我不如萧何;身临第一线带兵打仗,做到战必胜,攻必克,我不如韩信。此三人皆为人中豪杰,均能为我所用,这是我战胜项羽的主要原因,而项羽只有一个范增也不能用,所以他注定要灭亡。
     
      2联系
     
      联系原因属于主观和客观的结合,因此,虽然不典型,但是很普遍。
     
      在现实生活中,许多人际矛盾都是由于磨和不够造成的。两个死敌之间可能没有品德差别和利益矛盾,如果磨和好就会成为好朋友。
     
      [故事述评]--向前跨一步
     
      二战期间,一位美国将军在给部下布臵任务,几个下级在他面前排成一列。他说:?这个任务很艰巨,也很重要。谁愿意接受任务,就向前跨一步。?
     
      说完话的同时,电话铃响了,将军转身接电话。之后再转身,发现几个下级还是排成一列。将军勃然大怒。部下委屈地辩解:我们每个人都向前跨了一步。
     
      ——在那种条件下,我们很难说是将军缺乏观察能力,没有水平,也很难说是将军犯下错误。是双方关系给大家开了玩笑。这提醒我们,有些客观情况是瞬间发生了变化,主观的认识难以跟随,就造成脱节误事。
     
      三对策
     
      原因确定后,就对症下药。人们往往借鉴历史传统、个人经验和他人经验的方法。这些已经得到实践的检验,具有确定的效果,而且最迅捷。但是,也要注意经验的局限,有些新问题不能完全照搬旧经验。
     
      对策分化为两个典型,一种是消除,把问题事物消灭掉。一种是放任,任凭问题的发展。二者构成五层系统
     
      铲草除根——消除——制约——放任——推波助澜
     
      在一般情况下,人们都采取消除措施,甚至把滋生问题的背景和环境都铲除。在特殊情况下,例如力不从心,人们只好采取放任措施。在极少数条件下,例如趁机暗中报复,人们还推波助澜,把问题扩大化,公开化。
     
      1消除
     
      当自己力量巨大,问题严重到无法承受的地步,人们往往采取消除对策。
     
      针对问题事物的内在结构,消除的方式有许多。例如,起火时,调整火向以控制方向,用水浇以除其能力,用沙石覆盖以断绝空气条件。
     
      [故事述评]--杰弗逊大厦
     
      美国华盛顿广场有一座宏伟的建筑,这就是杰弗逊纪念馆大厦。这座大厦历经风雨沧桑,年久失修,表面斑驳陈旧。政府非常担心,派专家调查原因。
     
      调查的最初结果以为侵蚀建筑物的是酸雨,但后来的研究表明,酸雨不至于造成那么大的危害。最后才发现原来是冲洗墙壁所含的清洁剂对建筑物有强烈的腐蚀作用,而该大厦墙壁每日被冲洗的次数大大多于其他建筑,因此腐蚀就比较严重。
     
      问题是为什么每天清洗呢?因为大厦被大量的鸟粪弄得很脏。为什么大厦有那么多鸟粪?因为大厦周围聚集了很多燕子。为什么燕子专爱聚集在这里?因为建筑物上有燕子爱吃的蜘蛛。为什么这里的蜘蛛特别多?因为墙上有蜘蛛最喜欢吃的飞虫。为什么这里的飞虫这么多?因为飞虫在这里繁殖特别快。为什么飞虫在这里繁殖特别快?因为这里的尘埃最适宜飞虫繁殖。为什么这里的尘埃最适宜飞虫繁殖?其原因并不在尘埃,而是尘埃在从窗子照射进来的强光作用下,形成了独特的刺激致使飞虫繁殖加快,因而有大量的飞虫聚集在此,以超常的激情繁殖,于是给蜘蛛提供了丰盛的大餐。蜘蛛超常的聚集又吸引了成群结队的燕子流连忘返。燕子吃饱了,自然就地方便,给大厦留下了大量粪便……
     
      因此解决问题的最终方法是:拉上窗帘。杰弗逊大厦至今完好。
     
      ——可见,有些问题并不像我们看起来的那样复杂,只是我们还没有找到解决问题的简单办法。
     
      2制约
     
      所谓制约,就是限制约束的意思。当自己力量不足够,无法把问题铲除又必须解决时,可以用约束、掩盖、拖延等方式,把问题的影响尽量缩小。
     
      我们知道,事物因素有四种三属,可以从七个方面制约。例如,当两人发生矛盾时,从目的方面可以想办法降低对方的敌意,从能力方面削弱其体力,从方法方面打乱其计划,从条件方面限制其时间和地点。
     
      [故事述评]--画像
     
      以前有一位国王,他独眼缺手断脚。他却很爱面子,很想将他那副尊容画下来,留给后代子孙瞻仰,于是请来全国最好的画家。一个画家将国王画得很逼真,栩栩如生,很传神。但是,国王看了之后很难过,说:?我这么一副残缺像,怎么传得下去!?于是就把这位画家给宰了。
     
      他又请来第二位画家。这位因有前车之鉴,不敢据实作画,就把国王画得圆满无缺。把缺的手补上去,把断的腿补上去,国王看了之后更难过,说:?这个不是我,你在讽刺我。?又把他给宰了。
     
      第三位画家怎么办呢?写实派的给宰了,完美派的也给宰了。想了很久,急中生智,画了一幅国王一手持手枪单腿跪下闭住一只眼瞄准射击的肖像画,把国王的缺点全部掩盖。结果国王大大的奖赏了他。
     
      ——掩盖是艺术也是智慧。
     
      四实施
     
      制定对策后,就进入实施阶段。人们既要执行对策,同时检验效果,作出必要的修正。如果出现意外,执行过程就会停止
     
      执行和停止构成五层系统:检验——执行——拖延——停止——放弃
     
      在一般情况下,人们会执行对策,进而检验效果。在特殊情况下,例如出现重大变故,人们会停止对策,甚至放弃对策。
     
      1执行
     
      人们争取目标实施行为的过程是漫长和复杂的,表现为许多阶段。目的和目标经常在意志中发生递进转换。本阶段的目标成为成为下阶段的目的,下阶段的目的又组成新的目标,如此循环递进,直到结局。
     
      久而久之,主体可能混淆真正的目的和目标,把目标当作目的,不把结果对照目的进行分析,这个时候,人们要保持一定的警惕,时刻反思自己的目的和目标之间关系,不要陷入把目标当目的的陷阱。
     
      例如,人们把吃饭当作目的,把饭菜当作最后目标。在实际过程中,第一阶段,人们要先买来大米。这时,买大米成为第一大目标。在买大米的过程中,到市场成为第一小目标,而买大米化为一种目的。在到市场过程中,到市场成为一种目的,寻找出租车成为一种目标。如此递进转换,到最后,人们很容易忘记自己的本来目的和终极目标。
     
      一个明显的例子是,许多家长望子成龙,把培养孩子能力作为目的,把孩子服从自己安排作为目标。但在实际过程中,往往把管制孩子作为目的,只要孩子服从自己的安排就行,而不仔细考察孩子的能力是否真正和全面发展,结果事与愿违,适得其反。
     
      人们的目的都渴望出人头地,渴望成功。许多人把考上名牌大学作为一种阶段目标。结果,进入大学后不思进取,荒废学业,毕业后?泯然众人矣?。
     
      [故事述评]--圆珠笔
     
      圆珠笔开始发明以后,很受大众欢迎。但它有个毛病,书写到大约2万字,圆珠和笔管的缝隙扩大,就容易漏油。圆珠笔厂为了解决此问题,要找到一种新型圆珠材料,既不易磨损,又很顺滑,造价还得便宜。他们做了很多试验都找不到满意的物质。
     
      后来,有个日本人把制造新圆珠的目标去掉,追溯本来的书写目的,制定出新目标:把油墨只注入到写2万字的水平,写完更换新笔。这个人因此申请专利,成为富翁。
     
      2检验
     
      检验属于执行中的执行,是对执行效果的检测和控制。有些人只注意干活,不注意效果,这非常愚蠢。
     
      有些人认为检验占用了一些资源,不值得。这非常错误。对于关键的事情,人们应该随时检验,防止偏差;对于一般的事情,人们可以定期和放松检查。
     
      行为总要持续一段时间。在实践过程中,人们会发现新情况乃至新问题,就要对比既定策略,考虑既定方法是否合适?。
     
      人们必须进行鉴定。只有鉴定结束,整个行为才算告一段落。
     
      结果分为两种典型。一是完成,基本、完全甚至超额解决了问题。二是欠缺,没有或者部分解决了问题。对此也要辩证看待。如果一个不重要的问题,需要你拼命解决,就不如保留欠缺。
     
      [故事述评]--卞和献璧
     
      春秋时期,楚国人卞和在荆山得一玉璞,献给厉王,厉王使人鉴别,说是石头,有欺君之罪,断其左足。到武王即位,卞和再次献玉,武王使人鉴别,仍说是石头,又断其右足。后来文王即位,卞和抱玉恸哭于荆山下,文王派人去问他为什么哭。他说:?宝玉而名之曰石,贞士戮之而漫(欺骗),此臣之所以悲也。?文王令人剖璞,果得宝玉。因此称?和氏璧?。卞和以功封为零阳侯。
     
      后来,和氏璧流落到赵国,《史记》所说的?完璧归赵?故事中的?璧?,即是卞和所献之宝玉。数十年后,秦灭赵而得到和氏璧。秦始皇顺天意统一六国,用和氏壁雕刻成传国玉玺,上写篆书?受命于天,既寿永昌?八个字,形同龙凤鸟之状,玺文由丞相李斯书写,著名玉匠孙寿镌刻。从此千多年成为帝王的象征,代代相传,称为?传国玺?。
     
      [故事述评]--漏掉的敌人
     
      1947年5月,华东野战军在山东孟良崮地区全歼了国民党军?王牌中的王牌?、全部美械装备的整编74师,击毙敌中将师长张灵甫。孟良崮上枪声停止的这个傍晚,我军甚至连战场都顾不上打扫就匆匆撤出,因为外围有大量国民党军队。
     
      当大概的战果统计数字报上来后,心细的粟裕发现连死带抓只有25000人。他居然派出一支部队重返战场,从山沟里搜出了因为弹药殆尽而隐藏不露的7000国军,这才凑齐了张灵甫麾下的32000人。
     
      ——粟裕敢于如此冒险,是因为外围的诸多国民党军听到孟良崮方向已无枪声,多被74师这样的王牌师被共军全歼的事实所震慑,个个原地不动,生怕那山上还有共军在等着自己。他们哪知,把那7000人救出来而避免74师全军覆灭的最后一个机会,就这样,随着他们那已经萎靡的意志,流到沂蒙山的溪流里去了。
     
      3停止
     
      在特殊情况下,人们会停止行动,其状况多多,如下——
     
      (1)能力不济。
     
      (2)客观条件发生变化,无法适应。
     
      (3)通过检验和反思,发现此问题不值得进行,半途而废。
     
      五后果
     
      当行为停止后,有些事情值得总结。并非许多问题都值得反思,许多问题的解决都是按照固定程序来干得,人们可以放任随意,不进行反思也可以。
     
      总结和放任构成五层系统:
     
      预防——总结——印象——烙印——消逝
     
      有些事情给当事者留下深刻印象,有些则消逝,没有印记。
     
      对于许多事情来说,结局并非结束,而是新一轮行为的开始,包括总结和预防两个阶段问题。而预防属于解决问题的升华层次。
     
      1总结
     
      人们往往发问:我的方法是否妥善?有什么新的发现和补充?花费的代价和取得的效果是多少?效益如何?
     
      2预防
     
      预防属于总结的极端升华。根据经验教训,人们要进行预防,可以收到事半功倍的效果。因为,事物主要按照自己的规律运做。当特定条件产生后,问题必然形成和发作。我们早早地把问题发生的条件控制住,就能把问题消灭在萌芽状态,何乐而不为呢?
     
      [故事述评]--刘邦的预防
     
      西汉的陆贾以门客身分跟随刘邦平定天下。刘邦当上皇帝后,他经常在刘邦面前提到《诗经》和《尚书》,并讲述商、周的历史。
     
      刘邦认为陆贾虽然懂得不少,但过于迂腐,十分生气地对他说:?我靠骑马驰骋疆场,夺取了天下,哪里用得着读书诵经!?陆贾回答说:?骑马打天下成功了,难道还能靠骑马纵横来治理天下吗?从前的商汤王和周武王算是贤明能干的人了,他们虽然以诸侯身分用武力夺取了王位,但称帝后却能息武功,推行文治之道。文武并用,打下的江山才会保持长久。如果秦国统一天下后,能够大力推行仁政,向从前的圣贤学习,陛下怎么可能消灭秦国夺取天下??
     
      原来,周武王推翻商朝后,为了巩固政权,大力推行仁治德政,以安抚商朝百姓。他起用了殷纣王的儿子武庚,封给他领地,让他继续统治京城的商朝遣民。周武王打开监狱,大赦囚犯,使自由民得到了解放。他把宫廷聚集的财物和粮食分发给无衣无食的贫民,解决了他们的温饱,并将被殷纣王剖心杀死的比干的坟墓重新修整,以表示对这位忠义正直之士的崇敬。这一系列措施得到了被征服的商朝人民的拥护,都乐意归顺武王的统治。后来,辅佐周成王的周公继续推行这样的仁治德政,并制定礼乐,逐步稳定了社会,使政治经济出现了繁荣的局面。
     
      刘邦听了陆贾这番话后,内心里感到惭愧,决心效法前贤。他请陆贾写文章,探讨秦国失败、刘邦获得成功的原因,总结历史上兴衰成败的经验教训,作为治国的参考。
     
      陆贾据此撰写了《新语》一书,用十二篇文章探讨了治国成败之道。刘邦对这本书大加赞赏,采纳书中的建议,清除秦国的暴政,推行仁治,让人民得到休养生息。这样,西汉初期的社会秩序逐步稳定下来,经济开始复苏。
     
      ——许多人认为刘邦乃小人一个,不该得天下。从上面故事看,刘邦具有大智慧。许多人钟情项羽,请看韩信拜将后,对刘邦谈论项羽的话:项王一声怒喝,千人会吓碍胆战腿软,可是他不能放手任用贤将,这只算匹夫之勇。项王待人恭敬慈爱,语言温和,人有疾病,同情落泪,把自己的饮食分给他们。可是等到部下有功应当封爵时,他把官印的棱角都磨光滑了也舍不得给人家,这是妇人之仁。

    转载于:https://www.cnblogs.com/liunianfeiyu/articles/9569383.html

    展开全文
  • 基本属性:图像亮度,对比度,色彩饱和度,清晰度(锐度) 色阶:曝光、高光、阴影 颜色:色温、色调 . 1、图像亮度来源于:OpenCV改变图像或视频的亮度 改变亮度是在每个像素上的点操作。如果想提高亮度,必须

    在做图像的研究,发现对图像本质、内核以及可以提取的特征方式一点儿都不懂,赶紧补补课。

    .

    一、图像常用属性

    本节指的是一般来说,图像处理的一些角度,也是根据一些美图软件最为关注的一些图像属性:

    • 基本属性:图像亮度,对比度,色彩饱和度,清晰度(锐度)
    • 色阶:曝光、高光、阴影
    • 颜色:色温、色调
      .

    1、图像亮度

    来源于:OpenCV改变图像或视频的亮度
    改变亮度是在每个像素上的点操作。如果想提高亮度,必须在每个像素上加上一些常数值。
    这里写图片描述

    上面图像的第一个像素应该是(12-20)=-8,但是我给它的值为0。这是因为像素不可能为负值。任何像素值的下限是0,上限是2^(位深)。
    .

    二、图像基本特征

    常用的图像特征有颜色特征、纹理特征、形状特征、空间关系特征。
    参考博客:图像特征特点及其常用的特征提取与匹配方法

    1、颜色特征

    颜色对图像或图像区 域的方向、大小等变化不敏感,所以颜色特征不能很好地捕捉图像中对象的局部特征。颜色直方图是最常用的表达颜色特征的方法,其优点是不受图像旋转和平移变化的影响,进一步借助归一化还可不受图像尺度变化的影响,基缺点是没有 表达出颜色空间分布的信息。

    • 颜色直方图:

    其 优点在于:它能简单描述一幅图像中颜色的全局分布,即不同色彩在整幅图像中所占的比例,特别适用于描述那些难以自动分割的图像和不需要考虑物体空间位置的 图像。其缺点在于:它无法描述图像中颜色的局部分布及每种色彩所处的空间位置,即无法描述图像中的某一具体的对象或物体。

    最常用的颜色空间:RGB颜色空间、HSV颜色空间。
    颜色直方图特征匹配方法:直方图相交法、距离法、中心距法、参考颜色表法、累加颜色直方图法。

    • 颜色集

    颜色直方图法是一种全局颜色特征提取与匹配方法,无法区分局部颜色信息。颜色集是对颜色直方图的一种近似首先将图像从 RGB颜色空间转化成视觉均衡的颜色空间(如 HSV 空间),并将颜色空间量化成若干个柄。然后,用色彩自动分割技术将图像分为若干区域,每个区域用量化颜色空间的某个颜色分量来索引,从而将图像表达为一个二进制的颜色索引集。在图像匹配中,比较不同图像颜色集之间的距离和色彩区域的空间关系

    • 颜色矩

    这种方法的数学基础在于:图像中任何的颜色分布均可以用它的矩来表示。此外,由于颜色分布信息主要集中在低阶矩中,因此,仅采用颜色的一阶矩(mean)、二阶矩(variance)和三阶矩(skewness)就足以表达图像的颜色分布。

    • 颜色聚合向量

    其核心思想是:将属于直方图每一个柄的像素分成两部分,如果该柄内的某些像素所占据的连续区域的面积大于给定的阈值,则该区域内的像素作为聚合像素,否则作为非聚合像素。

    • 颜色相关图

    .

    2、纹理特征

    描述了图像或图像区域所对应景物的表面性质。但由于纹理只是一种物体表面的特性,并不能完全反映出物体的本质属性, 所以仅仅利用纹理特征是无法获得高层次图像内容的。
    与颜色特征不同,纹理特征不是基于像素点的特征,它需要在包含多个像素点的区域中进行统计计算。
    作为一种统计特征,纹理特征常具有旋转不变性,并且对于噪声有较强的抵抗 能力。
    但是,纹理特征也有其缺点,一个很明显的缺点是当图像的分辨率变化的时候,所计算出来的纹理可能会有较大偏差。

    在检索具有粗细、疏密等方面较大差别的纹理图像时,利用纹理特征是一种有效的方法。但当纹理之间的粗细、疏密等易于分辨的信息之间相差不大的时候,通常的纹理特征很难准确地反映出人的视觉感觉不同的纹理之间的差别。

    • (1)统计方法

    统计方法的典型代表是一种称为灰度共生矩阵的纹理特征分析方法Gotlieb 和 Kreyszig 等人在研究共生矩阵中各种统计特征基础上,通过实验,得出灰度共生矩阵的四个关键特征:能量、惯量、熵和相关性。统计方法中另一种典型方法,则是从图像的自相关函数(即图像的能量谱函数)提取纹理特征,即通过对图像的能量谱函数的计算,提取纹理的粗细度及方向性等特征参数

    • (2)几何法

    所谓几何法,是建立在纹理基元(基本的纹理元素)理论基础上的一种纹理特征分析方法。纹理基元理论认为,复杂的纹理可以由若干简单的纹理基元以一定的有规律的形式重复排列构成。在几何法中,比较有影响的算法有两种:Voronio 棋盘格特征法和结构法。

    • (3)模型法

    模型法以图像的构造模型为基础,采用模型的参数作为纹理特征。典型的方法是随机场模型法,如马尔可夫(Markov)随机场(MRF)模型法和 Gibbs 随机场模型法

    • (4)信号处理法

    纹理特征的提取与匹配主要有:灰度共生矩阵、Tamura 纹理特征、自回归纹理模型、小波变换等。

    灰度共生矩阵特征提取与匹配主要依赖于能量、惯量、熵和相关性四个参数。Tamura 纹理特征基于人类对纹理的视觉感知心理学研究,提出6种属性,即:粗糙度、对比度、方向度、线像度、规整度和粗略度。自回归纹理模型(simultaneous auto-regressive, SAR)是马尔可夫随机场(MRF)模型的一种应用实例。
    .

    3、形状特征

    种基于形状特征的检索方法都可以比较有效地利用图像中感兴趣的目标来进行检索,但它们也有一些共同的问题,包括:
    ①目前基于形状的检索方法还缺乏 比较完善的数学模型;
    ②如果目标有变形时检索结果往往不太可靠;
    ③许多形状特征仅描述了目标局部的性质,要全面描述目标常对计算时间和存储量有较高的要 求;
    ④许多形状特征所反映的目标形状信息与人的直观感觉不完全一致,或者说,特征空间的相似性与人视觉系统感受到的相似性有差别。

    • (1)边界特征法

    该方法通过对边界特征的描述来获取图像的形状参数。其中Hough 变换检测平行直线方法和边界方向直方图方法是经典方法。Hough 变换是利用图像全局特性而将边缘像素连接起来组成区域封闭边界的一种方法,其基本思想是点—线的对偶性;边界方向直方图法首先微分图像求得图像边缘,然后,做出关于边缘大小和方向的直方图,通常的方法是构造图像灰度梯度方向矩阵。

    • (2)傅里叶形状描述符法

    傅里叶形状描述符(Fourier shape descriptors)基本思想是用物体边界的傅里叶变换作为形状描述,利用区域边界的封闭性和周期性,将二维问题转化为一维问题。

    由边界点导出三种形状表达,分别是曲率函数、质心距离、复坐标函数。

    • (3)几何参数法

    形状的表达和匹配采用更为简单的区域特征描述方法,例如采用有关形状定量测度(如矩、面积、周长等)的形状参数法(shape factor)。在 QBIC 系统中,便是利用圆度、偏心率、主轴方向和代数不变矩等几何参数,进行基于形状特征的图像检索。

    需要说明的是,形状参数的提取,必须以图像处理及图像分割为前提,参数的准确性必然受到分割效果的影响,对分割效果很差的图像,形状参数甚至无法提取。

    • (4)形状不变矩法

    利用目标所占区域的矩作为形状描述参数。

    • (5)其它方法

    近年来,在形状的表示和匹配方面的工作还包括有限元法(Finite Element Method 或 FEM)、旋转函数(Turning Function)和小波描述符(Wavelet Descriptor)等方法。

    • 基于小波和相对矩的形状特征提取与匹配

    该方法先用小波变换模极大值得到多尺度边缘图像,然后计算每一尺度的 7个不变矩,再转化为 10 个相对矩,将所有尺度上的相对矩作为图像特征向量,从而统一了区域和封闭、不封闭结构。
    .

    4、空间关系特征

    指图像中分割出来的多个目标之间的相互的空间位置或相对方向关系,这些关系也可分为连接/邻接关系、交叠/重叠关系和包含/包 容关系等。通常空间位置信息可以分为两类:相对空间位置信息和绝对空间位置信息。
    前一种关系强调的是目标之间的相对情况,如上下左右关系等,后一种关系强 调的是目标之间的距离大小以及方位。显而易见,由绝对空间位置可推出相对空间位置,但表达相对空间位置信息常比较简单。

    空间关系特征的使用可加强对图像内容的描述区分能力,但空间关系特征常对图像或目标的旋转、反转、尺度变化等比较敏感。另外,实际应用中,仅仅利用空间信息往往是不够的,不能有效准确地表达场景信息。为了检索,除使用空间关系特征外,还需要其它特征来配合

    提取图像空间关系特征可以有两种方法:一种方法是首先对图像进行自动分割,划分出图像中所包含的对象或颜色区域,然后根据这些区域提取图像特征,并建立索引;另一种方法则简单地将图像均匀地划分为若干规则子块,然后对每个图像子块提取特征,并建立索引。
    .


    三、图像的统计特征

    一般图像的统计特征可以分为四类:直观性特征、灰度统计特征、变换系数特征与代数特征。
    .

    1、直观性特征

    直观性特征主要指几何特征,几何特征比较稳定,受人脸的姿态变化与光照条件等因素的影响小,但不易抽取,而且测量精度不高,与图像处理技术密切相关。
    .

    2、灰度统计特征

    灰度共生矩阵的四个关键特征:能量、惯量、熵和相关性。统计方法中另一种典型方法,则是从图像的自相关函数(即图像的能量谱函数)提取纹理特征,即通过对图像的能量谱函数的计算,提取纹理的粗细度及方向性等特征参数
    .

    3、变换系数特征

    变换系数特征指先对图像进行Fourier变换、小波变换等,得到的系数后作为特征进行识别。
    .

    4、代数特征

    代数特征是基于统计学习方法抽取的特征。代数特征具有较高的识别精度,代数特征抽取方法又可以分为两类:一种是线性投影特征抽取方法;另外一种是非线性特征抽取方法。

    习惯上,将基于主分量分析和Fisher线性鉴别分析所获得的特征抽取方法,统称为线性投影分析。

    基于线性投影分析的特征抽取方法,其基本思想是根据一定的性能目标来寻找一线性变换,把原始信号数据压缩到一个低维子空间,使数据在子空间中的分布更加紧凑,为数据的更好描述提供手段,同时计算的复杂度得到大大降低。
    在线性投影分析中,以主分量分析(PCA,或称K-L变换)和Fisher线性鉴别分析(LDA)最具代表性,围绕这两种方法所形成的特征抽取算法,已成为模式识别领域中最为经典和广泛使用的方法。

    线性投影分析法的主要缺点为:需要对大量的已有样本进行学习,且对定位、光照与物体非线性形变敏感,因而采集条件对识别性能影响较大。

    非线性特征抽取方法也是研究的热点之一。“核技巧”最早应用在SVM中,KPCA和KFA是“核技巧”的推广应用。

    核投影方法的基本思想是将原样本空间中的样本通过某种形式的非线性映射,变换到一个高维甚至无穷维的空间,并借助于核技巧在新的空间中应用线性的分析方法求解。由于新空间中的线性方向也对应原样本空间的非线性方向,所以基于核的投影分析得出的投影方向也对应原样本空间的非线性方向。

    核投影方法也有一些弱点:几何意义不明确,无法知道样本在非显式映射后变成了什么分布模式;核函数中参数的选取没有相应选择标准,大多数只能采取经验参数选取;不适合训练样本很多的情况,原因是经过核映射后,样本的维数等于训练样本的个数,如果训练样本数目很大,核映射后的向量维数将会很高,并将遇到计算量上的难题。

    就应用领域来说,KPCA远没有PCA应用的广泛。如果作为一般性的降维KPCA确实比PCA效果好,特别是特征空间不是一般的欧式空间的时候更为明显。PCA可以通过大量的自然图片学习一个子空间,但是KPCA做不到。
    .


    四、姿态估计问题

    姿态估计问题就是:确定某一三维目标物体的方位指向问题。姿态估计在机器人视觉、动作跟踪和单照相机定标等很多领域都有应用。

    基于视觉的姿态估计根据使用的摄像机数目又可分为单目视觉姿态估计和多目视觉姿态估计。根据算法的不同又可分为基于模型的姿态估计和基于学习的姿态估计。

    1、基于模型的姿态估计方法

    基于模型的方法通常利用物体的几何关系或者物体的特征点来估计。其基本思想是利用某种几何模型或结构来表示物体的结构和形状,并通过提取某些物体特征,在模型和图像之间建立起对应关系,然后通过几何或者其它方法实现物体空间姿态的估计。这里所使用的模型既可能是简单的几何形体,如平面、圆柱,也可能是某种几何结构,也可能是通过激光扫描或其它方法获得的三维模型。
    基于模型的姿态估计方法是通过比对真实图像和合成图像,进行相似度计算更新物体姿态。目前基于模型的方法为了避免在全局状态空间中进行优化搜索,一般都将优化问题先降解成多个局部特征的匹配问题,非常依赖于局部特征的准确检测。当噪声较大无法提取准确的局部特征的时候,该方法的鲁棒性受到很大影响。

    2、基于学习的姿态估计方法

    基于学习的方法一般采用全局观测特征,不需检测或识别物体的局部特征,具有较好的鲁棒性。其缺点是由于无法获取在高维空间中进行连续估计所需要的密集采样,因此无法保证姿态估计的精度与连续性。
    基于学习的方法一般采用全局观测特征,可以保证算法具有较好的鲁棒性。然而这一类方法的姿态估计精度很大程度依赖于训练的充分程度。要想比较精确地得到二维观测与三维姿态之间的对应关系,就必须获取足够密集的样本来学习决策规则和回归函数。而一般来说所需要样本的数量是随状态空间的维度指数级增加的,对于高维状态空间,事实上不可能获取进行精确估计所需要的密集采样。因此,无法得到密集采样而难以保证估计的精度与连续性,是基于学习的姿态估计方法无法克服的根本困难。

    姿态估计输出的是一个高维的姿态向量,而不是某个类别的类标。因此这一类方法需要学习的是一个从高维观测向量到高维姿态向量的映射,目前这在机器学习领域中还是一个非常困难的问题。
    特征是描述模式的最佳方式,且我们通常认为特征的各个维度能够从不同的角度描述模式,在理想情况下,维度之间是互补完备的。
    .


    五、图像特征提取算法类

    1、HOG特征

    方向梯度直方图(Histogram of Oriented Gradient, HOG)特征是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子。它通过计算和统计图像局部区域的梯度方向直方图来构成特征。Hog特征结合SVM分类器已经被广泛应用于图像识别中,尤其在行人检测中获得了极大的成功。需要提醒的是,HOG+SVM进行行人检测的方法是法国研究人员Dalal在2005的CVPR上提出的,而如今虽然有很多行人检测算法不断提出,但基本都是以HOG+SVM的思路为主。
    在一副图像中,局部目标的表象和形状(appearance and shape)能够被梯度或边缘的方向密度分布很好地描述。(本质:梯度的统计信息,而梯度主要存在于边缘的地方)。

    与其他的特征描述方法相比,HOG有很多优点。首先,由于HOG是在图像的局部方格单元上操作,所以它对图像几何的和光学的形变都能保持很好的不变性,这两种形变只会出现在更大的空间领域上。其次,在粗的空域抽样、精细的方向抽样以及较强的局部光学归一化等条件下,只要行人大体上能够保持直立的姿势,可以容许行人有一些细微的肢体动作,这些细微的动作可以被忽略而不影响检测效果。因此HOG特征是特别适合于做图像中的人体检测的。

    2、LBP特征

    LBP(Local Binary Pattern,局部二值模式)是一种用来描述图像局部纹理特征的算子;它具有旋转不变性和灰度不变性等显著的优点。它是首先由T. Ojala, M.Pietikäinen, 和D. Harwood 在1994年提出,用于纹理特征提取。而且,提取的特征是图像的局部的纹理特征。
    上述提取的LBP算子在每个像素点都可以得到一个LBP“编码”,那么,对一幅图像(记录的是每个像素点的灰度值)提取其原始的LBP算子之后,得到的原始LBP特征依然是“一幅图片”(记录的是每个像素点的LBP值)。

    LBP的应用中,如纹理分类、人脸分析等,一般都不将LBP图谱作为特征向量用于分类识别,而是采用LBP特征谱的统计直方图作为特征向量用于分类识别。
    例如:一幅100*100像素大小的图片,划分为10*10=100个子区域(可以通过多种方式来划分区域),每个子区域的大小为10*10像素;在每个子区域内的每个像素点,提取其LBP特征,然后,建立统计直方图;这样,这幅图片就有10*10个子区域,也就有了10*10个统计直方图,利用这10*10个统计直方图,就可以描述这幅图片了。之后,我们利用各种相似性度量函数,就可以判断两幅图像之间的相似性了。
    这里写图片描述

    3、Haar-like特征

    Haar-like特征最早是由Papageorgiou等应用于人脸表示,Viola和Jones在此基础上,使用3种类型4种形式的特征。
    Haar特征分为三类:边缘特征、线性特征、中心特征和对角线特征,组合成特征模板。

    特征模板内有白色和黑色两种矩形,并定义该模板的特征值为白色矩形像素和减去黑色矩形像素和。Haar特征值反映了图像的灰度变化情况。例如:脸部的一些特征能由矩形特征简单的描述,如:眼睛要比脸颊颜色要深,鼻梁两侧比鼻梁颜色要深,嘴巴比周围颜色要深等。但矩形特征只对一些简单的图形结构,如边缘、线段较敏感,所以只能描述特定走向(水平、垂直、对角)的结构。

    通过改变特征模板的大小和位置,可在图像子窗口中穷举出大量的特征。上图的特征模板称为“特征原型”;特征原型在图像子窗口中扩展(平移伸缩)得到的特征称为“矩形特征”;矩形特征的值称为“特征值”。
    这里写图片描述
    .

    4、其他

    • Sobel边缘检测

    Soble边缘检测算法比较简,实际应用中效率比canny边缘检测效率要高,但是边缘不如Canny检测的准确,但是很多实际应用的场合,sobel边缘却是首选,尤其是对效率要求较高,而对细纹理不太关心的时候。

    Soble边缘检测通常带有方向性,可以只检测竖直边缘或垂直边缘或都检测。

    • Canny边缘检测

    canny边缘检测实际上是一种一阶微分算子检测算法,但为什么这里拿出来说呢,因为它几乎是边缘检测算子中最为常用的一种,也是个人认为现在最优秀的边缘检测算子。Canny提出了边缘检测算子优劣评判的三条标准:

    高的检测率。边缘检测算子应该只对边缘进行响应,检测算子不漏检任何边缘,也不应该将非边缘标记为边缘。
    精确定位。检测到的边缘与实际边缘之间的距离要尽可能的小。
    明确的响应。对每一条边缘只有一次响应,只得到一个点。
    Canny边缘检测之所以优秀是因为它在一阶微分算子的基础上,增加了非最大值抑制和双阈值两项改进。利用非极大值抑制不仅可以有效地抑制多响应边缘,而且还可以提高边缘的定位精度;利用双阈值可以有效减少边缘的漏检率。

    • ORB特征

    它是对FAST特征点与BREIF特征描述子的一种结合与改进,这个算法是由Ethan Rublee,Vincent Rabaud,Kurt Konolige以及Gary R.Bradski在2011年一篇名为“ORB:An Efficient Alternative to SIFT or SURF”的文章中提出。就像文章题目所写一样,ORB是除了SIFT与SURF外一个很好的选择,而且它有很高的效率,最重要的一点是它是免费的,SIFT与SURF都是有专利的,你如果在商业软件中使用,需要购买许可。

    • BRIEF特征

    可以用PCA、LDA等特征降维的方法来压缩特征描述子的维度。还有一些算法,例如LSH,将SIFT的特征描述子转换为一个二值的码串,然后这个码串用汉明距离进行特征点之间的匹配。这种方法将大大提高特征之间的匹配,因为汉明距离的计算可以用异或操作然后计算二进制位数来实现,在现代计算机结构中很方便。下面来们提取一种二值码串的特征描述子。
    BRIEF[1]应运而生,它提供了一种计算二值串的捷径,而并不需要去计算一个类似于SIFT的特征描述子。它需要先平滑图像,然后在特征点周围选择一个Patch,在这个Patch内通过一种选定的方法来挑选出来ndnd个点对。

    .


    参考文献

    1、图像特征类:
    关于图像特征提取
    图像特征特点及其常用的特征提取与匹配方法

    2、图像特征提取算法:
    目标检测的图像特征提取之(二)LBP特征
    图像特征提取三大法宝:HOG特征,LBP特征,Haar特征

    http://www.cnblogs.com/ronny/category/366231.html
    .


    延伸一:K-means聚类图像压缩:色彩量化

    来源于:Image-compression-with-Kmeans-clustering: Color Quantization

    from skimage import io
    import numpy as np
    
    centers = np.load('codebook_tiger.npy')
    
    c_image = io.imread('compressed_tiger.png')
    
    image = np.zeros((c_image.shape[0],c_image.shape[1],3),dtype=np.uint8 )
    for i in range(c_image.shape[0]):
        for j in range(c_image.shape[1]):
                image[i,j,:] = centers[c_image[i,j],:]
    
    io.imsave('reconstructed_tiger.png',image);
    io.imshow(image)
    io.show()

    效果:
    这里写图片描述
    这里写图片描述
    .

    延伸二:车辆追踪算法大PK:SVM+HOG vs. YOLO

    云栖社区:车辆追踪算法大PK:SVM+HOG vs. YOLO
    文章原标题《Vehicle tracking using a support vector machine vs. YOLO》,作者:Kaspar Sakmann,译者:耕牛的人,校核:主题曲(身形)。

    对于Udacity(优达学城)自动驾驶汽车纳米学位的汽车检测和跟踪项目,如果使用传统的计算机可视化技术将是一个挑战,就像方向梯度直方图(Histogram of Oriented Gradients,HOG)和其它特征组合在一起在视频里跟踪汽车一样,理想的解决方案应该是实时运行的,如>30FPS,我曾经使用线性SVM来处理视频,在一台i7 CPU计算机上得到的结果只有可怜的3FPS。最后我使用YOLO来处理视频终于通过了Udacity的项目,YOLO是一个超快的用于对象检测的卷积神经网络,如果你的GPU够快(我当时使用的是GTX 1080),视频处理的速度可以达到65FPS,比我用SVM+HOG的方法足足快20倍。

    这里写图片描述

    特征提取:
    我使用的特征向量如下:

    • 空间特征:除了用于自检的像斑(16x16像素)外啥都没有。
    • 颜色直方图特征:捕获每个像斑的统计颜色信息,通过这种特征向量捕获的汽车颜色通常是非常饱和的。
    • 方向梯度直方图(HOG)特征:捕获每个图像通道的梯度结构,在不同的光线条件下,这种方法表现得还不错。

    在这篇博客里有关于HOG特征的详细描述,其思想始终是,在一个直方图里,在一个图像上聚集梯度,让特征向量在不同视角和光线条件下变得更加稳定。下面是HOG特征应用于有车的和没车的图像上时的可视化呈现。
    而SVM+HOG方案需要处理大约150次。上面大家看到的视频,我还没有进行过优化,如减少图像或定义兴趣区域,或者针对汽车做特定训练。
    在准确性相当时,YOLO比SVM+HOG要快20多倍,检测阈值可以被设置为任意置信水平,我保留默认值(50%),并且除了汽车之外不再检测其它对象,这让我相当兴奋,我将在另一个独立项目中进一步验证汽车检测的可能性。

    .

    延伸三:轻量级物体检测卷积神经网络SqueezeDet:功耗更低、识别更准确、速度更快

    本目录中的代码实现了我们论文中(https://arxiv.org/abs/1612.01051)提出的模型——一个用于自动驾驶中实时物体检测的统一、小型且低耗的完全卷积神经网络。如果我们的工作对您的研究有帮助,您可做如下引用:

    @inproceedings{squeezedet,
        Author = {Bichen Wu and Forrest Iandola and Peter H. Jin and Kurt Keutzer},
        Title = {SqueezeDet: Unified, Small, Low Power Fully Convolutional Neural Networks for Real-Time Object Detection for Autonomous Driving},
        Journal = {arXiv:1612.01051},
        Year = {2016}

    安装

    Linux环境下可执行以下命令:

    拷贝SqueezeDet的目录:

    git clone https://github.com/BichenWuUCB/squeezeDet.git

    我们以$SQDT_ROOT来调用SqueezeDet的顶层目录。

    (可选)设置你自己的虚拟环境:

    1.以下的操作假设运行的Python版本是Python2.7。找到你的用户主目录下,并在此创建虚拟环境。

    cd ~virtualenv env --python=python

    2.启动虚拟环境

    source env/bin/activate

    使用pip安装所需的Python工具包

    pip install -r requirements.txt

    演示

    从这里(https://www.dropbox.com/s/a6t3er8f03gdl4z/model_checkpoints.tgz?dl=0)下载SqueezeDet模型的参数,解压,并将解压后的文件放在$SQDT_ROOT/data/目录下。命令行下的命令如下:

    cd $SQDT_ROOT/data/wget https://www.dropbox.com/s/a6t3er8f03gdl4z/model_checkpoints.tgztar -xzvf model_checkpoints.tgzrm model_checkpoints.tgz

    现在我们可以运行Demo了。执行以下命令可以检测样本中的图像

    $SQDT_ROOT/data/sample.png,
    cd $SQDT_ROOT/python ./src/demo.py

    如果想检测其他图片,可以修改input_path=./data/*.png使其指向其他的图片。由于输入的图片会被缩放为1242x375的分辨率(KITTI图片分辨率),所以当输入图片接近此分辨率时模型的效果最佳。

    SqueezeNet实现的是实时的物体检测,因此可以用来检测一段视频。之后我们会发布检测视频的Demo。

    训练及验证

    从这里(图片:http://www.cvlibs.net/download.php?file=data_object_image_2.zip,标签:http://www.cvlibs.net/download.php?file=data_object_label_2.zip)下载KITTI物体检测的数据集,并将它们放到SQDT_ROOT/data/KITTI/目录下,解压后会生成SQDT_ROOT/data/KITTI/training/ 和$SQDT_ROOT/data/KITTI/testing/两个子目录。

    现在,我们需要将原来的训练集重新划分为训练集和验证集。

    cd $SQDT_ROOT/data/KITTI/mkdir ImageSetscd ./ImageSetsls ../training/image_2/ | grep ".png" | sed s/.png// > trainval.txt

    trainval.txt这个文件记录了训练集中所有图片的索引。实验中,我们随机选取trainval.txt文件里一半的索引作为新的训练集图片的索引并存到train.txt,其余的作为验证集存到val.txt。为了方便读者使用,我们编写了下面的脚本以自动完成数据集的重新划分:

    cd $SQDT_ROOT/data/python random_split_train_val.py

    然后,我们需要从$SQDT_ROOT/data/KITTI/ImageSets下得到train.txt和val.txt。

    展开全文
  • 测试基本技巧与方法

    万次阅读 2018-08-24 11:18:42
     界面的一致性既包括使用标准的控件,也指相同的信息表现方法,如在字体、标签风格、颜色、术语、显示错误信息等方面确保一致。  1.在不同分辨率下的美观程度  软件界面要有一个默认的分辨率,而在其他...

    一些常用模块的测试用例

    1、登录  2、添加  3、查询  4、删除

    1、登录

    ①用户名和密码都符合要求(格式上的要求)

    ②用户名和密码都不符合要求(格式上的要求)

    ③用户名符合要求,密码不符合要求(格式上的要求)

    ④密码符合要求,用户名不符合要求(格式上的要求)

    ⑤用户名或密码为空

    ⑥数据库中不存在的用户名,不存在的密码

    ⑦数据库中存在的用户名,错误的密码

    ⑧数据库中不存在的用户名,存在的密码

    ⑨输入的数据前存在空格

    ⑩输入正确的用户名密码

    以后按[enter]是否能登陆

    2、添加

    ①要添加的数据项均合理,在界面保存成功后,检查数据库中是否添加了相应的数据:select查询

    ②留出一个必填数据为空

    ③按照边界值等价类设计测试用例的原则设计其他输入项的测试用例:数据组合测试

    ④不符合要求的地方要有错误提示

    ⑤是否支持table键

    ⑥按enter是否能保存

    ⑦若提示不能保存,也要察看数据库里是否多了一条数据

    3、删除

    ①删除一个数据库中存在的数据,然后查看数据库中是否删除(界面删除一条数据,查看数据库中是否删除)

    ②删除一个数据库中并不存在的数据,看是否有错误提示,并且数据库中没有数据被删除[A1] 

    ③输入一个格式错误的数据,看是否有错误提示,并且数据库中没有数据被删除。

    ④输入的正确数据前加空格,看是否能正确删除数据

    ⑤什么也不输入

    ⑥是否支持table键:tab键

    ⑦是否支持enter键

    4、查询

    精确查询:

    ①输入的查询条件为数据库中存在的数据,看是否能正确地查出相应得数据

    ②输入正确的查询条件以前加上空格,看是否能正确地查出相应的数据

    ③输入格式或范围不符合要求的数据,看是否有错误提示:如日期格式:YYYY-MM-DD;范围:月份中输入13等,一般这些数据都是枚举型数据,以下拉框的形式出现

    ④输入数据库中不存在的数据

    ⑤不输入任何数据:查询结果应该为所有记录

    ⑥是否支持table键

    ⑦是否支持enter键

    模糊查询:

    在精确查询的基础上加上以下一点:

    ①  输入一些字符,看是否能查出数据库中所有的相关信息

     

    故障模型---缺陷查找攻击的二十一招大法

     

    1.输入非法数据

    输入数据的类型、长度、边界值;还要留意错误信息本身。

    基本数据类型的边界值

    2.输入默认值

    从选项按钮、配置面板等处去考察。

    3.输入特殊字符集

    根据被测软件的具体情况输入非法字符。

    多了解ASCII 字符集、程序设计语言和OS中的保留字符串及其特定含义。

    4.输入使缓冲区溢出的数据

    在需要接受字符串的地方输入一个比最大字符串更长的字符串。

    黑客常用此法来攻击系统。

    5.输入产生错误的合法数据组合

    在输入值之间存在依赖关系时,输入可能会出现问题的组合值。

    6.产生同一个输入的各种可能输出

    在同一输入对应多个输出时可用此法测试。

    7.输出不符合业务规则的无效输出

    列出所有的无效输出,然后逐一测试,重点查看输出结果的正确性。

    8.输出属性修改后的结果

    强制每个输出产生,并编辑其属性,然后再次强制产生输出。

    9.屏幕刷新显示

    增加、删除、移动屏幕上的对象。

    10.数据结构溢出

    尝试将过多的值输入数据结构,测试上溢;尝试多删除一个数据,测试下溢。

    11.数据结构不符合约束

    任何时候都要对数据属性的约束进行检查,特别注意修改数据时也要进行。

    可通过破坏内部数据的约束来进行测试。

    12.操作数与操作符不符合

    对于数值计算考虑操作数和操作符之间的限定关系;对于图形计算还要考虑各种输入数据之间的组合关系。

    13.递归调用自身

    考虑对象的自我交互或复制。

    14.计算结果溢出

    一次又一次地执行计算或使用很大或很小的输入和数据进行计算,重点测试数据类型的初始值或边界值附近的值,强制数据产生上溢或下溢。

    15.数据共享或关联功能计算出错

    当一个以上的功能在同一时间处于运行状态,可以考虑以点带面,重点测试某一功能,对可能与这个功能相连的其他功能附带测试。

    16.文件系统超载

    当软件较大,运行时需要较大空间时,强制磁盘系统满容量或小于等于被测试软件运行时所需容量后,运行被测试软件或利用测试工具模拟磁盘状况。

    17.介质忙或不可用

    软件运行需要消耗大量内存或需要其他相关软件同时运行,可通过启动大量程序或利用测试工具模拟磁盘状况。

    18.介质损坏

    用实际损坏介质的方法来测试应用程序。

    19.文件名不合法

    输入OS不允许的文件名和应用程序不允许的文件名。

    20.更改文件访问权限

    修改文件访问权限或用低权限的用户访问文件。

    21.文件内容受损

    对于那些需要对文件格式和内容进行校验的应用程序,可通过手工损坏文件或利用测试工具模拟CRC错误。

     

     

    界面设计的行业标准总结一

     GUI的整体标准包括以下四个方面:

      1.规范性

      2.合理性

      3.一致性

      4.界面定制性

      一、GUI设计的规范

      遵循一致的准则,确立标准并遵循,是软件界面设计中必不可必的环节。确立界面标准的好处:

      1.便于用户操作:户使用起来能够建立起精确的心里模型,使用熟练了一个界面后,切换到另外一个界面能够很轻松的推测出各种功能

      2.使用户感觉到统一、规范,在使用软件的过程中愉快轻松的完成操作,提高对软件的认知

      3.降低培训、支持成本,不必花费较多的人力对客户进行逐个指导

      二、GUI布局的合理性

      界面的合理性是指界面是否与软件功能相融洽,界面的颜色和布局是否协调等。例如:

      1.界面布局

      a.屏幕不能拥挤

      *  Mayhew在1992年的试验结果表明屏幕总体覆盖度不应该超过40%,而分组覆盖度不应该超过62%。

      *  整个项目,采用统一的控件间距,通过调整窗体大小达到一致,即使在窗体大小不变的情况下,宁可留空部分区域,也不要破坏控件间的行间距。

      b.控件按区域排列

      *  一行控件纵向中对齐, 控件间距基本保持一致,行与行之间间距相同,靠窗体的控件距窗体边缘的距离应大于行间距。

      *  当屏幕有多个编辑区域,要以视觉效果和效率来组织这些区域

      c.有效组合

      逻辑上相关联的控件应当加以组合以表示其关联性,反之,任何不相关的项目应当分隔开。在项目集合间用间隔对其进行分组,或者使用方框划分各自区域

      d.窗口缩放时,控件位置、布局

      *  固定窗口大小,不允许改变尺寸

      *  改变尺寸的窗口,在窗口尺寸发生变化时控件的位置、大小做出相应的改变

      *  改变尺寸的窗口,在窗口改变尺寸时增加相应在的纵向、横向滚动条,以方便用户使用窗体上的控件

      2.界面颜色搭配

      使用恰当的颜色,可以使软件的界面看起来更加规范:

      a.统一色调

      针对软件类型以及用户工作环境选择恰当色调,如:安全软件,根据工业标准,可以选取黄色。绿色体现环保,蓝色表现时尚清新、紫色表现浪漫等等,淡色可以使人舒适,暗色做背景使人不觉得累等。

      b.与操作系统统一,读取系统标准色表

      c.遵循对比原则

      在浅色背景上使用深色文字,深色背景上使用浅色文字,如蓝色文字以白色背景容易识别,而在红色背景则不易分辨。除非特殊场合,杜绝使用对比强烈,让人产生憎恶感的颜色

      d.整个界面色彩尽量少的使用类别不同的颜色

      e.颜色方案也许会因为显示器、显卡、操作系统等原因显示出不同的色彩

      f.针对色盲、色弱用户,可以使用特殊指示符

      e.颜色方案也许会因为显示器、显卡、操作系统等原因显示出不同的色彩

      f.针对色盲、色弱用户,可以使用特殊指示符

    三、GUI风格的一致性

      界面的一致性既包括使用标准的控件,也指相同的信息表现方法,如在字体、标签风格、颜色、术语、显示错误信息等方面确保一致。

      1.在不同分辨率下的美观程度

      软件界面要有一个默认的分辨率,而在其他分辨率下也可以运行,分别在800×600,1024×768,1280×768,1280×1024,1200×1600分辨率下的大字体、小字体下的界面表现。

      2.界面布局要一致

      如所有窗口按钮的位置和对齐方式要保持一致。

      3.界面的外观要一致

      如控件的大小、颜色、背景和显示信息等属性要一致,一些需要特殊处理或有特殊要求的地方除外。

      4.界面所用颜色要一致

      颜色的前后一致会使整个应用软件有同样的观感,反之会让用户觉得所操作的软件杂乱无章,没有规则或言。

      5.操作方法要一致

      如双击其中的项,触发某事件,那么双击任何其他列表框中的项,都应该有同样的事件发生。

      6.控件风格、控件功能要专一

      a.不错误的使用控件

      例如使用Button样式做Table的功能,拿主菜单条显示版权信息等

      b.一个控件只做单一功能,不复用

      如果在特殊情况下出现复用的时候,可采用以下两种方法解决:

      *  分组,使用双份控件

      *  使用Table页,给用户很明显的视觉变化

      7.标签和讯息的措词要一致

      如在提示、菜单和帮助中产生相同的术语。

      8.标签中文字信息的对齐方式要一致

      如某类描述信息的标题行定为居中,那么其他类似的功能也应该与此一致。

      9.快捷键在各个配置项上语义保持一致

      如Tab键的习惯用法是阅读顺序从从左到右,从上到下。在定义软件快捷键时也可以将现有一些快捷键的属性作为参考,如表1-3-1(见附件)列出了常用的快捷键及其功能。

      四、GUI界面操作可定制性

      界面的可定制性大致可分为以下几个特性:

      1.界面元素可定制

      允许用户定义工具栏、状态栏是否显示,工具栏显示在界面上的位置;允许用户定义菜单的位置等。

      2.工具栏可定制

      不同用户对常用工具的使用是不同的,因此允许用户建立新的工具栏,选择要显示的工具栏,定制工具栏上的按钮等功能在软件系统中经常被用到

      3.统计检索可定制

      对于某些特殊行业的软件可以提供统计检索的可定制性,在充分了解用户需求的基础上制定大量的安全供用户选择。

    GUI所包含各类元素标准的定制

      GUI的元素大致可分为以下几个方面:

      1. 窗口

      2. 菜单

      3. 图标

      4. 控件

      5. 鼠标

      6. 文字

    7. 联机帮助

    界面设计的行业标准总结二

      一、GUI窗口的标准

      窗口是显示设备中的一个区域,用于观看对象、对象相关信息以及应用与对象的动作进行交互。从外观上来说,通常窗口是由标题、边框、菜单、工作区、滚动条等组成。窗口的标题栏可以进行打开、关闭、创建、缩放、移动、删除、重叠等操作

      好的GUI窗口应该具备以下标准:

      1.窗口控件的大小、对齐方向、颜色、背景等属性的设置和程序设计规约相一致

      2.显示相关的下拉菜单、工具条、滚动条、对话框、按钮、图标和其他控制,既能正确显示又能调用

      3.若窗口无法显示,所有内容能够改变大小、移动和滚动

      4.活动窗口能够反显加亮

      5.窗口能够正确的关闭

      6.多个窗口叠加时窗口的名称正确显示

      7.窗口的数据能够利用鼠标、功能键、方向前头和键盘操作

      8.当窗口被覆盖并重新调用后,窗口能够正确再生

      9.如果使用多任务,所有的窗口能够被实时更新

      10.窗口支持最小化和最大化或放大

      11.窗口上的控件随着窗体的缩放而缩放

      12.父窗体支持缩放时,子窗体也应该支持缩放

      13. 一个窗口中按Tab键,移动聚焦按顺序移动。先从左至右,再从上到下

      14.子窗口位置在父窗口的左上角或正中,正上方1/4处为易吸引用户注意力的位。父窗口或主窗口的中心位置应该在对角线焦点附近,如下图2-1-2所示

      15.当多个子窗口弹出时依次向右下方偏移,并且显示出窗口标题,如下图2-1-3所示

      16.重要的命令按钮与使用频繁的按钮放在了界面醒目的位置

      17.与正在进行的操作无关的按钮应该加以屏蔽

      18.按钮大小要与界面的大小和空间协调

      19.窗口中所包含的标签左对齐排列

      20.多窗口的切换响应时间不宜过长

    二、GUI菜单的标准

      菜单是否易用主要体现在它能否提供线索帮助用户识别,而不用强迫用户去记忆,一个好的菜单设置可以分为以下几个方面:

      1.菜单设置符合软件的需求

      2.菜单项的措词准确,能够表达出所要进行设置的功能

      3.菜单项的顺序合理,具有逻辑关联的项目集中放置

      4.图形布局一致

      5.菜单设置在窗体标题栏的下方

      三、GUI图标的标准

      图标是表示实体信息简洁、抽象的符号,它还可以作为可视按钮项,当被选中激活时,可以完成指定的功能。那么图标的设计当中应该着重考虑哪些问题呢,以下提供几点可供参考:

      1.图标的设置符合常规的表达习惯

      2.不同的目标采用不同的图标

      3.图标具有清晰的轮廓,轮廓清晰的图标可保证图像在不同背景色上都具有较好的效果

      4.选择合适的尺寸来定义图标。Windows XP系统的图标有四种尺寸(以像素为单位)可作为参考: 48×48, 32×32,24×24以及16×16,图标大小的选取决定于工具栏所定义的宽度

      5.图标的外形与实际功能相似,应尽量避免抽象。这样的图标可以使用户很轻松、容易地认识图标的作用

      6.在图标上加以标注,用来说明图标所完成的功能

      7.图标放置在菜单栏的下方

      四、GUI中控件的标准

      软件系统功能的实现与控件是密不可分的,各控件位置的摆放直接影响到软件的使用,及其美观程度。下面举例说明软件系统中最常用到的控件对其元素间距、摆放位置进行说明:

      1.控件元素的间距

      a.单个元素间距

      *  输入框之间垂直间距为5px

      *  Label文本标签和输入元素之间水平间距为8-22px

      *  复选框、单选按钮之间垂直间距为8px

      *  多种元素混合垂直排列时,复选框和单选按钮边上的间距无论在什么情况下都为8px

      b.元素分组间距

      *  窗口边框和内容区域的四周边距为11px;

      *  父组和子组之间的四周间距为10px;

      *  分组框边框和内部内容区域的四周边距为5px;

      *  复选框组、单选框组的组水平间距为15px

      2.按钮的位置,如下表2-4-1对按钮摆放位置的规则做了总结

     

    五、鼠标在GUI中的标准

      用户会把鼠标移进、移出窗口,或当光标在窗口,或当光标在窗口中,用户按下、释放鼠标键,鼠标是否准确、灵活,对一个软件系统来说也很重要。以下几点标准可作为在软件系统中鼠标设计的参考:

      1.在整个交互的过程中,可以识别鼠标操作

      2.多次点击鼠标后,仍能够正确识别

      3.鼠标有多个按钮的情况下,能够正确识别每个按钮所要完成的功能

      4.光标、处理指示器和识别指针随操作恰当的改变

      5.点击选中时,鼠标指针停留在选中内容上,而不会滑动

      6.支持鼠标滑轮上下翻动操作

      7.对于相同种类的元素采用相同的操作激活

      8.采用动态图标形象的表示出当前的操作,如用水漏表示系统忙,用手型表示可以点击等

      9.鼠标无规则点击时不会产生不良后果

      10.单击鼠标右键弹出快捷菜单,取消右键后该菜单隐藏

      11.鼠标光标样式统一,尽量使用系统标准,杜绝出现重复的情况

      六、GUI文字的标准

      文字在视觉上向用户传达各种信息,界面文字包括界面文字的字体和界面文字的用语两个方面,那这两方面都有哪些要求呢?以下分别阐述。

      1.字体

      a.使用统一字体,如规定软件系统的中文字体为“宋体”,英文及数据采用“Times New Roman”

      b.所有控件、描述信息尽量使用大小统一的字体属性,除了特殊提示信息、加强显示等例外情况

      2.文字表达

      提示信息、帮助文档文字表达遵循以下准则:

      a.口语化描述,用词客气多用您、请,不要用或少用专业术语,杜绝错别字

      b.标点符号(断句、逗号、句号、顿号、分号)的用法要统一, 提示信息比较多的话要进行分段

      c.警告、信息、错误 使用对应的表示方法

      d.使用统一的语言描述,例如一个关闭功能按钮,可以描述为退出、返回、关闭,则应该统一规定

      e.根据用户不同采用相应的词语语气语调

      七、GUI联机帮助的标准

      帮助文档适用于以下三种情况:

      *  系统默认、行业标准的控件操作不需要逐一描述,只需要对特殊控件加以描述

      *  特殊操作、特殊功能界面,在界面上加控件直接连接到对应的帮助文件中

      *  特殊设置的详细信息,除了应该在界面上用简洁明了的语句说明外,还可以在界面上加控件直接连接到对应的帮助文件中

      帮助文档的标准要求:

      *  结构化,按功能模块划分

      *  必须阐述功能通过什么方法可以在软件中实现

      *  措词恰当、简捷、通俗易懂,明了的帮助用户解决问题

    *  不在帮助文档中做广告宣传

     

    浅谈易用性测试及GUI常见的测试要求

    对于一个需要面对用户的软件产品来说,最直观的UI和使用感受也是产品能否获得用户认可的关键一环。个人认为,在毒霸的产品传统中,从设计到开发再到测试,对产品的易用性和GUI的规范往往给予的关注较少。我在测试过程中就遇到了很多影响使用心情的非关功能方面的 BUG。希望此文可以在毒霸的易用性和GUI方面的测试中给同学们提供一些参考。

      易用性测试

      易用性(Useability)是交互的适应性、功能性和有效性的集中体现。

      在《软件工程产品质量》质量模型中,提出易用性包含易理解性、易学习性和易操作性;即易用性是指在指定条件下使用时,软件产品被理解、学习、使用和吸引用户的能力。易用性测试包括针对应用程序的测试,同时还包括对用户手册系统文档的测试。通常采用质量外部模型来评价易用性。包括如下方面的测试:

      (1) 易理解性测试

      (2) 易学性测试

      (3) 易操作性测试

      (4) 吸引性测试

      (5) 易用的依从性测试

      易用性测试方法有:静态测试;动态测试;动态和静态结合测试。

      由于易用性缺陷的主观性,因此测试人员和UI设计人员经常产生不同意见。UI通常被当作创造者的作品,而测试人员说某处是错误,就可能挫伤“艺术家”。易用性是软件缺陷中的敏感问题。

      人体工程学(ergonomics)是一门将日常使用的东西设计为易于使用和实用性强的学科。人体工程学的主要目标是达到易用性。

      1、用户界面测试

      用于与软件交互的方式称为用户界面或UI。

      2、优秀UI的构成

      软件测试员要负责测试软件的易用性,包括其用户界面。

      记住,软件测试员不需要去设计UI,只需要把自己当作用户,然后去找出UI中的问题。

      优秀UI具备的七个要素

      (1) 符合标准和规范

      重要的用户界面要符合现行标准和规范,这些标准和规范由软件易用性专家开发。它们是由大量正式测试、经验、技巧和错误得出的方便用户的规则。如果软件严格遵守这些规则,优秀UI的其他要素就自然具备。

      (2) 直观性

      * 用户界面是否洁净、不唐突、不拥挤?

      * UI的组织和布局合理吗?

      * 是否允许用户轻松地从一个功能转移到另一个功能?

      * 下一步做什么明显吗?

      * 任何时候都可以决定放弃或者退回、退出吗?

      * 菜单或者窗口是否深藏不露?

      * 有多余功能吗?软件整体抑或局部是否做得太深?

      * 帮助系统有效吗?

    (3) 一致性

      * 用户的使用习惯性强,希望一个程序的操作方式能够带到另一个程序中。在审查软件一致性时要考虑一下术语:

      * 快捷键和菜单选项

      * 术语和命名

      * 听众

      * 诸如OK和Cancel按钮的位置

      (4) 灵活性

      * 灵活性表现在:用户喜欢选择不要太多,但是足以允许他们选择做什么和怎么做。

      * 状态跳转

      * 状态终止和跳过

      * 数据输入和输出

      (5) 舒适性

      * 软件使用起来应该舒适,不能给用户工作制造障碍和困难。如何鉴别软件舒适性的一些好想法:

      * 恰当。软件外观和感觉应该与所做的工作和使用者相符。

      * 错误处理。程序应该在用户执行严重错误的操作之前提出警告,并且允许用户恢复由于错误操作导致丢失的数据。

      * 性能。快不见得是好事。不少程序的错误提示信息一闪而过,无法看清。如果操作缓慢,应该让用户得到相应的信息。

      (6) 正确性

      * 要测试正确性,就是测试UI是否做了该做的事。

      * 市场定位偏差:有没有多余的或者遗漏的功能,或者某些功能执行了与市场宣传材料不符的操作?

      * 语言和拼写:程序员常常能制造出非常有趣的用户信息。

      * 不良媒体:图标是否同样大小?是否具有相同的调色板?声音是否应该有相同的格式和采样率?

      * 所见即所得:保证UI所说的就是实际得到的。

      (7) 实用性

      * 是否实用是优秀用户界面的最后一个要素。

      * 不是指软件本身是否实用,而是指具体特性是否实用。

      * 在审查产品说明书、准备测试或者实际测试时,想一想看到的特性对软件是否有实际价值。它们有助于用户执行软件设计的功能吗?如果认为它们没必要,就要研究一下找出它们存在于软件中的原因。

      总之,不要让易用性测试的模糊性和主观性阻碍测试工作。易用性测试的模糊和主观是固然的,即使设计用户界面的专家也会承认有的地方是这样的

    GUI常见的测试要求

      窗口

      * 窗口能否基于相关的输入或菜单命令适当的打开

      * 窗口能否改变大小、移动和滚动

      * 窗口中的数据能否用鼠标、功能键、方向箭头和键盘操作

      * 当被覆盖的窗口重新调用后,所有相关功能是否可操作

      * 能否使用所有窗口的相关功能,所有相关功能是否可操作

      * 相关的下拉式菜单,工具条,滚动条,对话框,按钮,图标和其它控制有否?能否正常显示?完全可用?

      * 显示多窗口时,窗口名能否正确显示,活动窗口是否加亮

      * 使用多用户时,所有窗口是否能实时更新

      * 多次或不正确按鼠标是否会产生无法预测的结果

      * 窗口的声音、颜色提示和窗口的操作顺序是否符合需求

      * 窗口能否正确关闭

      数据项

      * 字母、数据能否正确显示且输入系统

      * 图象方式数据项(如滚动条)是否正常工作

      * 数据输入、消失是否可以理解,能否识别非法数据

      下列式菜单和鼠标操作

      * 菜单条显示在合适语言环境中

      * 应用程序的菜单是否显示系统相关特性

      * 下拉式操作是否正确,功能是否正确

      * 菜单、调色板和工具条是否能正常的工作

      * 能否列出所有菜单功能和下拉式功能

      * 能否通过鼠标操作所有菜单的功能,通过文本命令激活每个菜单功能

      * 菜单功能随当前窗口操作加亮或变灰

      * 如果要求多次点击鼠标或鼠标有多个按钮时能否正确识别

      * 光标、处理指示器和识别指针能否随操作而适当改变

    UI测试常见BUG

    录入界面

      1. 输入字段要完整,且要与列表字段相符合(参照数据库进行检查)

      2. 必填项一律在后面用*表示(必填项为空在处理之前要有相关的提示信息)

      3. 字段需要做校验,如果校验不对需要在处理之前要有相关的提示信息

       (1) 长度校验

       (2) 数字、字母、日期等等的校验

       (3) 范围的校验

      4. 录入字段的排序按照流程或使用习惯,字段特别多的时候需要进行分组显示

      5. 下拉框不选值的时候应该提供默认值

      6. 相同字段的录入方式应该统一(录入方式有以下几种:手动输入、点选 、下拉选择、参照)

      7. 录入后自动计算的字段要随着别的字段修改更新(如单价变后,金额也变)

      8.日期参照应该既能输入,又能从文本框选择

    界面格式

      1. 字体颜色、大小、对齐方式(根据字段的性质确定)、加粗的一致性

      2. 文本框、按钮、滚动条、列表等控件的大小、对齐、位置的一致性

      3. 所有新增、修改、查看页面加上页面说明(如:XXX新增、XXX编辑、XXX查看等说明字样),(弹出的)界面要有标题,标题与内容要一致

      4.不同界面显示相同字段的一致性(如列表界面和编辑界面)

      5. 界面按钮显示要求(查询、新增、删除顺序)

      6. 列表的顺序排列应该统一(按照某些特定条件排序)

      7. 下拉框中的排列顺序需要符合使用习惯或者是按照特定的规则排定

      8. 所有弹出窗口居中显示或者最大化显示

      9. 信息列表中如果某个字段显示过长用“…”或者分行显示

      10. 人员、时间的缺省值一般取当前登录人员和时间

      11. 对于带有单位的字段,需要字段的标签后面添加如下内容:“(单位)”

    功能问题

      1. 按钮功能的实现(如返回按钮能否返回)

      2. 信息保存提交后系统给出“保存/提交成功”提示信息,并自动更新显示

      3. 所有有提交按钮的页面都要有保存按钮(每个界面风格一致)

      4. 凡是点选或者下拉选择的界面,如果一旦选择完了无法回到不选择的情况,需要加上“清除选择”功能按钮(即空白选项)、还需要有一个‘全部’选项。

      5. 没有选择记录点击删除/修改按钮要提示“请先选择记录”

      6. 选择记录后点击删除按钮要提示“确实要删除吗?”

      7. 需要考虑删除的关联性,即删除某一个内容需要同时删除其关联的某些内容(当存在关联的数据时,此记录应该不能删除,必须将其关联的记录先删除,才能再回到此界面将此记录删除)

      8. 界面只读的时候(查询、统计、导入)等,应该不能编辑。

    查询问题

    1. 查询条件缺少一些可以查询的字段(在查询条件中应当将可以进行查询的字段都列举出来并支持该字段的查询),

    查询条件分为:可输入和枚举型(点选、框选、下拉框选择、日期选择:‘年月日分开选择’或‘弹出日期选择界面’)等两大类。

      2. 有些查询条件需要支持模糊查询:关键字查询即部分匹配

    3. 需要考虑有些查询条件本身的关联性(即某个查询条件的取值范围是依赖于其它查询条件的取值):

    即查询条件的过滤功能

    (比如第一个下拉框选择选择‘浙江省’,则第二个下拉框自动过滤出属于浙江的地区名称如‘绍兴市、宁波市、杭州市…等’;选择其中一个,则在第三个下拉框中出现该地区包括的县级城市名称)

      4. 查询条件名称与信息列表及信息编辑页面相应的字段名称完全统一

    5. 不同模块相同字段的查询方式应该统一(手动输入、点选 、下拉选择)

    不同模块相同字段显示的字段名称应该完全统一。

      6. 出报表的时候,查询条件需要显示在报表标题的下面,这样看报表的时候知道数据的依据是什么。

    7. 对于范围的查询采用全闭的形式。

     

    输入数据的设计方法和测试用例设计方法

    测试用例的设计是测试设计的重要内容,关于测试用例的设计方法,当前不少出版的测试书和发表的测试文章,不少存在着表述错误,主要是把测试用例中的输入数据的设计方法与测试用例的设计方法混为一谈,对测试初学者和测试用例设计人员产生误导。

    这种错误的主要表现举例如下:

    测试用例的设计方法包括:

    (1)等价类划分法

    (2)边界值法

    (3)功能图与判定表法

    (4)错误推测法

    (5)用户场景法

    (6)......

    其实,测试用例中输入数据的设计方法只是测试用例设计方法的一个子集,上面列出的集中方法都是确定黑盒测试用例的输入测试数据的一般方法,而不是测试用例的设计方法。

    除了确定输入数据之外,测试用例的设计还包括如何确定测试用例的设计策略,如何组织设计用例,如何从测试需求等文档创建完整的测试用例。

    对测试执行人员来说,测试用例的表示内容包括以下几个方面:

    (1)测试用例的测试目标

    (2)测试用例的被测功能点描述

    (3)测试用例的测试运行环境

    (4)测试用例的执行方法(包括测试步骤,输入测试数据或测试脚本)

    (5)测试期望的结果

    (6)执行测试的实际结果

    (7)其他辅助说明

    从以上几点,我们可以看到输入测试数据只是设计测试用例的一个步骤,而不是全部。

    测试用例的设计是一项复杂的测试工作,测试用例的设计方法需要考虑测试的目标,被测试软件的特性,测试者人力资源的技术和能力,测试组织形式,测试进度、测试成本等多个方面。

    网站测试清单

    通用

    ◇ 所有测试是否运行在干净系统上?

    ◇ 系统是否正常运行?

    ◇ 是否显示正确输出?

    ◇ 系统是否能提供所需功能?

    ◇ 普通用户是否能轻松地操作该系统?

    ◇ 是否易学易用?

    ◇ 系统是否会为客户提供服务?如响应的、有帮助的、正确的服务?

    ◇ 是否可以简单辨别系统的正确性与可靠性?

    ◇ 是否能轻易地修复或修改系统?

    ◇ 当系统需要提交或修复时,开发人员是否可以在限期内完成?

    ◇ 新版本中未经修改的功能是否能与老版本保持一致?

    ◇ 系统是否能使硬件、网络及人力资源得到有效利用?

    ◇ 系统是否能匹配相关的技术水平?

    ◇ 系统是否能匹配适当调整的需求?

    ◇是否可以有效验证系统的工作方式是适当的?

    ◇ 本系统内一些组成部分是否可以被其他的系统再利用?

    ◇ 不同用户不同平台上安装系统是否同样快捷便利?

    ◇ 系统是否设置有未来更新的路径?

    ◇ 是否可以方便地获取信息?

    ◇ 网站是否能被搜索?

    可用性、界面及导航

    ◇ 系统为一个用户、十个用户或一千个用户服务时,是否同样工作正常?

    ◇ 是否可以快速登陆主页?

    ◇ 网站的操作方法是否清晰地展示给用户?

    ◇ 如果按操作方法进行操作是否可以得到预期结果?

    ◇ 是否所有新用户都理解网站内的所有术语?

    ◇ 是否所有窗体都有导航栏?

    ◇ 导航栏的位置是否始终保持一致?

    ◇ 是否导航栏仅作用于使用中的文本?

    ◇ 用户是否可以在不用鼠标的情况下使用导航栏功能?

    ◇ 视力障碍者是否可以使用网站?红绿色盲,少于 20/20

    ◇ 网站标志是否风格一致?

    ◇ 每个单独页面内是否包含主页链接?

    ◇ 每个页面的排版是否统一?

    ◇ 每个页面的管理风格是否一致?

    ◇ 网站内图表的使用是否协调?

    ◇ 快速下载的图表是否质量优化?

    ◇所有图片是为页面添彩,还是浪费网速?

    ◇ 是否使用了图表的最佳尺寸?

    ◇ 图表/图片周围的文字布局是否合理?

    ◇ 是否对所有的参考网站或电子邮件地址都设置了超链接?

    ◇ 超链接颜色设置是否标准?

    ◇ 网站在 1024x 768、600x800 等像素下是否显示正常?

    ◇ 字体是否太小(切忌并非每个人都能获得相同的视图效果)?

    ◇ 字体是否太大?

    ◇ 所有文本是否排列适当?

    ◇ 所有图标是否排列适当?

    ◇ 图片是否能被完整打印?

    ◇ 网站内是否有站内地图?

    ◇ 站内地图的每个超链接是否有对应的目标链接页?

    ◇ 站内地图是否包含了网站内所有的超链接?

    ◇ 每个页面的超链接是否正常工作?

    ◇ 内容是合法正确的(非单元测试期间开发者设置的填充内容)

    ◇ 页面背景(颜色)是否会分散注意力?

    ◇ 返回按钮是否正常工作?不会打开一个新的浏览器窗口,或重定向其他站点。

    ◇ 返回上页或转至新页面时,是否会导致本页面内容丢失?

    ◇ 从主页开始是否可以通过 3 次或更少的点击数到达目标页面?

    ◇ 图表或表格中的内容是否完整?是否正确列出?是否能确定所选文本处于图表或表格的正确区域内?

    ◇ 页面上的链接是否和先前一致?有没有新出来的或消失的链接?

    有没有链接失败的情况?

    ◇ 点击链接是否能到达正确的目标页面?

    ◇ 目标页面是否存在?

    ◇ 站主的联系信息是否能从网站中获得(姓名、电话、电子邮件地址、邮寄地址、传真号)?

    ◇ 如果用户需要为某个页面作标签,该页面的名称是否易懂?

    ◇ 如果用户有获取历史页面纪录的权限,那网站地址是否会出现在 History 列表中?

    ◇ 网站页面的状态栏是否真实反映出页面登陆的进度、信息等?

    表格

    ◇ 表格是否过长,经常需要通过拖动滚动条才能看到表格右边的栏目?

    ◇ 表格是否能正确打印?

    ◇ 表格内的列宽和行高是否合适?

    ◇ 会不会因为某个输入而使行高变化异常?

    框架

    ◇ 是否会出现浏览器不支持的框架?

    ◇ 框架是否能自动准确地调整大小?用户是否可以操控框架的尺寸?

    ◇ 滚动条是否会适时出现?

    ◇ 框架页面上是否有明确的数据供书签或收藏夹识别?

    ◇ 搜索引擎是否可以找到框架中的内容?

    ◇ 框架边框是否美观?

    ◇ 框架内更新是否会出现问题?

    数据认证

    ◇ 网站内面向用户的数据描述是否清楚?

    ◇ 隐私制度是否制定清楚?用户能否看到该制度?

    ◇ 保存的数据是否准确?

    ◇ 工作站是否对数据进行认证?

    ◇ 服务器是否对数据进行认证?

    ◇ 是否可以确保用户在工作站录入的信息可以被服务器正确接收?

    ◇ 在不同的时间段是否可以避免录入相同的信息(订单表等)?

    ◇ 是否为每个用户分配有唯一标识符,用于录入表格数据,保证表格对象的唯一性?

    ◇ 要求用户录入的信息是否是进程所必需的?例如:要求用户录入生日信息是用于其订单编号?或是仅仅为了多获得一些用户信息?

    ◇ 数字录入区域是否可以录入文字?

    ◇ 搜索中能否使用通配符?

    ◇ 是否可以在域内录入空格和空值?

    ◇ 是否可以录入长串?

    ◇ 域内是否可以录入文本最大的数量?

    ◇ 复选框和控件按钮的初值是否设置正确?

    ◇ 一个组内的控件按钮是每次只能选中一个?

    ◇ 复选框是否会触发预期事件?

    ◇在表格域内用户是否不能输入 HTML 代码?

    ◇智能错误处理是否会引发数据认证? IE.如生日域的需求格式为 MM/DD/YYYY,则用户输入出声年份为 1857 是不匹配的。

    外部界面

    ◇ 系统界面是否与相关的外部系统相匹配?

    ◇ 界面是否通过验证?

    ◇ 是否所有的支持的浏览器都经过测试?

    ◇ 一旦外部应用程序不可用或服务器连接失败,是否所有与外部界面相关的错误环境都经过测试?

    ◇ 代理缓存是否经过测试?

    ◇ 是否所有可能从网站内部安装的应用程序都经过测试?

    内部界面

    ◇ 网站是否支持无下载功能的用户使用?

    ◇ 网站是否设置有防火墙?

    ◇ 网站是否可以灵活使用卸载插件?

    ◇ 网站处于不同模式或运行速度的情况下可能需要使用插件,网站是否支持?

    ◇ 是否所有的插件可以协同工作?

    ◇ 是否所有平台都支持,且能打开链接文件(如 Solaris 操作系统是否可以打开 Microsoft Word 文件)?

    ◇ 是否所有浏览器都支持这些插件?

    ◇ 一旦 Java 不可用,是否网站就不可用?

    ◇ 是否所有的插件都能正常启动?

    ◇ 如果下载时遇到错误,是否会有错误处理?

    ◇ 网站功能中是否有使用"非标准"硬件(如话筒、线缆调制解调器等)的功能存在?

    ◇ 是否可以下载注册的 ActiveX 控件?

    ◇ 是否可以下载未注册的 ActiveX 控件?

    ◇ 是否可以初始化并编译未被认定为安全的 ActiveX 控件?

    ◇ 是否可以运行 ActiveX 控件和插件?

    ◇ 是否可以编译被认定为安全可编译的 ActiveX 控件?

    ◇ 反馈结果是否需要 cookie?

    ◇ 如果用户不支持 cookie,反馈结果是否正常?

    ◇ 反馈结果是否允许使用每个对话 cookie?

    ◇ 反馈结果是否需要文件下载?

    ◇ 如果用户不要下载文件,网站是否仍可以使用?

    ◇ 反馈结果是否需要使用特定字体?

    ◇ 反馈结果是否需要用户跨越多个站点/域链接数据源?

    ◇ 用户是否可以使用拖拉和点击功能?

    ◇ 用户是否可以使用复制/粘贴功能?

    ◇ 反馈结果是否需要下载任何桌面项?

    ◇ 反馈结果是否需要登陆或安装任何带框架的文件?

    ◇ 是否允许提交未加密数据?

    ◇ 网站是否允许通过脚本复制操作?

    浏览器 - IE、Netscape、AOL、Mac 等

    ◇ HTML 版本是否与相应的浏览器版本相匹配?

    ◇ 测试时,JAVA 源码/脚本是否被浏览器支持?

    ◇ 测试时,浏览器是否可以正确显示图片?

    ◇ 是否可以确定在任何浏览器上,字型都是可用的?

    ◇ 与每个浏览器相关的安全性设置/风险是否经过检验?

    ◇ 是否在多个浏览器上验证过数字证书?

    ◇ 与浏览器配套的插件是否和网站一起经过测试?

    ◇ 是否设置了源码不可见?

    ◇ 不同浏览器上的网站内容是否都可打印?

    ◇ 是否影响整体的内容大小(可靠性、一致性)?

    ◇ 是否验证过应用程序与框架是否兼容?

    ◇ 鼠标和键盘是否经测试适用于不同的浏览器?

    ◇ 是否执行过智能错误处理(如:cookie 不可用)?

    ◇ 128 位编码是否经验证可用?

    ◇ 在不同浏览器上 GIF 是否经测试可用?

    Cookies

    ◇ cookie 储存的信息是否经过验证?

    ◇ cookie 信息是否经过加密?

    ◇ cookie 信息是否适量增加?

    ◇ 是否阻止用户编辑 cookie?

    ◇ 是否检查过如果用户浏览网站期间删除 cookie,会发生什么?

    ◇ 是否检查过如果用户关闭网站后删除 cookie,会发生什么?

    ◇ cookie 储存的路径是否正确?

    ◇ cookie 的信息是否正确有效,用户是否可以使用该信息连接网站?

    登陆/并发使用

    ◇ 系统是否达到预期的响应时间、流量以及实用价值?

    ◇ 系统是否可以承受极限用户量的访问?

    ◇ 系统是否可以长期无故障地正确运行?

    ◇ 是否监视过 CPU 的使用、响应时间、硬盘空间、内存用量及泄露?

    ◇ 是否定义标准响应时间(如:所有的页面的显示时间应小于 10 秒)?

    ◇ 是否验证防火墙、证书、服务提供商以及可以网络的影响?

    ◇ 不同速度的调制解调器上网页的登陆性能是否可接受?

    ◇ 同一用户是否可以长时间连续使用网站?

    ◇ 多个用户是否可以长时间连续使用网站?

    ◇ 在高流量的情况下,网站是否能支持短时间的使用?

    ◇ 网站是否可以维持大量数据的处理,而不崩溃?

    ◇ 如果事务是无效的,网站是否仍允许大订单,而不会死锁目录?

    错误处理

    ◇ 是否建立自动错误监察恢复机制,以保持系统运行?

    ◇ 如果系统崩溃,重启和恢复机制是否有效可靠?

    ◇ 如果半途断开网站,事务是否随之取消?

    ◇ 如果网络忽然中断,事务是否随之取消?

    ◇ 反馈结果是否处理文件传输的中断?

    ◇ 反馈结果是否处理浏览器崩溃?

    ◇ 当网站和应用服务器连接中断时,反馈结果是否处理?

    ◇ 反馈结果是否处理数据库服务器中断链接的情况?

    ◇ 应用程序是否通报用户事务的状态?

    ◇ 网站是否包含 24 x 7 性能监控?

    ◇ 监控软件 MAPI 的电子邮件协议/限制

    ◇ 网站是否可以链接到页面系统?

    ◇ 时间 - 连续、每时、每天、每周

    ◇ 硬件限制 - 监视软件是否必须运行在专用机器上?

    ◇ 内存 - 泄露、隐藏、持续运行导致的问题

    网络影响

    ◇ 是否考虑过 32 位和 64 位版本的 IP 问题?

    ◇ 是否测试过安全代理服务器的影响?

    安全

    ◇ 是否足够安全?

    ◇ 是否机密/用户私密保护?

    ◇ 是否只有使用 128 位浏览器才能成功链接?

    ◇ 网站是否提示用户姓名和密码?

    ◇ 网站是否需要孩童输入个人信息?如果需要,是否在安全页面进行,且警示其家长?

    ◇ 服务器和客户端是否都有数字证书?

    ◇ 是否验证密码开始和结束的地方?

    ◇ 是否允许同时注销?

    ◇ 应用程序是否支持因静止而导致超时?

    ◇ 安全页面内书签是否不能使用?

    ◇ 在非安全/安全页面的状态栏上是否有显示钥匙/锁?

    ◇ 右击、查看、源文件是否不可用?

    ◇ 是否不能在 URL 上通过编辑内容而进行直接搜索?

    ◇ 如果使用数字证书,请通过注册证书、按规定填写安全信息测试浏览器缓存。安装证书后,试着使用回车键,看安全信息是否仍保存在缓存中。如果仍旧存在,那任何使用者都可能有机会获取这些高敏感的数字证书中的安全信息。

    ◇ 由于 SSL 和低于 3.0 版本的浏览器不兼容,是否有第二种方法可以连接到安全页面?

    ◇ 用户是否清楚何时进入、何时离开网站的安全部分?

    ◇ 当用户多次使用无效登陆名/密码信息登陆失败时,服务器是否会拒绝该用户再次尝试链接?

     

    GUI测试之窗口篇

    窗口是Windows本身以及Windows 环境下的应用程序的基本界面单位,就是显示在屏幕上的一个矩形区域。一般来说窗口是具有标题栏、菜单/菜单栏、工具栏、工作区、状态栏、最大化、最小化按钮和滚动条的标准方框,应用程序通过它和用户进行交互。但是如果没有标题栏、状态栏、最大化、最小化按钮是不是就不叫窗口呢。其实不然,窗口的概念很广,例如按钮和对话框等也是窗口,只不过是一种特殊的窗口罢了。这里我主要将的还是标准意义上的窗口。

    窗口主要有进入、移动、改变窗口大小;最大化、最小化和还原;使用滚动条和关闭窗口等操作。

    因此可以通过如下来测试窗口:

    大多数的窗口、屏幕/对话框应该有最小化,恢复和关闭按钮。

    所有的窗口、屏幕/对话框应该有和内容相一致对应的标题。

    只有主窗口才有标题栏图标、菜单栏、工具栏和状态栏。二级窗口不要使用菜单栏、工具栏或状态栏。

    每一个窗口/屏幕都应有功能匹配的OK和Cancel按钮。窗口/对话框的缺省<Enter>键应该设置在OK按钮上;窗口/对话框的缺省<Esc>键应该设置在Cancel按钮上。

    a.Escape键取消对话框,焦点重新定位回到父窗口先前的焦点上,
        b.Alt+F4关闭窗口,和Escape键相似,但它可以在即使没有Cancel按钮的对话框中工作

    c.Alt+Space打开窗口的菜单Restore, Move, Size, Minimize, Maximize, Close
        d.Shift+F10和右击效果一样。
        e.可以用键盘上的箭头按钮实现Move和Size功能

     

    一个窗口每个组件的访问键必须是唯一的。

    父窗体或主窗体的中心位置应该在对角线焦点附近;子窗体位置应该在主窗体的左上角或正中;多个子窗体弹出时应该依次向右下方偏移,以显示窗体出标题为宜。

    二级窗口最好不要显示在任务栏中,因为单击主窗口的任务栏按钮也会激活二级窗口。

    如果子窗体的任何操作会影响了父窗体的数据时,关闭子窗体同时必须刷新父窗体的数据。

    关闭父窗体时必须关闭所有打开的子窗体。如果由于子窗口没有关闭而无法关闭父窗口,必须给予提示信息框。在关闭提示信息框后显示必须关闭的子窗口。

    子窗体的大小最好不要超过父窗体,且最好不要遮住父窗体的主要信息。如果存在多层嵌套窗口,每层窗口弹出时都自动往右下移动一点点,以保证不遮盖上层窗口标题为准。

    窗口嵌套层次最好不超过3层。

    点击窗口中的帮助按钮或F1必须带出和窗口内容相一致的帮助。

    窗口可以被多次打开和关闭。但窗口未关闭或被其他窗口覆盖时,再次点击菜单或按钮,测试窗口是否可以被激活。

    如果窗体可以最小化,最大化或可调整大小时,窗体上的控件也要随着窗体而缩放;对于含有按钮的界面一般不应该支持缩放,即右上角只有关闭功能。

    工具栏按钮应该有浮动的提示,可以根据用户的要求自己选择定制;:相同或相近功能的工具栏放在一起;:一条工具栏的长度最长不能超出屏幕宽度;工具栏的图标能直观的代表要完成的操作;系统常用的工具栏设置默认放置位置;:工具栏太多时可以考虑使用工具厢;:工具厢要具有可增减性,由用户自己根据需求定制。:工具厢的默认总宽度不要超过屏幕宽度的1/5

    状态条要能显示用户切实需要的信息,常用的有: 目前的操作、系统状态、用户位置、用户信息、提示信息、错误信息等,如果某一操作需要的时间较长,还应该显示进度条和进程提示。状态条的高度以放置五好字为宜,滚动条的宽度比状态条的略窄。

    菜单和工具条应有清楚的界限,菜单和状态栏中使用统一大小的字体(通常使用5号字体)

    菜单应采用“常用--主要--次要--工具--帮助”的位置排列。提供常用的菜单项,如“文件”、“编辑”,“查找”,“打印”等。对常用的菜单项提供快捷命令方式。快捷方式唯一。

    主菜单数目不太多时最好为单排布置。如果菜单选项较多,应该采用加长菜单的长度而减少深度的原则排列。菜单深度一般要求最多控制在三层以内。

    下拉菜单要根据菜单选项的含义进行分组,並且按照一定的规则进行排列,用横线隔开。一组菜单的使用有先后要求或有向导作用时,应该按先后次序排列。没有顺序要求的菜单项按使用频率和重要性排列,常用的放在开头,不常用的靠后放置;重要的放在开头,次要的放在后边。对与进行的操作无关的菜单要用屏蔽的方式加以处理,如果采用动态加载方式——即只有需要的菜单才显示——最好。

    菜单前的图标不宜太大,与字高保持一直最好。主菜单的宽度要接近,字数不应多于四个,每个菜单的字数能相同最好。

    状态栏中的信息应该根据窗口的内容的变化而变化,如在初始状态时,系统有多少条数据,经过查询后状态栏的数据应该发生变化。

    滚动条的长度根据显示信息的长度或宽度及时变换,这样有利于用户了解显示信息的位置和百分比;拖动滚动条,检查屏幕刷新情况,并查看是否有乱码;单击滚动条和滚动条的上下按钮;用滚轮控制滚动条;

    如果系统的模块较多,较深,经常会多级菜单,最好在窗口上加上导航条,以方便用户可以快速返回

     

    GUI测试之信息处理类篇

    在这篇文章中,我将文本框(Text Box),列表框(List Box),组合框(Combo Box)、下拉列表框(Drop-down List Box),复选框(Check Box),单选框(Radio box)/(option box),选项框(Option box)、滑动条(Slider)、旋转按钮(Spin Button)等都作为信息处理类来统一总结。

    窗口/屏幕上的每一个字段都应有相应的标签。

    根据文本框可以接受的类型测试文本框:

    1)输入正常的字母或数字

    2)输入已存在的信息

    (当某个字段不能重复的时候,输入已存在的信息,看保存是否会提示,比如注册用户的时候,要求用户名不可重复:先注册一个用户,保存成功(确定数据库中已保存该条数据),再注册一个用户,输入同样的用户名,保存是否会提示:该用户名已被使用等。)

    3)输入超过允许长度的字符或边界数字

    4)输入空白,空格,(输入其他特殊字符如:#@¥%&*等)

    5)输入不同类型或不同日期格式的数据,

    6)复制/粘贴等操作强制输入程序不允许的输入数据

    7)输入数据库或特殊字符集,例如NULL及\n等

     

    测试文件选择框的正确性。使用空文件,只有空格的文件,不同类型的文件,同名文件,内容相同名称不同的文件,大文件等。

    测试强制性字段的正确性(即必输项测试),强制性字段必须用红色的星号*标识。强制性字段两种处理方式:最好是必填项没有输入时,在光标移走时在相应的文本框后显示需要用户输入的红色信息。一般也可以在提交时用弹出消息框提示未填的必填项,关闭消息框后必须停留在第一个待输入的文本框中。

    每一个新窗口/屏幕中,光标默认停留在第一个待输入的文本框中。

    一般下拉框中应显示一个默认值,列表框中高亮度显示一个默认值。如果不需要默认值时,一般默认值未“请选择。。。”。

    一般来说系统应记忆以前输入或选择的信息,但是当涉及安全时,最好不要保留用户的信息。有些地方可以使用复选框让用户决定是否要保留信息。如登录界面。

    对输入信息类型有限制的文本框应在输入非法值后给予提示,对于日期型的输入框,最好在标签上就给予提示

    当输入的内容达到了字段的长度限制时,一般应控制不允许再输入,或者在提交后提示具体的允许输入的长度或者在光标转移时提示‘***允许输入的最大长度是***’等,而不是自动截断。(农信社资金业务管理系统目前采取右截断的处理方式,因此有问题)

    系统中不允许的非法字符,最好是在输入时不允许输入,或在提交时给予具体系统不允许的非法字符列表提示。(如’、”、<、<>)

    正确使用复选框或单选框。如果结果只有一个的,则使用单选框,如性别。验证单选按钮不能同时选中只能选中一个,而可以选择多个复选框。

    一组单选按钮在初始状态时必须有一个被默认选中,不能同时为空。

    分别测试多个复选框可以被逐一选中;同时选中,部分选中;都不被选中。

    通过输入数字或用点击上下箭头来测试旋转按钮,测试其自动循环性,如范围为(0~999)先输入为999,在点击向下键,看是否会跳到0。输入字符或超过边界的数值,系统应该提示错误且重新输入;

    验证列表框中的条目内容显示正确;允许多选的列表框,要分别检查shift和ctrl选中条目情况

    避免使用水平滚动条,因为它会使项目阅读起来比较困难。解决的办法有:尽量使用垂直滚动条、加宽窗口、减小文本的宽度,或者使文本自动换行等。当然,如果确实需要,还可以使用水平滚动条。

    全选框勾中时应该选中当页所有记录,去掉当页某个记录的勾选,则全选也不选中。翻页后,自动去掉已勾选的记录及全选的勾选。

    复选框可以通过Space可以控制选中/不选中

    F4, Alt+down或alt+up控制combobox打开和关闭

    对于combobox,Escape键等同于Cancel,Up/down箭头按钮控制向上或向下,Shift+up和shift+down可以多选,Ctrl实现多选;

     

    GUI测试之按钮篇

    在同一窗口中实现某一功能的按钮是唯一的。

    按钮位置:OK按钮总是在上方或者左方,而Cancel按钮总是在下方或右方。

    等价键:Cancel按钮的等价按键通常是Esc,而选中按钮的等价按钮通常是Enter保持一致。

    测试按钮能否正常的实现功能,常用按钮的功能为:

    OK(确定)接受输入的数据或显示的响应信息,关掉窗口

    Cancel(取消)不接受输入的信息,关掉窗口。取消时最好给予提示,尤其时有大量输入的窗口。

    Close(关闭):结束当前的任务,让程序继续进行;关掉数据窗口

    Help(帮助):调出程序的帮助信息

    Save(保存):保存数据,停留在当前窗口。如过保存耗时长的话,最好显示类似沙漏,进度条之类的提示。注意验证能否重复保存。如在IE中由于网速慢而导致的重复保存。

    Add(新增):新增记录。新增的记录必须排在首页首行。提交失败后必须保留用户已输入的内容,以便再次提交。提交时需对主要标识字段进行重复值、空值(空格)判断。

    Update/Edit(编辑):修改/编辑记录。如界面存在复选按钮,勾选多条记录进行修改时,需给予只能对一条记录进行修改,默认为第一条的提示信息。修改时加载的内容都为该记录的实际内容,而不再为默认值。修改完成后必须回到原记录所在位置,且刷新显示修改后的值。提交失败后必须保留用户已修改的内容,以便再次提交。在查询条件下修改返回后如不满足查询条件则不显示,反之满足当前的查询条件则需显示新增的记录。需对主要标识字段进行重复值、空值(空格)判断。

    Delete(删除):删除记录。在删除之前必须有确认删除的提示信息。删除成功后刷新不显示被删除的记录。删除成功后返回到原记录所在页面;而当原记录所在页不存在时,则返回上一页。当被删除的记录与其它记录存在关联时,应给予不允许删除及更明细提示等信息。针对大批量的删除应提供全选复选框,方便用户删除。

    Search(查询):查询记录。每次查询应显示返回的结果数。每次查询应定位到首页[A2] 。保留前一次的查询条件。当查询条件较多时,需配以重置按钮。当未查询到任何记录时,需给予未查找到相关记录的提示信息。除用户明确要求不需要外,需提供模糊查询及组合查询功能。当查询返回的结果大于默认的一页大小时,最好采用分页或者根据系统默认或用户定义的一页显示的记录数量来分页。如有多页,需要提供首页,下一页,上一页,尾页和跳至功能。每页的记录不能重复,但也可以根据用户需要显示上一页的最后一条数据。

    Reset(重置):重置。应回到打开窗口时的最初状态。多次点击是否还能正常显示。

    Return(返回):返回。如果一个窗口或页面不能通过菜单,工具栏到达,而是必须通过前一个窗口完成才到达,应提供返回按钮或导航条让用户可以返回。

    如果点击按钮后还需要用户的进一步的操作,按钮的名称应加上省略号。如Browse。。。

    OK/Cancel/Apply/Help键的排放最好遵从Windows的标准排放。

    按钮最好都给予浮动提示[A3] ,特别是图片按钮,可以避免由于网络太慢而导致的太长时间不能往下操作。

     

    GUI测试之对话框、消息框篇

    对话框/消息框的缺省<Enter>键应该设置在OK按钮上;对话框/消息框的缺省<Esc>键应该设置在Cancel按钮上。

    一般来说重要的或复杂操作成功后应该给予提示,根据系统的特性选择弹出信息框或文字显示。需要后续操作的操作在成功后应给予提示。

    非法的输入或操作应给出足够的提示说明。

    对可能造成数据无法恢复的操作应该给予确认信息,给用户放弃选择的机会。如删除操作。

    提示信息不宜太长,宽度不能超过当前窗口的1/2;当超过此比例时,请视具体情况进行换行。有多行提示信息的,请选择对齐方式(一般为左对齐)。

    静态文本标签一般采用左对齐,这样显得更有条理且易于浏览。 静态文本标签一般置于相关控件的左边,有时选项过多过长时放在上面。

    复杂或带有专业性的操作或输入最好在输入项下面给予提示。

    通用对话框控件,如Open…,Save As…,Color…,Fonts…,Print…,Page SetUp…等调用系统的对话框只需要是否调用正确,能否实现正常功能就可以了,里面的具体功能可以不用测试

    消息框中的图标必须根据需要选择正确的使用,一般来说 X 表示有很重要的问题需要提醒用户;? 增亮没有危险的问题; ! 强调警告用户必须知道的事情; i 一般信息,可以使乏味的信息变得有趣。

    正在进行的操作提示框应使用省略号,如“删除中。。。”。

    对话框标题文本中不要出现省略号。如选择"打印选项..."命令结果而显示的对话框的标题应该为"打印",而不是“打印。。。”。但是,表示命令正在执行过程中菜单对话框(如"连接到Internet..."对话框)是一种例外情况。

    对于耗时的操作都应给出类似等待光标、进度表或其他的可视反馈。用户可以取消长时间的操作。如果可以取消未完成的操作,那么将按钮标记为"取消",否则将按钮标记为"停止"。

    测试用例设计--因果图方法

    一. 方法简介

    1.定义:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。

    2.因果图法产生的背景:

    等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的各种组合、输入条件之间的相互制约关系。这样虽然各种输入条件可能出错的情况已经测试到了,但多个输入条件组合起来可能出错的情况却被忽视了。

    如果在测试时必须考虑输入条件的各种组合,则可能的组合数目将是天文数字,因此必须考虑采用一种适合于描述多种条件的组合、相应产生多个动作的形式来进行测试用例的设计,这就需要利用因果图(逻辑模型)。

    3.因果图介绍

    1) 4种符号分别表示了规格说明中向4种因果关系。

     

    2) 因果图中使用了简单的逻辑符号,以直线联接左右结点。左结点表示输入状态(或称原因),右结点表示输出状态(或称结果)。

    3) Ci表示原因,通常置于图的左部;ei表示结果,通常在图的右部。Ci和ei均可取值0或1,0表示某状态不出现,1表示某状态出现。

    4. 因果图概念

    1) 关系

    ① 恒等:若ci是1,则ei也是1;否则ei为0。

    ② 非:若ci是1,则ei是0;否则ei是1。

    ③ 或:若c1或c2或c3是1,则ei是1;否则ei为0。“或”可有任意个输入。

    ④ 与:若c1和c2都是1,则ei为1;否则ei为0。“与”也可有任意个输入。

    2) 约束

    输入状态相互之间还可能存在某些依赖关系,称为约束。例如, 某些输入条件本身不可能同时出现。输出状态之间也往往存在约束。在因果图中,用特定的符号标明这些约束。

     

    A.输入条件的约束有以下4类:

    ① E约束(异):a和b中至多有一个可能为1,即a和b不能同时为1。

    ② I约束(或):a、b和c中至少有一个必须是1,即 a、b 和c不能同时为0。

    ③ O约束(唯一);a和b必须有一个,且仅有1个为1。

    ④ R约束(要求):a是1时,b必须是1,即不可能a是1时b是0。

    B.输出条件约束类型

    输出条件的约束只有M约束(强制):若结果a是1,则结果b强制为0。

    5. 采用因果图法设计测试用例的步骤:

    1) 分析软件规格说明描述中, 那些是原因(即输入条件或输入条件的等价类),那些是结果(即输出条件), 并给每个原因和结果赋予一个标识符。

    2) 分析软件规格说明描述中的语义,找出原因与结果之间, 原因与原因之间对应的关系,根据这些关系,画出因果图。

    3) 由于语法或环境限制, 有些原因与原因之间,原因与结果之间的组合情况不可能出现,为表明这些特殊情况, 在因果图上用一些记号表明约束或限制条件。

    4) 把因果图转换为判定表。

    5) 把判定表的每一列拿出来作为依据,设计测试用例。

     

    网站测试的主要方面

    1功能测试

    对于网站的测试而言,每一个独立的功能模块需要单独的测试用例的设计导出,主要依据为《需求规格说明书》及《详细设计说明书》,对于应用程序模块需要设计者提供基本路径测试法的测试用例。

    ● 链接测试

    链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。链接测试可分为三个方面:

    1)测试所有链接是否按指示的那样确实链接到了该链接的页面;

    2)测试所链接的页面是否存在;

    3)保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。

    链接测试可以自动进行,现在已经有许多工具可以采用。链接测试必须在集成测试阶段完成,也就是说,在整个Web应用系统的所有页面开发完成之后进行链接测试。

    Xenu------主要测试链接的正确性的工具

    可惜的是对于动态生成的页面的测试会出现一些错误。

    ●表单测试

    当用户给Web应用系统管理员提交信息时,就需要使用表单操作,例如用户注册、登陆、信息提交等。在这种情况下,我们必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。例如:用户填写的出生日期与职业是否恰当,填写的所属省份与所在城市是否匹配等。如果使用了默认值,还要检验默认值的正确性。如果表单只能接受指定的某些值,则也要进行测试。例如:只能接受某些字符,测试时可以跳过这些字符,看系统是否会报错。

    要测试这些程序,需要验证服务器能正确保存这些数据,而且后台运行的程序能正确解释和使用这些信息。

    B/S结构实现的功能可能主要的就在这里,提交数据,处理数据等如果有固定的操作流程可以考虑自动化测试工具的录制功能,编写可重复使用的脚本代码,可以在测试、回归测试时运行以便减轻测试人员工作量。

    我们对UM子系统中各个功能模块中的各项功能进行逐一的测试,主要测试方法为:边界值测试、等价类测试,以及异常类测试。测试中要保证每种类型都有2个以上的典型数值的输入,以确保测试输入的全面性。

    ●Cookies测试

    Cookies通常用来存储用户信息和用户在某应用系统的操作,当一个用户使用Cookies访问了某一个应用系统时,Web服务器将发送关于用户的信息,把该信息以Cookies的形式存储在客户端计算机上,这可用来创建动态和自定义页面或者存储登陆等信息。

    如果Web应用系统使用了Cookies,就必须检查Cookies是否能正常工作而且对这些信息已经加密。测试的内容可包括Cookies是否起作用,是否按预定的时间进行保存,刷新对Cookies有什么影响等。

    ●设计语言测试

    Web设计语言版本的差异可以引起客户端或服务器端严重的问题,例如使用哪种版本的HTML等。当在分布式环境中开发时,开发人员都不在一起,这个问题就显得尤为重要。除了HTML的版本问题外,不同的脚本语言,例如Java、JavaScript、 ActiveX、VBScript或Perl等也要进行验证。

    ●数据库测试

    在Web应用技术中,数据库起着重要的作用,数据库为Web应用系统的管理、运行、查询和实现用户对数据存储的请求等提供空间。在Web应用中,最常用的数据库类型是关系型数据库,可以使用SQL对信息进行处理。

    在使用了数据库的Web应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试。

    2性能测试

    网站的性能测试对于网站的运行而言异常重要,但是目前对于网站的性能测试做的不够,我们在进行系统设计时也没有一个很好的基准可以参考,因而建立网站的性能测试的一整套的测试方案将是至关重要的。

    网站的性能测试主要从三个方面进行:连接速度测试、负荷测试(Load)和压力测试(Stress).连接速度测试指的是打开网页的响应速度测试。负荷测试指的是进行一些边界数据的测试,压力测试更像是恶意测试,压力测试倾向应该是致使整个系统崩溃。

    ●连接速度测试

    用户连接到Web应用系统的速度根据上网方式的变化而变化,他们或许是电话拨号,或是宽带上网。当下载一个程序时,用户可以等较长的时间,但如果仅仅访问一个页面就不会这样。如果Web系统响应时间太长(例如超过5秒钟),用户就会因没有耐心等待而离开。

    另外,有些页面有超时的限制,如果响应速度太慢,用户可能还没来得及浏览内容,就需要重新登陆了。而且,连接速度太慢,还可能引起数据丢失,使用户得不到真实的页面。

    ●负载测试

    负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。例如:Web应用系统能允许多少个用户同时在线?如果超过了这个数量,会出现什么现象?Web应用系统能否处理大量用户对同一个页面的请求?

    ●压力测试

    负载测试应该安排在Web系统发布以后,在实际的网络环境中进行测试。因为一个企业内部员工,特别是项目组人员总是有限的,而一个Web系统能同时处理的请求数量将远远超出这个限度,所以,只有放在Internet上,接受负载测试,其结果才是正确可信的。

    进行压力测试是指实际破坏一个Web应用系统,测试系统的反映。压力测试是测试系统的限制和故障恢复能力,也就是测试Web应用系统会不会崩溃,在什么情况下会崩溃。黑客常常提供错误的数据负载,直到Web应用系统崩溃,接着当系统重新启动时获得存取权。

    压力测试的区域包括表单、登陆和其他信息传输页面等。

    采用的测试工具

    性能测试可以采用相应的工具进行自动化测试,我们目前采用如下工具

    ab -----Apache 的测试工具

    OpenSTA—开发系统测试架构

    3 接口测试

    在很多情况下,web 站点不是孤立。Web 站点可能会与外部服务器通讯,请求数据、验证数据或提交订单。

    ●服务器接口

    第一个需要测试的接口是浏览器与服务器的接口。测试人员提交事务,然后查看服务器记录,并验证在浏览器上看到的正好是服务器上发生的。测试人员还可以查询数据库,确认事务数据已正确保存。

    ●外部接口

    有些 web 系统有外部接口。例如,网上商店可能要实时验证信用卡数据以减少欺诈行为的发生。测试的时候,要使用 web 接口发送一些事务数据,分别对有效信用卡、无效信用卡和被盗信用卡进行验证。如果商店只使用 Visa 卡和 Mastercard 卡, 可以尝试使用 Discover 卡的数据。(简单的客户端脚本能够在提交事务之前对代码进行识别,例如 3 表示 American Express,4 表示 Visa,5 表示 Mastercard,6 代表Discover。)通常,测试人员需要确认软件能够处理外部服务器返回的所有可能的消息。

    ●错误处理

    最容易被测试人员忽略的地方是接口错误处理。通常我们试图确认系统能够处理所有错误,但却无法预期系统所有可能的错误。尝试在处理过程中中断事务,看看会发生什么情况?订单是否完成?尝试中断用户到服务器的网络连接。尝试中断 web 服务器到信用卡验证服务器的连接。在这些情况下,系统能否正确处理这些错误?是否已对信用卡进行收费?如果用户自己中断事务处理,在订单已保存而用户没有返回网站确认的时候,需要由客户代表致电用户进行订单确认。

    4 可用性测试

    可用性/易用性方面目前我们只能采用手工测试的方法进行评判,而且缺乏一个很好的评判基准进行,此一方面需要大家共同讨论。

    ●导航测试

    导航描述了用户在一个页面内操作的方式,在不同的用户接口控制之间,例如按钮、对话框、列表和窗口等;或在不同的连接页面之间。通过考虑下列问题,可以决定一个Web应用系统是否易于导航:导航是否直观?Web系统的主要部分是否可通过主页存取?Web系统是否需要站点地图、搜索引擎或其他的导航帮助?

    在一个页面上放太多的信息往往起到与预期相反的效果。Web应用系统的用户趋向于目的驱动,很快地扫描一个Web应用系统,看是否有满足自己需要的信息,如果没有,就会很快地离开。很少有用户愿意花时间去熟悉Web应用系统的结构,因此,Web应用系统导航帮助要尽可能地准确。

    导航的另一个重要方面是Web应用系统的页面结构、导航、菜单、连接的风格是否一致。确保用户凭直觉就知道Web应用系统里面是否还有内容,内容在什么地方。

    Web应用系统的层次一旦决定,就要着手测试用户导航功能,让最终用户参与这种测试,效果将更加明显。

    ●图形测试

    在Web应用系统中,适当的图片和动画既能起到广告宣传的作用,又能起到美化页面的功能。一个Web应用系统的图形可以包括图片、动画、边框、颜色、字体、背景、按钮等。图形测试的内容有:

    (1)要确保图形有明确的用途,图片或动画不要胡乱地堆在一起,以免浪费传输时间。Web应用系统的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面。

    (2)验证所有页面字体的风格是否一致。

    (3)背景颜色应该与字体颜色和前景颜色相搭配。

    (4)图片的大小和质量也是一个很重要的因素,一般采用JPG或GIF压缩。

    ●内容测试

    内容测试用来检验Web应用系统提供信息的正确性、准确性和相关性。

    信息的正确性是指信息是可靠的还是误传的。例如,在商品价格列表中,错误的价格可能引起财政问题甚至导致法律纠纷;信息的准确性是指是否有语法或拼写错误。这种测试通常使用一些文字处理软件来进行,例如使用Microsoft Word的“拼音与语法检查”功能;信息的相关性是指是否在当前页面可以找到与当前浏览信息相关的信息列表或入口,也就是一般Web站点中的所谓“相关文章列表”。

    ●整体界面测试

    整体界面是指整个Web应用系统的页面结构设计,是给用户的一个整体感。例如:当用户浏览Web应用系统时是否感到舒适,是否凭直觉就知道要找的信息在什么地方?整个Web应用系统的设计风格是否一致?

    对整体界面的测试过程,其实是一个对最终用户进行调查的过程。一般Web应用系统采取在主页上做一个调查问卷的形式,来得到最终用户的反馈信息。

    对所有的可用性测试来说,都需要有外部人员(与Web应用系统开发没有联系或联系很少的人员)的参与,最好是最终用户的参与。

    5 兼容性测试

    需要验证应用程序可以在用户使用的机器上运行。如果您用户是全球范围的,需要测试各种操作系统、浏览器、视频设置和 modem 速度。最后,还要尝试各种设置的组合。

    ●平台测试

    市场上有很多不同的操作系统类型,最常见的有Windows、Unix、Macintosh、Linux等。Web应用系统的最终用户究竟使用哪一种操作系统,取决于用户系统的配置。这样,就可能会发生兼容性问题,同一个应用可能在某些操作系统下能正常运行,但在另外的操作系统下可能会运行失败。

    因此,在Web系统发布之前,需要在各种操作系统下对Web系统进行兼容性测试。

    ●浏览器测试

    浏览器是Web客户端最核心的构件,来自不同厂商的浏览器对Java,、JavaScript、 ActiveX、 plug-ins或不同的HTML规格有不同的支持。例如,ActiveX是Microsoft的产品,是为Internet Explorer而设计的,JavaScript是Netscape的产品,Java是Sun的产品等等。另外,框架和层次结构风格在不同的浏览器中也有不同的显示,甚至根本不显示。不同的浏览器对安全性和Java的设置也不一样。

    测试浏览器兼容性的一个方法是创建一个兼容性矩阵。在这个矩阵中,测试不同厂商、不同版本的浏览器对某些构件和设置的适应性。

    采用测试工具:

    通过白盒测试或者黑盒测试导出的测试用例,采用相应的工具进行测试,可以采用OpenSTA进行测试,此测试工具可以采用不同的浏览器进行测试。

    ●视频测试

    页面版式在 640x400、600x800 或 1024x768 的分辨率模式下是否显示正常? 字体是否太小以至于无法浏览? 或者是太大? 文本和图片是否对齐?

    ●Modem/连接速率测试

    是否有这种情况,用户使用 28.8 modem下载一个页面需要 10 分钟,但测试人员在测试的时候使用的是 T1 专线? 用户在下载文章或演示的时候,可能会等待比较长的时间,但却不会耐心等待首页的出现。最后,需要确认图片不会太大。

    ●打印机测试

    用户可能会将网页打印下来。因此网页在设计的时候要考虑到打印问题,注意节约纸张和油墨。有不少用户喜欢阅读而不是盯着屏幕,因此需要验证网页打印是否正常。有时在屏幕上显示的图片和文本的对齐方式可能与打印出来的东西不一样。测试人员至少需要验证订单确认页面打印是正常的。

    ●组合测试

    最后需要进行组合测试。600x800 的分辨率在 MAC 机上可能不错,但是在 IBM 兼容机上却很难看。在 IBM 机器上使用 Netscape 能正常显示,但却无法使用 Lynx 来浏览。如果是内部使用的 web 站点,测试可能会轻松一些。如果公司指定使用某个类型的浏览器,那么只需在该浏览器上进行测试。如果所有的人都使用 T1 专线,可能不需要测试下载施加。(但需要注意的是,可能会有员工从家里拨号进入系统) 有些内部应用程序,开发部门可能在系统需求中声明不支持某些系统而只支持一些那些已设置的系统。但是,理想的情况是,系统能在所有机器上运行,这样就不会限制将来的发展和变动。

    6 安全测试

    Web应用系统的安全性测试区域主要有:

    ●目录设置

    Web 安全的第一步就是正确设置目录。每个目录下应该有 index.html 或 main.html 页面,这样就不会显示该目录下的所有内容。如果没有执行这条规则。那么选中一幅图片,单击鼠标右键,找到该图片所在的路径“…com/objects/images”。然后在浏览器地址栏中手工输入该路径,发现该站点所有图片的列表。这可能没什么关系。但是进入下一级目录 “…com/objects” ,点击 jackpot。在该目录下有很多资料,其中有些都是已过期页面。如果该公司每个月都要更改产品价格信息,并且保存过期页面。那么只要翻看了一下这些记录,就可以估计他们的边际利润以及他们为了争取一个合同还有多大的降价空间。如果某个客户在谈判之前查看了这些信息,他们在谈判桌上肯定处于上风。

    ●登录

    现在的Web应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。

    ●Session

    Web应用系统是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用。

    ●日志文件

    为了保证Web应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪。

    ●加密

    当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。

    ●安全漏洞

    服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。

    目前网络安全问题日益重要,特别对于有交互信息的网站及进行电子商务活动的网站尤其重要。目前我们的测试没有涵盖网站的安全性的测试,我们拟定采用工具来测定。

    工具如下

    SAINT------- Security Administrator’s Integrated Network Tool

    此工具能够测出网站系统的相应的安全问题,并且能够给出安全漏洞的解决方案,不过是一些较为常见的漏洞解决方案。

    7 代码合法性测试

    代码合法性测试主要包括2个部分:程序代码合法性检查与显示代码合法性检查。

    ●程序代码合法性检查

    程序代码合法性检查主要标准为《intergrp小组编程规范》,目前采用由SCM管理员进行规范的检查,未来期望能够有相应的工具进行测试。

    ●显示代码合法性检查

    显示代码的合法性检查,主要分为Html、JavaScript、Css代码检查,目前采用HTML代码检查------采用CSE HTML Validator进行测试JavaScript、Css也可以在网上下载相应的测试工具。

    8 文档测试

    ●产品说明书属性检查清单

    1)完整.是否有遗漏和丢失,完全吗?单独使用是否包含全部内容

    2)准确.既定解决方案正确吗?目标明确吗? 有没有错误?

    3)精确、不含糊、清晰.描述是否一清二楚? 还是自说自话?容易看懂和理解吗?

    4)一致.产品功能能描述是否自相矛盾,与其他功能有没有冲突

    5)贴切.描述功能的陈述是否必要?有没有多余信息?功能是否原来的客户要求?

    6)合理.在特定的预算和进度下,以现有人力,物力和资源能否实现?

    7)代码无关.是否坚持定义产品,而不是定义其所信赖的软件设计,架构和代码

    8)可测试性.特性能否测试?测试员建立验证操作的测试程序是否提供足够的信息?

    ●产品说明书用语检查清单

    1)说明。 对问题的描述通常表现为粉饰没有仔细考虑的功能----可归结于前文所述的属性.从产品说明书上找出这样的用语,仔细审视它们在文中是怎样使用的.产品说明书可能会为其掩饰和开脱,也可能含糊其词----无论是哪一种情况都可视为软件缺陷.

    2)总是,每一种,所有,没有,从不.如果看到此类绝对或肯定的,切实认定的叙述,软件测试员就可以着手设计针锋相对的案例.

    3)当然,因此,明显,显然,必然.这些话意图诱使接受假定情况.不要中了圈套.

    4)某些,有时,常常,通常,惯常,经常,大多,几乎.这些话太过模糊.“有时”发生作用的功能无法测试.

    5)等等,诸如此类,依此类推.以这样的词结束的功能清单无法测试.功能清单要绝对或者解释明确,以免让人迷惑,不知如何推论.

    6)良好,迅速,廉价,高效,小,稳定.这些是不确定的说法,不可测试.如果在产品说明书中出现,就必须进一步指明含义.

    7)已处理,已拒绝,已忽略,已消除.这些廉洁可能会隐藏大量需要说明的功能.

    8)如果...那么...(没有否则).找出有“如果...那么...”而缺少配套的“否则”结构的陈述.想一想“如果”没有发生会怎样.

    相关的测试工具

    ·         OpenSTA

    主要做性能测试的负荷及压力测试,使用比较方便,可以编写测试脚本,也可以先行自动生成测试脚本,而后对于应用测试脚本进行测试。

    ·         SAINT

    网站安全性测试,能够对于指定网站进行安全性测试,并可以提供安全问题的解决方案。

    ·         CSE HTML Validator

    一个有用的对于HTML代码进行合法性检查的工具

    ·         Ab(Apache Bench)

    Apache自带的对于性能测试方面的工具,功能不是很多,但是非常实用。

    ·         Crash-me

    Mysql自带的测试数据库性能的工具,能够测试多种数据库的性能

     

    黑盒测试用例设计

    黑盒测试(Black-box Testing,又称为功能测试或数据驱动测试)是把测试对象看作一个黑盒子。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。

    采用黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误推测、因果图和综合策略。

    黑盒测试注重于测试软件的功能性需求,也即黑盒测试使软件工程师派生出执行程序所有功能需求的输入条件。黑盒测试并不是白盒测试的替代品,而是用于辅助白盒测试发现其他类型的错误。

    黑盒测试试图发现以下类型的错误:

    1)功能错误或遗漏;

    2)界面错误;

    3)数据结构或外部数据库访问错误;

    4)性能错误;

    5)初始化和终止错误。

    一、黑盒测试的测试用例设计方法

    · 等价类划分方法

    · 边界值分析方法

    · 错误推测方法

    · 因果图方法

    · 判定表驱动分析方法

    · 正交实验设计方法

    · 功能图分析方法

    等价类划分:

    是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。该方法是一种重要的,常用的黑盒测试用例设计方法。

    1) 划分等价类: 等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试。因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据。取得较好的测试结果。等价类划分可有两种不同的情况:有效等价类和无效等价类。

    有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。

    无效等价类:与有效等价类的定义恰巧相反。

    设计测试用例时,要同时考虑这两种等价类。因为,软件不仅要能接收合理的数据,也要能经受意外的考验。这样的测试才能确保软件具有更高的可靠性。

    2)划分等价类的方法:下面给出六条确定等价类的原则。

    ① 在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。

    ② 在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类。

    ③ 在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。

    ④ 在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。

    ⑤ 在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。

    ⑥ 在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类。

    3)设计测试用例:在确立了等价类后,可建立等价类表,列出所有划分出的等价类:

    输入条件 有效等价类 无效等价类

    然后从划分出的等价类中按以下三个原则设计测试用例:

    ① 为每一个等价类规定一个唯一的编号。

    ② 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步。直到所有的有效等价类都被覆盖为止。

    ③ 设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步。直到所有的无效等价类都被覆盖为止。

    边界值分析法

    边界值分析方法是对等价类划分方法的补充。

    (1)边界值分析方法的考虑:

    长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。

    使用边界值分析方法设计测试用例,首先应确定边界情况。通常输入和输出等价类的边界,就是应着重测试的边界情况。应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。

    (2)基于边界值分析方法选择测试用例的原则:

    1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。

    2)如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据。

    3)根据规格说明的每个输出条件,使用前面的原则1)。

    4)根据规格说明的每个输出条件,应用前面的原则2)。

    5)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。

    6)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。

    7)分析规格说明,找出其它可能的边界条件。

    错误推测法

    错误推测法: 基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法。

    错误推测方法的基本思想: 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。例如, 在单元测试时曾列出的许多在模块中常见的错误。 以前产品测试中曾经发现的错误等, 这些就是经验的总结。 还有, 输入数据和输出数据为0的情况。 输入表格为空格或输入表格只有一行。 这些都是容易发生错误的情况。 可选择这些情况下的例子作为测试用例。

    因果图方法

    前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系, 相互组合等。考虑输入条件之间的相互组合,可能会产生一些新的情况。 但要检查输入条件的组合不是一件容易的事情, 即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。 这就需要利用因果图(逻辑模型)。

    因果图方法最终生成的就是判定表。 它适合于检查程序输入条件的各种组合情况。

    利用因果图生成测试用例的基本步骤:

    (1) 分析软件规格说明描述中, 那些是原因(即输入条件或输入条件的等价类),那些是结果(即输出条件),并给每个原因和结果赋予一个标识符。

    (2) 分析软件规格说明描述中的语义。找出原因与结果之间,原因与原因之间对应的关系。 根据这些关系,画出因果图。

    (3) 由于语法或环境限制, 有些原因与原因之间,原因与结果之间的组合情况不不可能出现。为表明这些特殊情况, 在因果图上用一些记号表明约束或限制条件。

    (4) 把因果图转换为判定表。

    (5) 把判定表的每一列拿出来作为依据,设计测试用例。

    从因果图生成的测试用例(局部,组合关系下的)包括了所有输入数据的取TRUE与取FALSE的情况,构成的测试用例数目达到最少,且测试用例数目随输入数据数目的增加而线性地增加。

    前面因果图方法中已经用到了判定表。判定表(DECision Table)是分析和表达多逻辑条件下执行不同操作的情况下的工具。在程序设计发展的初期,判定表就已被当作编写程序的辅助工具了。由于它可以把复杂的逻辑关系和多种条件组合的情况表达得既具体又明确。

    判定表驱动分析方法

    判定表通常由四个部分组成。

    条件桩(ConDItion STub):列出了问题得所有条件。通常认为列出得条件的次序无关紧要。

    动作桩(Action Stub):列出了问题规定可能采取的操作。这些操作的排列顺序没有约束。

    条件项(Condition Entry):列出针对它左列条件的取值。在所有可能情况下的真假值。

    动作项(Action Entry):列出在条件项的各种取值情况下应该采取的动作。

    规则:任何一个条件组合的特定取值及其相应要执行的操作。在判定表中贯穿条件项和动作项的一列就是一条规则。显然,判定表中列出多少组条件取值,也就有多少条规则,既条件项和动作项有多少列。

    判定表的建立步骤:(根据软件规格说明)

    ① 确定规则的个数。假如有n个条件。每个条件有两个取值(0,1),故有种规则。

    ② 列出所有的条件桩和动作桩。

    ③ 填入条件项。

    ④ 填入动作项。等到初始判定表。

    ⑤ 简化、合并相似规则(相同动作)。

    B.Beizer 指出了适合使用判定表设计测试用例的条件:

    ① 规格说明以判定表形式给出,或很容易转换成判定表。

    ② 条件的排列顺序不会也不影响执行哪些操作。

    ③ 规则的排列顺序不会也不影响执行哪些操作。

    ④ 每当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。

    ⑤ 如果某一规则得到满足要执行多个操作,这些操作的执行顺序无关紧要。

    黑盒测试的优点

    1、基本上不用人管着,如果程序停止运行了一般就是被测试程序CRASh了

    2、设计完测试例之后,下来的工作就是爽了,当然更苦闷的是确定crash原因

    黑盒测试的缺点

    1、结果取决于测试例的设计,测试例的设计部分来势来源于经验,OUSPG的东西很值得借鉴

    2、没有状态转换的概念,目前一些成功的例子基本上都是针对PDU来做的,还做不到针对被测试程序的状态转换来作

    3、就没有状态概念的测试来说,寻找和确定造成程序crash的测试例是个麻烦事情,必须把周围可能的测试例单独确认一遍。而就有状态的测试来说,就更麻烦了,尤其不是一个单独的tEStcase造成的问题。这些在堆的问题中表现的更为突出。

    黑盒测试(功能测试)工具的选择

    那么,如何高效地完成功能测试?选择一款合适的功能测试工具并培训一支高素质的工具使用队伍无疑是至关重要的。尽管现阶段存在少数不采用任何功能测试工具,从事功能测试外包项目的软件服务企业。短期来看,这类企业盈利状况尚可,但长久来看,它们极有可能被自动化程度较高的软件服务企业取代。

    目前,用于功能测试的工具软件有很多,针对不同架构软件的工具也不断推陈出新。这里重点介绍的是其中一个较为典型自动化测试工具,即Mercury公司的WinRunner。

    WinRunner是一种用于检验应用程序能否如期运行的企业级软件功能测试工具。通过自动捕获、检测和模拟用户交互操作,WinRunner能识别出绝大多数软件功能缺陷,从而确保那些跨越了多个功能点和数据库的应用程序在发布时尽量不出现功能性故障。

    WinRunner的特点在于: 与传统的手工测试相比,它能快速、批量地完成功能点测试;能针对相同测试脚本,执行相同的动作,从而消除人工测试所带来的理解上的误差; 此外,它还能重复执行相同动作,测试工作中最枯燥的部分可交由机器完成; 它支持程序风格的测试脚本,一个高素质的测试工程师能借助它完成流程极为复杂的测试,通过使用通配符、宏、条件语句、循环语句等,还能较好地完成测试脚本的重用;它针对于大多数编程语言和Windows技术,提供了较好的集成、支持环境,这对基于Windows平台的应用程序实施功能测试而言带来了极大的便利。

    WinRunner的工作流程大致可以分为以下六个步骤:

    1.识别应用程序的GUI

    在WinRunner中,我们可以使用GUI Spy来识别各种GUI对象,识别后,WinRunner会将其存储到GUI Map File中。它提供两种GUI Map File模式: Global GUI Map File和GUI Map File per Test。其最大区别是后者对每个测试脚本产生一个GUI文件,它能自动建立、存储、加载,推荐初学者选用这种模式。但是,这种模式不易于描述对象的改变,其效率比较低,因此对于一个有经验的测试人员来说前者不失为一种更好的选择,它只产生一个共享的GUI文件,这使得测试脚本更容易维护,且效率更高。

    2.建立测试脚本

    在建立测试脚本时,一般先进行录制,然后在录制形成的脚本中手工加入需要的TSL(与C语言类似的测试脚本语言)。录制脚本有两种模式: Context Sensitive和Analog,选择依据主要在于是否对鼠标轨迹进行模拟,在需要回放时一般选用Analog。在录制过程中这两种模式可以通过F2键相互切换。

    只要看看现代软件的规模和功能点数就可以明白,功能测试早已跨越了单靠手工敲敲键盘、点点鼠标就可以完成的阶段。而性能测试则是控制系统性能的有效手段,在软件的能力验证、能力规划、性能调优、缺陷修复等方面都发挥着重要作用。

    3.对测试脚本除错(debug)

    在WinRunner中有专门一个Debug TOOlbar用于测试脚本除错。可以使用step、pause、breakpoint等来控制和跟踪测试脚本和查看各种变量值。

    4.在新版应用程序执行测试脚本

    当应用程序有新版本发布时,我们会对应用程序的各种功能包括新增功能进行测试,这时当然不可能再来重新录制和编写所有的测试脚本。我们可以使用已有的脚本,批量运行这些测试脚本测试旧的功能点是否正常工作。可以使用一个call命令来加载各测试脚本。还可在call命令中加各种TSL脚本来增加批量能力。

    5.分析测试结果

    分析测试结果在整个测试过程中最重要,通过分析可以发现应用程序的各种功能性缺陷。当运行完某个测试脚本后,会产生一个测试报告,从这个测试报告中我们能发现应用程序的功能性缺陷,能看到实际结果和期望结果之间的差异,以及在测试过程中产生的各类对话框等。

    6.回报缺陷(defect)

    在分析完测试报告后,按照测试流程要回报应用程序的各种缺陷,然后将这些缺陷发给指定人,以便进行修改和维护。

    常用的功能测试方法

    功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。常用的测试方法如下:

    1、页面链接检查:每一个链接是否都有对应的页面,并且页面之间切换正确。

    2、相关性检查:删除/增加一项会不会对其他项产生影响,如果产生影响,这些影响是否都正确。

    3、检查按钮的功能是否正确:如update, cancel, delete, SAve等功能是否正确。

    4、字符串长度检查: 输入超出需求所说明的字符串长度的内容,看系统是否检查字符串长度,会不会出错。

    5、字符类型检查: 在应该输入指定类型的内容的地方输入其他类型的内容(如在应该输入整型的地方输入其他字符类型),看系统是否检查字符类型,会否报错。

    6、标点符号检查: 输入内容包括各种标点符号,特别是空格,各种引号,回车键。看系统处理是否正确。

    7、中文字符处理: 在可以输入中文的系统输入中文,看会否出现乱码或出错。

    8、检查带出信息的完整性: 在查看信息和update信息时,查看所填写的信息是不是全部带出。,带出信息和添加的是否一致

    9、信息重复: 在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理。

    10、检查删除功能:在一些可以一次删除多个信息的地方,不选择任何信息,按”delete”,看系统如何处理,会否出错;然后选择一个和多个信息,进行删除,看是否正确处理。

    11、检查添加和修改是否一致: 检查添加和修改信息的要求是否一致,例如添加要求必填的项,修改也应该必填;添加规定为整型的项,修改也必须为整型。

    12、检查修改重名:修改时把不能重名的项改为已存在的内容,看会否处理,报错。同时,也要注意,会不会报和自己重名的错。

    13、重复提交表单:一条已经成功提交的纪录,back后再提交,看看系统是否做了处理。

    14、检查多次使用back键的情况: 在有back的地方,back,回到原来页面,再back,重复多次,看会否出错。

    15、search检查:在有search功能的地方输入系统存在和不存在的内容,看search结果是否正确。如果可以输入多个search条件,可以同时添加合理和不合理的条件,看系统处理是否正确。

    16、输入信息位置: 注意在光标停留的地方输入信息时,光标和所输入的信息会否跳到别的地方。

    17、上传下载文件检查:上传下载文件的功能是否实现,上传文件是否能打开。对上传文件的格式有何规定,系统是否有解释信息,并检查系统是否能够做到。

    18、必填项检查:应该填写的项没有填写时系统是否都做了处理,对必填项是否有提示信息,如在必填项前加*

    19、快捷键检查:是否支持常用快捷键,如Ctrl+C Ctrl+V Backspace等,对一些不允许输入信息的字段,如选人,选日期对快捷方式是否也做了限制。

    20、回车键检查: 在输入结束后直接按回车键,看系统处理如何,会否报错。

     

    Web测试中的界面测试用例设计

    一、文本框、按钮等控件测试

      1、文本框的测试

      如何对文本框进行测试:

      a、输入正常的字母或数字;

      b、输入已存在的文件的名称;

      c、输入超长字符。例如在“名称”框中输入超过允许边界个数的字符,假设最多255个字符,尝试输入256个字符,检查程序能否正确处理;

      d、输入默认值,空白,空格;

      e、若只允许输入字母,尝试输入数字;反之,尝试输入字母;

      f、利用复制,粘贴等操作强制输入程序不允许的输入数据;

      g、输入特殊字符集,例如,NUL及\n等;

      h、输入超过文本框长度的字符或文本,检查所输入的内容是否正常显示;

      i、输入不符合格式的数据,检查程序是否正常校验,如程序要求输入年月日格式为yy/mm/dd,实际输入yyyy/mm/dd,程序应该给出错误提示。

      在测试过程中所用到的测试方法:

      a、输入非法数据;

      b、输入默认值;

      c、输入特殊字符集;

      d、输入使缓冲区溢出的数据;

      e、输入相同的文件名;

      2、命令按钮控件的测试

      测试方法:

      a、点击按钮正确响应操作。如单击确定,正确执行操作;单击取消,退出窗口;

      b、对非法的输入或操作给出足够的提示说明,如输入月工作天数为32时,单击“确定”后系统应提示:天数不能大于31;

      c、对可能造成数据无法恢复的操作必须给出确认信息,给用户放弃选择的机会;

      3、单选按钮控件的测试

      测试方法:

      a、一组单选按钮不能同时选中,只能选中一个;

      b、逐一执行每个单选按钮的功能。分别选择了“男”、“女”后,保存到数据库的数据应该相应的分别为“男”、“女”;

      c、一组执行同一功能的单选按钮在初始状态时必须有一个被默认选中,不能同时为空。

      4、up-down控件文本框的测试

      测试方法:

      a、直接输入数字或用上下箭头控制,如在“数目”中直接输入10,或者单击向上的箭头,使数目变为10;

      b、利用上下箭头控制数字的自动循环,如当最多数字为253时,单击向上箭头,数目自动变为1;反之亦适用;

      c、直接输入超边界值,系统应该提示重新输入;

      d、输入默认值,空白。如“插入”数目为默认值,点击“确定”;或删除默认值,使内容为空,单击“确定”进行测试;

      e、输入字符。此时系统应提示输入有误。

      5、组合列表框的测试

      测试方法:

      a、条目内容正确,其详细条目内容可以根据需求说明确定;

      b、逐一执行列表框中每个条目的功能;

      c、检查能否向组合列表框输入数据。

      6、复选框的测试

      测试方法:

      a、多个复选框可以被同时选中;

      b、多个复选框可以被部分选中;

      c、多个复选框可以都不被选中;

      d、逐一执行每个复选框的功能。

      7、列表框控件的测试

      测试方法:

      a、条目内容正确:同组合列表框类似,根据需求说明书确定列表的各项内容正确,没有丢失或错误;

      b、列表框的内容较多时要使用滚动条;

      c、列表框允许多选时,要分别检查shift选中条目,按ctrl选中条目和直接用鼠标选中多项条目的情况;

      8、滚动条控件的测试

      要注意一下几点:

      a、滚动条的长度根据显示信息的长度或宽度及时变换,这样有利于用户了解显示信息的位置和百分比,如word中浏览100页文档,浏览到50页时,滚动条位置应处于中间;

      b、拖动滚动条,检查屏幕刷新情况,并查看是否有乱码;

      c、单击滚动条;

      d、用滚轮控制滚动条;

      e、滚动条的上下按钮。

      9、各种控件在窗体中混和使用时的测试

      a、控件间的相互作用;

      b、tab键的顺序,一般是从上到下,从左到右;

      c、热键的使用,逐一测试;

      d、enter键和esc键的使用。

      在测试中,应遵循由简入繁的原则,先进行单个控件功能的测试,确保实现无误后,再进行多个控件的的功能组合的测试。

      ps:密码输入框测试时要特别注意进行字母大写输入的测试。

    二、查找替换操作

      案例演示:打开word中的“替换”对话框。

      测试本功能有通过测试和失败测试两种情况:

      通过测试:

      a、输入内容直接查找、或查找全部;

      b、在组合框中寻找已经查找过的内容、再次查找并确认文档的内容正确,如已经查找过“测试用例”、再次进入不用重新输入查找内容、直接在文档中搜寻就可以。

      失败测试:

      a、输入过长或过短的查询字符串。如假设查询的字符串长度为1到255,那么,输入0、1、2、256、255和254进行测试;

      b、输入特殊字符集。如在word中^g代表图片、^代表分栏符、可以输入这类特殊字符测试;替换测试大体相同。

      关于编辑操作窗口的功能测试的用例:

      a、关闭查找替换窗口。不执行任何操作、直接退出;

      b、附件和选项测试。假如设定“精确搜寻”、“向后”搜索等附件选项等等来测试;

      c、控件间的相互作用。如搜寻内容为空时、按钮“搜寻全部”、“搜寻”、“全部替换”、“替换”都为灰色。

      d、热键、Tab键。回车键的使用。

      插入操作

      1、插入文件

      测试的情况:

      a、插入文件;

      b、插入图像;

      c、在文档中插入文档本身;

      d、移除插入的源文件;

      e、更换插入的源文件的内容。

      2、链接文件

      测试方法:

      a、插入链接文件;

      b、在文档中链接文档本身;

      c、移除插入的源文件:

      d、更换插入的源文件的内容。

      3、插入对象

      要测试的内容:

      a、插入程序允许的对象、如在word中插入excel工作表;

      b、修改所插入对象的内容。插入的对象仍能正确显示;

      c、卸载生成插入对象的程序、如在word中插入excel工作表后卸载excel、工作表仍正常使用。

      编辑操作

      编辑操作包括剪切、复制、粘贴操作。

      测试剪切操作的方法

      a、对文本、文本框、图文框进行剪切;

      b、剪切图像;

      c、文本图像混合剪切。

      复制操作方法与剪切类似。

      测试时,主要是对粘贴操作的测试方法是:

      a、粘贴剪切的文本、文本框及图文框;

      b、粘贴所剪切的图像;

      c、剪切后,在不同的程序中粘贴;

      d、多次粘贴同一内容,如剪切后,在程序中连续粘贴3次;

      e、利用粘贴操作强制输入程序所不允许输入的数据。

    三、界面测试用例的设计方法

      1、窗体

      测试窗体的方法:

      a、窗体大小,大小要合适,控件布局合理;

      b、移动窗体。快速或慢速移动窗体,背景及窗体本身刷新必须正确;

      c、缩放窗体,窗体上的控件应随窗体的大小变化而变化;

      d、显示分辨率。必须在不同的分辨率的情况下测试程序的显示是否正常。

      进行测试时还要注意状态栏是否显示正确,工具栏的图标执行操作是否有效,是否与菜单懒中图标显示一致;错误信息内容是否正确、无错别字且明确等等。

      2、控件

      测试方法:

      a、窗体或控件的字体和大小要一致;

      b、注意全角、半角混合;

      c、无中英文混合。

      四、菜单

      进行测试时要注意:

      a、选择菜单是否可以正常工作、并与实际执行内容一致;

      b、是否有错别字;

      c、快捷键是否重复;

      d、热键是否重复;

      e、快捷键与热键操作是否有效;

      f、是否存在中英文混合;

      g、菜单要与语境相关、如、不同权限的用户登陆一个应用程序、不同级别的用户可以看到不同级别的菜单并使用不同级别的功能;

      h、鼠标右键快捷菜单。

      特殊属性

      a、安装界面应有公司介绍或产品介绍、有公司的图标;

      b、主界面及大多数界面最好有公司图标;

      c、选择“帮助”->“关于”命令、应看见相关版权和产品信息。

     

    代替测试用例的检查表

    2004年底在大连出差的时候,帮一个项目做测试,顺便写下这个检查表,这个检查表对测试的初学者积累经验比较有用,实际对于有经验的测试人员尤其对于测试业务管理信息系统,基本上大量的测试不需要再编写测试用例,当然对业务流程、复杂逻辑还是要设计详细的测试用例的。如果你测试的系统是有大量人机交互的业务管理信息系统,而且你又比较懒惰,那就可以使用这个检查表检查了。

    因此我总结了这类系统中常用的测试的检查项,供当时项目组的测试人员使用,现在再次整理出来发于博客。

    1 针对测试组长或测试经理

    1.1测试管理工作检查表:

    1. 检查每轮测试开始时测试环境是否准备好(包括软件硬件、测试基本数据等);

    2. 确保测试环境(数据和程序)与开发分离,除了测试组之外其他人不能更新测试环境的数据和程序;

    3. 每轮测试根据上一轮的情况和总体测试计划做分工调整;

    4. 检查case库的填报情况,抽查执行过的case;

    5. 检查BUG提交情况,抽查提交的BUG是否规范;

    6. 每天晚上统计BUG情况,填写每天的BUG报告;

    7. 根据每天的测试情况,决定是否开发组要发布新的BUILD;

    8. 每轮测试结束后填写测试总结。

    2  下面是针对测试执行人员的:

    2.1输入、编辑功能的验证检查点:

    1. 必输项是否有红星标记,如果不输入提示是否跟相应的Label对应,提示的顺序是否跟Form输入域的排列次序一致;

    2. 输入的特殊字符是否能正确处理:`~!@#$%^&*()_+-={}[]|\:;”’<>,./?;

    展开全文
  • 1.信息检索技术与方法 2.信息检索系统结构和功能模块 3.信息组织(信息采集,信息描述,信息标引,信息存储) 有点像知识点,事实上就是知识点,能举例的已经举例了,我尽力了。。 (会有粉丝吗呜呜呜
  • 三星i9305水货手机鉴别方法

    千次阅读 2013-01-23 17:53:59
    下面给机友们说一下简单的鉴别方法。 三星i9305支持国外4G网络,2GRAM后盖有LTE的4g网络标识,韩版的i9300多一个天线后盖有韩国运营商的标识和LTE标识,韩国底包有韩文的输入法。我们检验i9305,首先设置-关于...
  • 2007-06-27 02:40 PE病毒常见的感染其它文件的方法是在文件中添加一个新节,然后往该节中添加病毒代码和病毒执行后返回HOST程序的代码,并修改文件头中代码开始执行位置(Address Of EntryPoint)指向新添加的病毒节...
  • 欢迎关注微信公众号:AIPuFuBio,和使用各种生物信息学资源和工具AIPuFu:www.aipufu.com。 【基因融合的定义】 基因融合(gene fusion)是指由于某种机制(如基因组变异)使得两个不同基因的部分序列或全部序列...
  • 生物信息学: 导论与方法 | 总结笔记

    千次阅读 2016-07-25 16:35:00
    课程链接:生物信息学: 导论与方法 1 导论与历史 1.1 1-1 什么是生物信息学 1.2 1-2 生物信息学历史 1.3 1-3 中国大陆的生物信息学 2 序列比对 2.1 2-1 序列比对中的基本概念 2.2 2-2 利用动态规划进行全局比对 2.3 ...
  • 信息系统安全等级保护基本要求——技术要求   一、技术要求: 标记说明:保护数据在存储、传输、处理过程中不被泄漏、破坏和免受未授权的修改的信息安全类要求(简记为S);保护系统连续正常的运行,免受对系统的...
  • 图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域必然涉及到人类生活和工作的方方面面。随着人类活动范围的不断扩大,图像处理的应用领域也将随之不断扩大。(1)航天和航空技术方面的应用 数字...
  • 第一章 信息安全的基本元素

    千次阅读 2008-02-07 16:19:00
    1.1 信息与网络安全 Internet的设计初衷是开放的,没有考虑更多的安全问题。当前Internet用户面临的一个问题就是,如何在授权用户的同时,保护敏感信息。 1.1.1 安全是什么 目前计算机信息系统安全性的定义还没有...
  • 标记说明:保护数据在存储、传输、处理过程中不被泄漏、破坏和免受未授权的修改的信息安全类要求(简记为S);保护系统连续正常的运行,免受对系统的未授权修改、破坏而导致系统不可用的服务保证类要求(简记为A);...
  • 就是介于133平台和imsi之间的一个必要识别步骤,他需要在极短的时间内对个人手机的用户信息(当然不是你叫什么之类的数据了),包括所属地区代码,是否漫游状态等等进行识别,顾名思义,鉴权就是鉴别权利。...
  • 开放式Web应用程序安全项目(OWASP,Open Web Application Security Project)是一个组织,它提供有关计算机和互联网应用程序的公正、实际、有成本效益的信息。其目的是协助个人、企业和机构来发现和使用可信赖软件...
  • 身份鉴别

    千次阅读 2020-07-07 21:01:47
    1.身份验证 1)实体所知 身份鉴别最广泛的方法是实体所知,因为其成本低,实现简单:密码、...数字认证是身份鉴别的一种方式,数字认证是指在互联网通讯中标志通讯各方身份信息的一个数字认证,人们可以网上用它来识
  • 信息系统开发中用户需求调研分析方法例解 陈书勤结构化生命周期法是最常用的管理信息系统开发方法,分为四个步骤,即系统调研分析、数据库设计实现、界面设计实现和系统功能设计实现。其中系统调研分析阶段是最基础...
  • 密码学基本概念

    2020-03-12 17:33:41
    鉴别性,接收者能够鉴别信息的来源。 完整性,信息没有被非法修改。 抗抵赖性,生产信息的人不能事后否认生产。 机密性和真实性的解决方法:加密 核心概念 明文:可供接收方和发送方的用户都能读懂的。 密文...
  • 开始验证: 方法1:编辑短信“RW#进网许可证号#扰码#手机串号”发送至9500即可,如接发送RW得到帮助信息。注意:进网许可中的“-”分割号不能忘记,可以用“A”或“a”代替。 方法2:打电话010-82058767、82050313...
  • 【解决办法】:如果刷机包的版本符合手机的版本,基本可以断定是字库问题,目前除了更换字库以外貌似没有更好的解决方法! 【2004 错误】 数据线连接电脑时出现的问题 【解决办法】:建议更换其他的...
  • 全国计算机信息安全技术

    千次阅读 2019-06-11 21:31:45
    考试大纲  基本要求  1. 了解信息安全保障工作的总体... 掌握信息安全设备的安装、配置和使用的基本方法  5. 了解信息系统安全设施部署与管理基本技术  6. 了解信息安全风险评估和等级保护原理与方法  7....
  • 以确定事物间的共同 点和差异点的逻辑方法事物间的差异性和同 性是进行比较的客观基础,完全相同或完全 不同的事物均无法进行比较 比较是人类认识客观事物揭示客观事物发展 变化规律的一种基本方法有比较才能有鉴别 ...
  • 信息安全五大特性

    千次阅读 2021-02-27 18:47:11
    数据完整性保护有两种基本方法:一是访问控制方法,限制非授权实体修改被保护的数据;二是损坏-检测方法,这种方法无法避免数据损坏,但能确保这些损坏能够被检测出来,并能够被纠正或报警。一般通过消息鉴别码 ...
  • c) 应对信息分类与标识方法作出规定,并对信息的使用、传输和存储等进行规范化管理。     8.1.10.3 介质管理(G3) a) 应确保介质存放在安全的环境中,对各类介质进行控制和保护,实行存储...
  • 信息技术基础学习内容与目标...选择适当的方法获取信息 掌握网络信息检索的几种主要策略与技巧 能够合法地获取网上信息 掌握信息价值判断的基本方法 学会鉴别与评价信息 能够根据任务需求熟练使用文字处理图表处理等工
  • 密码学基本介绍

    万次阅读 多人点赞 2016-03-04 20:20:23
    【密码学02】密码系统原理及数学背景上一篇文章【密码学】四大主题简单介绍 一文提到要实现信息传输的保密性、完整性,以及身份鉴别和抗抵赖,使用的技术手段有:1) 密码技术(加密与解密)。2) 哈希技术,即散列...
  • android基本

    千次阅读 2017-05-16 17:40:55
    这几天一直在看Android一些基本知识,都比较零散,先各个知识点分析记录总结着,等日后整理成各个模块。也为自己以后面试做准备吧,未完待续。 一、 Android四大组件 1. Application相关 1.1 Application...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 32,821
精华内容 13,128
关键字:

信息鉴别的基本方法