基于BS的客户管理系统功能测试实践_第1页
基于BS的客户管理系统功能测试实践_第2页
基于BS的客户管理系统功能测试实践_第3页
基于BS的客户管理系统功能测试实践_第4页
基于BS的客户管理系统功能测试实践_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于b/s的客户管理系统功能测试实践1引论1.1编写目的和意义木学年屮有机会去学习软件测试专业知识和实用技能,让我对软件测试有了自己的想法和见解。作 为软件生命周期的一部分,软件测试有着不可替代的地位。随着人类社会的进步,计算机在各个领 域上都得到了广泛的推广和使用,而作为推动计算机发展的汁算机软件也得到了普及,为我们的生 活、学习和工作等带来了前所未有的便利。但是一个软件从需求提出到在计算机等平台上运行,这 个过程中谁也不能保证软件是否满足了人们的耑求,所以就有了软件测试这个行业。我作为一名刚 刚进入软件测试行业的大学生,我想用自己去观点去阐述软件测试这个行业。1.2软件测试定义设计思想和目

2、的在学习软件测试之前,我一直以为软件的产生只需要软件开发人员的参与就行,软件测 试完全是没有用处的鸡肋。但是当我进入这个行业参加工作之后,我发现了软件测试的 重大责任和意义。同时我们12306用户数据泄露含身份证及密码信息、巾国快递1400万信息泄露 等事件,对中国软件行业敲响了齊钟。任何一个软件都是人工开发的,每个人的编程思想都 是不完善,或者说不完全符合客户需求的,这时候就需要测试人员站在软件开发人员和 客户之间进行沟通交流,来保证软件的质量。2软件测试概述2. 1软件测试定义软件测试是指在整个软件开发周期,系统验证和质量检查,以评估是否符合系统需求。在该定 义下,引用如下概念来满足测试工

3、作的需要:(1) 软件测试是对系统和程序可否完成特定的任务建立人们信心的过程,也是帮助开发人员来检 验开发软件的正确性、完全性和质量的软件过程ul。(2) 软件测试是依据系统需求和各开发人员的软件架构来设计出相应的测试用例,并使用测试数 据去运行程序,发现软件中存在的错误。(3) 软件测试目标是尽可能早的发现缺陷31。软件测试的测试过程是先阅读和审查耑求说明文档,并对测试数据的文档进行分析,根据评定情况 确定测试环境的方案,搭建测试环境。然后根据测试数据來执行测试,最后编写相关的测试文档(测 试报告、缺陷报告等)。2. 2软件测试目的为了通过软件测试来发现软件中的不足或者是缺失之处,来考虑软件

4、是否达到可以接受和正常 使用的程度;而开发人员也希望能通过测试来证明自己开发的软件中没有隐患,且己经满足了客户的要求。因此软件测试目的在于尽早发现并修正被测系统屮的缺陷,保证软件的安全性和软件质量 22.3功能测试概述2.3.1功能测试介绍人们普遍认为,软件测试工作是没什么技术可言的,只要是会使用鼠标的人都能进行软件测试, 这是对软件测试工作的一个严重曲解。作为一个计算机学院的同学,大家儿乎普遍对软件测试行业嗤之以鼻,再加大一些范围来讲, 学过编程的人都对软件测试存在一些成见。不过这种现象只在国内发生着。相反在外国,测试行业 已经比较成熟。一般来说,建立软件测试项0的步骤' 如下工作顺

5、序:-i.-kvh測试讣m坏境搭ml«1«投计嶋圬报ft-缺防竹冲-ifi 行,*图1 -1在一个正式的项目屮,测试人员编写测试用例是在需求人员提供的需求文档,或者是开发人员 提供的系统规格说明文档,编写岀高效的测试用例文档。然后通过执行测试数据来验证软件的质量 和发现软件的缺陷,把测试结果编写成文档。对于一个测试人员,另一个重要任务就是跟踪缺陷,一个缺陷往往分为新建、打开、已修复、 己关闭等主要状态,还有就是测试人员对己经修复过的缺陷,重新测试不通过时,缺陷状态将编程 重新打开。对于每一个缺陷来讲,测试人员都要从新建到关闭进行全程跟踪6。2.3.2功能测试工具在当今市场上

6、,所用到的功能测试工具中,主要有商用的qtp和开源的selenium,而qtp在市 场上占据主导地位。qtp,全称为 quick test professional, qtp11. 5 改名为 uft(unified functional testing)是mercury研发的一种自动化工具,后来惠普收购了 mercury包柄qtp工具,主要用于功 能和回归测试。它是通过a动捕获对象放到本地对象库、在回放用户操作时验证被测系统的功能:5。unified functional testing是先进的自动化测试t具,利用关键词驱动测试的方 法来减少功能测试过程中创建和维护工作量。unified f

7、unctional testing既可以方面 技术人员的使用,也可以满足非技术类人的使用需求,让使用者可以部署自己所需求的 高质量应用,而且在部署上实现了速度更快,费用更低,风险更小。uft分为两种工作模式'第一种为关键字视阁模式(keyword view),对于简单的录制和重放操作来讲,利用关 键字视图就可以实现,其中记录了录制过程中每一次点击、输入、选择等操作,并把对 象存入对象库中,录制完成后就可以在关键字视图下通过修改相应的操作方式和数值来 实现模拟实际的操作。第二种为专家视图(expert view),它有两个作用:(1)在专家视图模式卜,每一个录 制中的操作都会对应有脚本,

8、这样我们就可以通过修改脚本信息来控制uft回放过程中 所有事件的执行方式;(2)测试时我们也可以不录制任何脚木,仅通过专家视图模式来编写脚木代码,实现需 要的功能,其至还能够实现录制过程中无法实现的功能,这种方式称为描述性编程,它 最大的特点就是没有关联的对象库,完全通过描述对象属性来区别对象的,使用描述性 编程的优点有: 简化uft脚本的大小,便于转移; 脚本具有更强的可移植性,独立性和复用性7。uft工具使用vb语言编写脚本,它是-种容易上手的开发语言,冏吋它能够让我们 用少量的代码完成很强大的功能。如果我们熟练y描述性编程的方法,我们就可以随心 地开发出所需脚本,然后设置检杳点来判断脚本

9、的执行结果,也可以设置断点,来快速 的发现问题所在,同时在发现问题后也方便维护脚本;由于描述性编程丢弃了本地对象 移植不便的弊端,使脚木在移植上变得方便简洁,强化了脚木的复用性。对于uft工具 而言,其核心代码是visual basic script。如果测试人员熟悉vbscript,就可以通过 在专家字视图下添加或者更改脚本来强化测试脚本。对于认识uft测试工具的人来说19, 都知道uft可以用来录制回放用户操作,uft在录制过程中会把用户操作事件的对象存 储到本地对象库里,这些对象对己经录制的实体有唯一的标识。但遇到一些特殊情况时, 对象库将不能识别对象:(1) 在一些网页上产生动态的对象

10、;(2) 有时候我们需要脚本尽量简洁高效,此时我们就需要使用一些描述性编程的方法,在专家视图上进行脚本开发。以下是一个例子:browser (aaaa). page(bbbb). click采用描述性编程修改上而代码:window ("text:=bbbb).close总的来说,描述性编程就是用原对象区别于其他对象的属性或属性值来唯一标识对 象(如property rvalue)。这样以来,即便删除对象库屮对象,仍然能保证脚本正常 运行。在此我要简短的介绍一下visual basic,简称vb,是微软公司推出的8, 种windows下的应用软件开发语言,也是世界软件行业上使用较广泛的

11、编程语言之一,也 是编程效率较高的一种编程语言。无论是开发功能强大的商务系统,还是开发简洁轻量 的小系统,vb都是较快速、较简便的方法。3客户管理系统概述3.1客户管理系统简介在全球村、企业共赢和以网络为核心的当代,企、ik所面临的最大问题是如何开挖掘潜在客户,如何运用一系列社会资源扩大企业的销售和增强企业的竞争力。在上述背景下,客户关系管理系统 被开发出来,该系统以客户为屮心,实现了市场、销售、跟踪的工作管理平台。通过改善企业与客 户之间关系的方式,来扩大企业的市场销售和增强跟踪技术支持等与客户相关的内容。本系统实现屮小型企业的客户管理需求,能够实现快速有效管理公司客户,巩固企业与客户之 间

12、的关系,监齊企业管理营销的进程,推动企、ik的飞速成长。3.2客户管理系统环境搭建crm系统采用的是b/s系统架构,所以需要先在服务器上部署服务器软件(apache)、数据库软 件(mysql), php运行环境及crm系统源代码,然后我们就可以通过客户端上的浏览器访问系统了。 由于该系统数据量并不大,故可以将apache和mysql部署在同一台服务器上。easyphp是一种将 apache, mysql和php集合而成的软件,所以只安装该软件即可。表2-1 crm系统的软件和硬件要求硬件要求软件要求客户机cpu:主频 300m内存:512m硬盘:20gwindows操作系统chrome/fi

13、refox或ie9以上版本浏览器服务器cpu:双核1g内存:2g硬盘:20g高速windows server 或 linux 操作系统apache 2. 1 (含)以上版本mysql 4. 0(含)以上版本硬盘php 4. 3. 0(含)以上版本3.3客户管理系统功能结构0前,市场有很多种crm系统,本论文选择一款开源crm系统作为测试软件来讲解如何进行 功能测试。该系统采用php开发而成,是一款基于amp的客户管理系统。crm系统能够实现使企 业可以在该系统提供的组件的基础上定制并构建自己的商业流程。依据本次论文的主要fi的在于验 证功能测试在软件测试行业的重要地位,来制定原始需求,依裾此需

14、求,明确c系统的测试范围。 该系统主要包括用户登录、商机管理、日程管理、产品管理、任务管理、系统管理、客户管理、线 索管理和财务管理等功能模块。线索是指对产品/服务有意向的个人或机构:客户是商机的关注对象, 对于每个商机來讲,都必须关联一个客户,但客户不一定会关联一个商机;财务不仅是公司企、ik在 运转过程中的资金动14,更主要的是财产与债务,即资产与负债:商机是企业与客户正在进行的项 目货以及完成的项目,每个商机都必须关联一个项目;日程是关于一天工作前的计划与安排;任务 是上级对下级的要求事件,客户管理系统可以加快企业运转。该crm系统的功能结构图如下图所 示:图2-1随着公司企业的不断发展

15、壮大,客户数14:和公司员工数兑肯定会逐渐增加,对crm的要求也 会越来越高。本次对crm商机管理模块功能进行测试,根据手工测试提交的缺陷报告和uft自动 化测试产生的测试报告,找出商机管理模块存在的缺陷与不足。4功能测试实践4.1测试策略4.1.1测试目标此功能测试只耑要测试个功能点91:(1) crm系统的登录业务、退出业务。(2) 商机管理模块:创建商机、删除商机。登入创建商机> 删除商机> 退出线索模块图3-1(3) 根据功能测试需求设计功能测试用例,尽可能的找出crm系统存在的缺陷,同吋建立一套完 整的测试用例库。(4) 对crm系统常用的、重要的业务采用a动化测试,同时

16、规范脚本开发过程,增强脚本的可重 用性和可维护性。4. 1.2过程和方法本次功能测试以手工为主,自动化为辅,其过程如下:分析测试需求分析测试需求图3-2手工测试过程牛.成测试报生成测试报告图3-3自动化测试过程自动化测试过程屮使用数据驱动的编程思想,使数据与脚木分开,采用结构化的编程思想,将 一些操作独立封装起来。4.2手工测试4. 2.1手工测试概述手工测试,就是依据已覆盖全部需求的测试用例,根据测试用例文裆中所描述的步骤和方式, 手工地输入执行,然后人为观察判断结果,来定位被测软件屮的缺陷与不足。4. 2.2功能测试用例表3h系统登录时的测试数据用例标识测试描述优先级步骤名描述预期结果名称

17、testol1.用 户名 密码 均正 确打开crm系统,输 入用户名和密码;用户名:tested,密 码:111111高stepol输入正确的 用户名和密 码输入成功stepo2点击“登录” 按钮进入系统 界面,界 面元素完 整无漏testo22.用 户名 为 空, 密码 正确打开crm系统,输 入用户名和密码; 用户名:无,密码:111111高stepol不输入用户 名,输入正确 的密码输入成功step()2点击“登录” 按钮提示“请 输入正确 的用户名 和密码”testo33.用 户名 正确,密码为空打开crm系统,输 入用户名和密码;用户名:tested,密 码:无高stepol输入正确

18、的 用户名,不输 入密码输入成功step()2点击“登录” 按钮提示“请 输入正确 的用户名 和密码”test044用户名和密码为空打开crm系统,输 入用户名和密码; 用户名:无,密码: 无高stepol不输入用户 名和密码step02点击“登录” 按钮提示“请 输入正确 的用户名 和密码”testo4用户名不正确,密码打开crm系统,输 入用户名和密码; 用户名:! adb, 密码:111111高stepo 1输入不正确 用户名,正确 密码输入成功正确stepo2点击“登录” 按钮提示“请 输入正确 的用户名 和密码”商机管理模块作为一个功能较强大,设计较复杂的功能模块。因此,它所设计的测

19、试用例将会 比较多,我将在附录文件中给出个人设计的比较全面的测试用例。4.3功能自动化测试4.2. 1功能自动化测试概述功能自动化测试,就是在面对大量的、重复性的测试内容,利用自动化脚本进行测试的方法来 替代手工测试,利用开发自动化脚本来测试程序,控制执行被测软件的方案,完成测试的全过程。 而且自动化测试较多的用于冋归测试时使用,这个时候我们更加耑要做的是对手工测试结果的验证 上。如果我们继续采用手工测试,有时候可能还会是多次的重复性测试,这些将让测试员感觉到身 心疲惫,所以我们大数时间在回归测试时,采用自动化测试的方式完成。4. 2. 2功能自动化测试数据表3-2系统登录时的测试数据用户名密

20、码tester 1min111111tester 1! adbliiiii表3-3商机管理模块创建商机时的测试数据(部分)商机名称预计价格guo11guoguol1guo22guo225测试脚本开发5. 1录制脚本由于在脚本的录制模式上都是采用相同的模式,因此在此对登陆脚本的录制进行描述说明,作 为uft使用方式的操作规范。1. 打开uft自动化脚本开发工具图412. 新建测试项目。在uft主界面的选择菜单中选择“文件|新建|测试”,打开新建测试窗口,选择类 型为“gui测试”,名称可以输入任何字母数字,但是此处我们为了区别不同的脚本,选择“login” 作为名称,如下图所示,然后点击“创建”

21、,则创建login测试成功。名称(n): 位蓋(d:loginc:usersguodesktopcrm 洌试功能 節functionsc n pttest新建测试? x达择类型(d:api 觀si业*斑&询试决万案名称(s):至三j:汉“津転;万套:z1二取消图4-23. 进行录制前的相关设计。打开uft主界面的选择菜单中选择“录制|录制和运行设置”窗口,由 于我们录制的是web系统,所以在web设置录制和会话时打开crm系统的登录网址,并勾选“不 在已经打幵的浏览器上录制运行”与“当测试关闭时关闭浏览器”两个选项,如下图,然后点击“确 定”。图4-34. 开始录制脚本。在uft工具栏

22、中点击“录制”,uft自动打开crm系统的登陆窗口,并开始录 制脚本,输入用户名“testerl”密码“111111”,然后点击“登录”,进入crm系统主界面。正在录制guitestl* actionle 默认,教町9 *筠客户关系管理系统(crm)图445. 为了验证是否成功登录成功,需要插入检查点。为了检查的方而性,我们在此设置一个文木检查 点来检查登录是否成功。在录制过程屮选择“标准检查点”,此时鼠标箭头将变成手形。选中crm 系统页面上的“登陆成功”文本,弹出检查点对象窗口,点击“确定”,这样检查点设置就成功了。每次登录后,都会检查该文本,只有发现该对象,检查才能通过。糙点匡性名称眇

23、类:web bement登录成功类型厘性丨 html tag innertextdiv登录成功配s值登录成功®常量© 参数©datatablef登录成功jnnertexf. dtglobalsheet)确走检查点超时®:|_0 秒取消6. 点击结束录制按钮,结束当前的录制5. 2强化脚本1.对用户名和密码参数化在关键字视图下,点击川户名的值,进入值配置选项窗口,对“参数”來设置,选择“datatable”, 把参数名称改为“username”,数据表选择为“全局表”,同样方式,把登录密码改为"password", 并对密码进行参数设置

24、,如下阁。crm糸统21员工登录hx namesettr password r 登录setclick<username>jtextablerpassword", dtglobalsheet)图4-6图4-7这样我们就能通过对全局表添加数据,还增加登录用户数量了。但是想要登录较多用户,我们 就需要设置脚木执行次数。设置方式为打开“文件i设置”在弹出的窗口屮,选择“运行i在所有行 运行”。这样我们就能实现uft执行所有的参数数据了。当我们设置完后,点击冋放脚本会发现,发现uft回报错误找不到对象了。这是也因力我们没 有打开crm登录页面,所以脚本无法继续执行。但是我们又不能每

25、次都去打开crm页面,这样就不 是自动化测试了。所以,我们需要在脚本中增加自动登录的代码,具体如下:systemutil.run "iexplore.exe", :8089/ciircrm/这样我们就能通过run打开crm系统登录页面。"iexplore.exe"是我们要运行的应用。后面的网址是我们传递给ie浏览器的参数用来登录crm登录页面。2.为脚本添加注释通常在开发中我们会给开发的脚本添加必要的注释来增强脚本的可维护性、可重用性和可读性。 作为自动化测试脚木,可重复利用是它的一种特性,测试人员可根据情况,添加一些注释。添加注 释常用方法有直接在工具栏屮选择“编辑|格式|注释”、右键选择添加注释和直接添加注释符号。6编写测试报告在手工测试和自动化测试所有的工作结束后,我们作为测试人员还需要评估并报告测试结果,同时要编写对应的测试报告。这会是我们测试工作的总结性文档,作为一个公司都会有比较正式的 测试报告模版。测试工程师仅需根据模版编写测试报

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论