网上新闻发布系统论文.doc

上传人:文库蛋蛋多 文档编号:3991281 上传时间:2023-03-30 格式:DOC 页数:33 大小:522KB
返回 下载 相关 举报
网上新闻发布系统论文.doc_第1页
第1页 / 共33页
网上新闻发布系统论文.doc_第2页
第2页 / 共33页
网上新闻发布系统论文.doc_第3页
第3页 / 共33页
网上新闻发布系统论文.doc_第4页
第4页 / 共33页
网上新闻发布系统论文.doc_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《网上新闻发布系统论文.doc》由会员分享,可在线阅读,更多相关《网上新闻发布系统论文.doc(33页珍藏版)》请在三一办公上搜索。

1、网上新闻发布系统论文目 录1 引言22 系统分析32.1 功能需求分析32.2 本系统采用的关键技术42.2.1 JSP技术42.2.2 JavaBean技术42.2.3 JDBC技术52.2.4 用JDBC访问数据库62.3 可行性分析92.4 系统运行环境93 系统概要设计113.1 总体功能113.2 E-R图134 系统详细设计144.1 后台数据库设计144.1.1 SQL SERVER 介绍144.1.2 数据库表结构154.2 处理流程设计174.2.1 系统操作流程174.2.2 数据增加流程184.2.3 数据修改流程184.3.4 数据删除流程194.3 系统模块设计204

2、.3.1 管理员登陆204.3.2 新闻管理225 系统调试与测试265.1 程序调试265.2 程序的测试265.2.1 测试的重要性及目的265.2.2 测试的步骤285.2.3 测试的主要内容286 结论306.1 系统评价306.2 安全性问题30致谢32参考文献331 引言近年来,Internet技术得到迅速的发展,已经成为计算机产业的一个技术热点。促成Internet高速发展的因素之一就是Web技术。Web技术的发展使得那些具有交互动态页面、有条理的数据库查询、丰富信息内容的页面成为最吸引人的网页。浏览Web有着执行Windows程序一样的感觉和操作性。随着Internet技术的发

3、展,它已经成为一种操作平台,为用户提供强大的服务,例如网上购物,网上电子商务,社会信息数据库服务等。作为计算机发展最迅速的领域之一的数据库技术,已经形成了一整套独有的理论,并广泛地应用于人们的生产和生活中。数据库技术与网站的结合是当今Web技术的一个热点。有了数据库的支持,可以扩展网页的功能,可以方便地设计出交互式页面,可以构造功能强大的后台管理系统,可以为网站的更新、维护提供极大的方便。因此,作为网络开发者或管理者,数据库知识是必不可少的。在当前社会,信息已成为一种隐型的财富,人们对信息的需求再也不是局限于单纯的电视、报纸等大众途径。随着Internet在中国的发展日新月异,人们在日常生活中

4、也越来越多地使用这项新技术来为自己的工作和生活服务,人们通过网络来获取信息的需求越来越大。基于此种考虑,网络开发者们提出了一种“基于WEB的新闻发布系统”,该系统能够实现在线更新最新新闻、设置新闻分类导航等功能,此外,网站管理员也可在线对后台进行管理,例如新闻的修改、删除等操作,以保证新闻的及时、准确性。2 系统分析2.1 功能需求分析本系统需要具有以下功能:(1)由于一项新的软件在被使用之前,对于使用者来说是陌生和崭新的,所以要求系统具有良好的人机界面。(2)能够实现新闻发布的各项功能,能成功的对用户各种信息进行管理。(3)查询、修改、删除、添加数据方便,数据的稳定性和可靠性好。系统采用B/

5、S模式。整个系统最关键的就是数据库系统,一个强大的数据库可以支持完善一个优秀的软件设计,通过软件系统与数据库系统的连接来实现通过软件界面观察和处理操作数据。业务服务器数据库服务器事务逻辑数据逻辑ClientBrowser表示逻辑Browser表示逻辑JSP网页WWW服务器/业务逻辑服务器JavaBean组件中间件JDBC数据库服务器数据库SQL Server 2000 图3-1 系统模式图系统采用三层结构,在客户端用户通过浏览器完成数据下载与模拟操作,浏览器端的表现逻辑通过JSP网页完成。而系统内部复杂的业务逻辑主要通过JavaBean的组件(Component)实现,JavaBean组件在W

6、WW服务器上运行,通过JSP返回到客户浏览器。通过表现逻辑与业务逻辑的分离,使网页内容简洁,系统的可维护性和可扩充性增强。在服务器端,系统使用JDBC中间件访问数据库,数据库服务器定义了本系统所需要的事务逻辑和数据逻辑。本系统使用JSP技术作为表现手段,服务器采用Tomcat 5.0.3作为JSP引擎,系统业务逻辑由JavaBean 组件完成,使用JDBC 3.0 驱动程序访问数据库。由于系统测试需要成熟的数据库支持,因此系统采用SQL SERVER 2000数据库作为数据库服务器。2.2 本系统采用的关键技术2.2.1 JSP技术JSP是由Sun微系统公司于1999年6月推出的一项技术,是基

7、于JavaServlet以及整个Java体系的Web开发技术,利用这一技术可以建立先进、安全和跨平台的动态网站。JSP技术在多个方面加速了动态Web页面的开发。与微软公司的ASP技术相比,JSP具有如下优点:(1) 开放的技术:JSP技术基于平台和服务器的相互独立,技术支持来自广泛的、专门的、各种工具包,有服务器的组件和数据库产品开发商提供。相比之下,ASP技术主要依赖MICROSOFT支持。(2) 平台和服务器的独立性:JSP编写的代码可运行在任何符合JAVA语法结构的环境中。这样JSP就能够运行在多种WEB服务器上并支持来自多家开发商提供的各种工具包。(3) 开放的开发过程,开放的源码:自

8、1995年以来,SUN用开放过程方法同国际JAVA组织合作开发和修改JAVA技术和规范。(4) JSP标记可扩充性:JSP技术能够为开发者扩展JSP标记,充分利用与XML兼容的标记技术强大的功能,大大减少对脚本语言的依赖。(5)JSP跨平台的可重用性:JSP组件(EJB,JavaBean或定制的JSP标记)都是跨平台可重用的。2.2.2 JavaBean技术JSP作为一个很好的动态网站开发语言得到了越来越广泛的应用,在各类JSP应用程序中,JSP + JavaBean的组合成为了一种事实上最常见的JSP程序的标准. JavaBean是描述Java的软件组件模型,有点类似于Microsoft的C

9、OM组件概念。在Java模型中,通过JavaBean可以无限扩充Java程序的功能,通过JavaBean的组合可以快速的生成新的应用程序。对于程序员来说,最好的一点就是JavaBean可以实现代码的重复利用,另外对于程序的易维护性等等也有很重大的意义。JavaBean通过Java虚拟机(Java Virtual Machine)可以得到正确的执行,具有平台无关性。一个JavaBean有三个部分组成:1) 属性(Property)Bean的属性就是对象的属性,但提供了属性读取和设置的接口支持。例如一个时钟Bean可以有时区和镇铃属性,日历Bean可以有年份和月份属性。每个属性通常遵守简单的方法命

10、名规则。这样可以很方便的找出Bean提供的属性,然后查询属性值或改变属性值,对Bean进行操作。2) 方法(Method)由于Bean本身是Java对象,调用这个对象的方法是与其交互作用的唯一途径。JavaBean严格遵守面向对象的类设计逻辑,不让外界访问其任何实例字段(没有Public字段)。这样,方法调用的是接触Bean的唯一途径。3) 事件(Event)Bean与其他软件组件交流信息的主要方式是发送和接收事件。这与对象之间通过消息通信类似。JavaBean传统的应用在于可视化的领域,如AWT下的应用。自从JSP诞生后,JavaBean更多的应用在非可视化领域,在服务器端应用方面表现出来了

11、越来越强的生命力。利用非可视化JavaBean, 来封装事务逻辑、数据库操作等等,可以很好地实现业务逻辑和前台程序(如JSP)的分离,使得系统具有更好的健壮性和灵活性。2.2.3 JDBC技术JDBC是Java的开发者Sun的JavaSoft公司制定的Java数据库连接JavaDataBaseConnectivity技术的简称,是为各种常用数据库提供无缝联接的技术。JDBC在Web和Internet应用程序中的作用和ODBC在Windows系列平台应用程序中的作用类似。JDBC有一个非常独特的动态连接结构,它使得系统模块化。使用JDBC来完成对数据库的访问包括以下四个主要组件:Java的应用程

12、序、JDBC驱动器管理器、驱动器和数据源。简单地说,JDBC能完成下列三件事: (1)同一个数据库建立连接; (2)向数据库发送SQL语句; (3)处理数据库返回的结果。JDBC是一种可用于执行SQL语句的JavaAPI(ApplicationProgrammingInterface,应用程序设计接口)。它由一些Java语言写的类、界面组成。JDBC给数据库应用开发人员、数据库前台工具开发人员提供了一种标准的应用程序设计接口,使开发人员可以用纯Java语言编写完整的数据库应用程序。 通过使用JDBC,开发人员可以很方便地将SQL语句传送给几乎任何一种数据库。也就是说,开发人员可以不必写一个程序

13、访问Sybase,写另一个程序访问Oracle,再写一个程序访问Microsoft的SQLServer。用JDBC写的程序能够自动地将SQL语句传送给相应的数据库管理系统(DBMS)。不但如此,使用Java编写的应用程序可以在任何支持Java的平台上运行,不必在不同的平台上编写不同的应用。Java和JDBC的结合可以让开发人员在开发数据库应用时真正实现“WriteOnce,RunEverywhere!” Java具有健壮、安全、易用等特性,而且支持自动网上下载,是一种很好的与数据库线连接而使用的编程语言。它所需要的是Java应用如何同各种各样的数据库连接,JDBC正是实现这种连接的关键。 JD

14、BC扩展了Java的能力,如使用Java和JDBCAPI就可以公布一个Web页,页中带有能访问远端数据库的Applet。或者企业可以通过JDBC让全部的职工(他们可以使用不同的操作系统,如Windwos,Machintosh或UNIX)在Intranet上连接到几个全球数据库上,而这几个全球数据库可以是不相同的。2.2.4 用JDBC访问数据库所有的数据库的对象和方法都在java.sql.* 里面,所以首先要import java.sql.*,要想连接数据库,首先要将驱动程序调入。Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);这是JDBC-ODBC 的

15、驱动程序。 要想连接一个指定的数据库,必须创建Connection类的一个实例。 String url = jdbc:odbc:Grocery prices; Connection con = DriverManager.getConnection(url); 注意在此用到的数据库名称是在ODBC设置控制面板中输入的数据资源名。URL语法对于不同类型的数据库会很不一样。 语法是这样的: jdbc:subprotocol:subname 开头都是JDBC,后面是子协议,然后是ODBC名称。 若要使用纯JDBC驱动程序,必须安装第三方软件提供的驱动程序,一般在数据库的官方网站上可以找到这里不做讨论

16、。本系统采用JDBC-ODBC的驱动程序连接数据库,并使用JavaBean组件,有效的避免了代码的重复,具体过程如下:package exam; import java.sql.*; public class ExamBean String strDBDriver=sun.jdbc.odbc.JdbcOdbcDriver;/JDBC-ODBC驱动程序 String strDBUrl=jdbc:odbc:exam; private Connection conn=null; private Statement stmt=null; ResultSet rs=null;/ public ExamB

17、ean() try Class.forName(strDBDriver); /catch(java.lang.ClassNotFoundException e) System.err.println(exam():+e.getMessage(); /public ResultSet executeQuery(String sql) rs=null; try conn=DriverManager.getConnection(strDBDriver);/创建数据库连接对象 stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,Resul

18、tSet.CONCUR_UPDATABLE);/支持数据回滚 rs=stmt.executeQuery(sql); catch(SQLException ex) System.err.println(aq.executeQuery:+ex.getMessage(); return rs; / public void executeUpdate(String sql) stmt=null; try conn=DriverManager.getConnection(strDBDriver); stmt=conn.createStatement(); stmt.executeUpdate(sql);

19、 stmt.close(); catch(SQLException ex) System.err.println(aq.executeQuery:+ex.getMessage(); / public void closeStmt() try stmt.close(); catch(SQLException e) e.printStackTrace(); public void closeConn() try conn.close(); catch(SQLException e) e.printStackTrace(); 2.3 可行性分析首先,技术可行性。本系统仅需要一台装有Office软件的

20、计算机即可,对机器本身没有太高的要求,一般当前学校或个人电脑完全可满足要求。对于软件技术要求,现在的程序设计语言已非常成熟,要运用HTML样式,图形图象制作工具来制作生动活泼的网页及美观的图形文件或动画文件。其次,经济可行性。由于本系统是为学生学习使用的系统,装上该应用软件,即可使用系统,系统成本主要集中在系统软件的开发上,当系统投入运行后可以为学校节约大量的人力,物力。所带来的效益远远大于系统软件的开发成本。在经济上完全可行。第三,操作可行性。界面设计时充分考虑管理人员的习惯,使得操作简单;数据录入迅速、规范、可靠;统计准确;制表灵活;适应力强;容易扩充。2.4 系统运行环境服务起端的最低配

21、置是由建立站点所需要的软件来决定的,在最底配置的情况下,服务器的性能往往不进人意,现在硬件性能已经相当出色,而且价格也很便宜,因此通常应给服务器端配置高性能硬件。本机器的配置如下:处理器:Inter Pentium 41.6Hz或更高。内存:512MB硬件空间:160GB题目主要采用的技术数据库:Microsoft SQL Server 2000。编程语言 JSP服务器:Tomcat5.5,jdk1.6开发环境:WindowsXP3 系统概要设计3.1 总体功能网上新闻发布系统管理员用户会员管理新闻管理新闻分类管理公告管理账号管理在线留言新闻搜索注册会员系统角色:1.游客:可以搜索、浏览新闻,

22、不能评论新闻,可以注册成为会员 2.会员:可以搜索、浏览新闻,评论新闻,可以修改密码等个人信息 3.编辑:对新闻进行编辑、发布,可以添加删除修改新闻 4.管理员:拥有系统最高权限,可以添加删除修改新闻,可以删除用户,可以添加删除编辑前台: 首页:1.新闻分类:(国际 娱乐 体育 等等)新闻分类需要从数据库中动态取出(因为后台中有添加删除修改分类的功能) 可以只显示45个分类,后面加个“更多”链接,来罗列所有分类 2.新闻搜索:(可以选择分类)以新闻标题模糊搜索,有分页功能 3.热点新闻:按新闻点击率高低显示前10条左右的新闻(显示点击率) 4.最新新闻:显示最新添加的新闻(显示日期) 5.公告

23、栏:显示公告信息 6.登录:可选角色有 会员、编辑、管理员,有注册链接按钮,找回密码链接会员可以对新闻进行评论,游客点击评论时提示注册 注册时包含密码提示问题,以便找回密码,注册验证用ajax动态验证,有分页功能, 包含在线文本编辑器 登陆后有欢迎信息:“您好,XXX”后台: 管理员拥有所有权限 新闻分类管理 分类列表(包含删除、修改) 添加分类 新闻管理 新闻列表(包含删除、修改新闻) 添加新闻(支持新闻、图片上传) 查找新闻 (包含删除、修改新闻) 评论管理 公告修改 会员管理 会员列表(包含删除) 查找会员(包含删除) 编辑管理 编辑列表(包含删除、修改) 查找编辑(包含删除、修改) 修

24、改密码会员:修改密码等个人信息系统采用了敏捷开发的思想,结合跨平台的J2EE技术架构,数据库采用了SQL server;使得系统具有易用性、个性化、跨平台等特点;同时又保证数据的安全、稳定、快速和完整;使其运行得高速、安全、稳定。3.2 E-R图密码用户名用户管理信息新闻分类新闻用户管理密码管理4 系统详细设计4.1 后台数据库设计4.1.1 SQL SERVER 介绍SQL Server是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。 SQL Ser

25、ver近年来不断更新版本,1996年,Microsoft 推出了SQL Server 6.5版本;1998年,SQL Server 7.0版本和用户见面;SQL Server 2000是Microsoft公司于2000年推出的版本。 SQL Server 特点:1真正的读者机/服务器体系结构。 2图形化用户界面,使系统管理和数据库管理更加直观、简单。 3丰富的编程接口工具,为用户进行程序设计提供了更大的选择余地。 4SQL Server与Windows NT完全集成,利用了NT的许多功能,如发送和接受消息,管理登录安全性等。SQL Server也可以很好地与Microsoft BackOffi

26、ce产品集成。 5具有很好的伸缩性,可跨越从运行Windows 95/98的膝上型电脑到运行Windows 2000的大型多处理器等多种平台使用。 6对Web技术的支持,使用户能够很容易地将数据库中的数据发布到Web页面上。 7SQL Server提供数据仓库功能,这个功能只在Oracle和其他更昂贵的DBMS中才有。4.1.2 数据库表结构为了满足系统存储数据需要,方便进行插入,更新,统计和查询分析等操作,数据一共设计为两个部分,第一部分为满足插入,更新,删除较多的数据存储。第二部分为满足查询和统计分析。为了方便进行数据库之间的迁移,数据库中不建议采用存储过程,触发器等数据库特征明显的代码,

27、所有表建立,操作SQL均采用标准语句。数据库表结构如下:设计表“admin”列名数据类型长度允许空IdInt4否UsernameNvarchar50否PasswordNvarchar50否CreattimeDatetime8否FlagInt4否IsuseInt 4否LogintimesInt4 否QuanxianNvarchar1000否设计表“news”列名数据类型长度允许空IdInt4否TitleNvarchar150否PicNvarchar150否ContentText16否AddtimeDatetime8否AdderNvarchar50否IfhideInt4否VisitInt4否UpI

28、nt4否设计表“member”列名数据类型长度允许空IdInt4否Usernamenvarchar50否PasswordNvarchar100否TypeNvarchar50否RegtimeDatetime8否IfuseInt4否LogintimesInt4否LasttimeDatetime8否LastipNvarchar50否设计表“guestbook”列名数据类型长度允许空IdInt4否NicknameNvarchar100否PicNvarchar100否EmailNavarre50是QQNvarchar50是WeburlNvarchar100是BlogurlNvarchar100是Expr

29、essionsNvarchar100否ContentNvarchar200否AddtimeDatetime8否4.2 处理流程设计4.2.1 系统操作流程系统登录界面输入操作员及密码系统主界面系统管理错误信息数据库检查密码错误密码正确功能界面功能处理4.2.2 数据增加流程添加信息时,编号字段由系统自动生成,且不能修改,其他信息由用户输入,之后对数据进行合法判断,合法则写入保存至数据库,不合法则重新输入数据。数据增加流程图:开始自动生成编号输入数据是否合法写入数据库结束图3.2 数据增加流程图4.2.3 数据修改流程在修改信息时,先选中一条待修改的记录,然后直接输入数据,判断合法性,合法则保存

30、至数据库,不合法重新输入。数据修改流程图如图3.3所示。开始选择需要修改记录输入数据是否合法写入数据库结束图3.3 数据修改流程图4.3.4 数据删除流程当用户选定一条记录时,单击删除按钮,会提示用户是否确定删除,然后删除数据库相关内容。数据删除流程图如图3.4所示。开始选择需要删除记录是否删除更新数据库图3.4 数据删除流程图4.3 系统模块设计4.3.1 管理员登陆在用户登录界面,在用户名对应的文本框中输入用户名,在密码对应的文本框中输入密码,如果用户名和密码同时与数据库中的用户名和密码相对应,点击“确定”后进入系统的主界面。如果输入的信息不正确,则给出提示。输入:用户名和密码。处理:校检

31、字符的有效性。用户要登录本系统需要提供用户名和密码,在这里就是要检验用户是否满足输入的要求,即检验用户名和密码文本框是否为空,若为空,则提示用户输入用户名和密码。检验用户名是否存在或密码是否正确,即是否存在用户输入的用户名,并且密码是否正确。输出:登录成功,进入用户的系统使用资源页面,不成功则显示错误信息页面。主要代码如下:package util;import java.sql.*;public class DBConn static try Class.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver);/ Class.forName

32、(com.mysql.jdbc.Driver); / Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch(Exception ex) ex.printStackTrace(); public static Connection getConn() try Connection conn=DriverManager.getConnection(jdbc:microsoft:sqlserver:/localhost:1433;databasename=hshygl,sa,123);/ conn = DriverManager.getConnecti

33、on(jdbc:mysql:/localhost/fzshop,root,123);/ Connection conn=DriverManager.getConnection(jdbc:odbc:temp); return conn; catch(Exception ex) ex.printStackTrace(); return null; public static void close(Connection conn,Statement st,ResultSet rs) if(rs!=null) try rs.close(); catch(SQLException ex) if(st!=

34、null) try st.close(); catch(Exception ex) if(conn!=null) try conn.close(); catch(Exception ex) 4.3.2 新闻管理功能描述:此模块要实现对新闻的管理功能,管理员可以添加删除和修改新闻的相关信息。新闻信息管理模块的IPO过程:a)添加新闻信息操作:l点击添加新闻信息按钮,输入需要添加新闻的内容。内容包括新闻的标题、内容、分类。l检验用户输入的新闻的标题、内容、分类是否符合新闻数据库表中字段定义。若不符合则提示输入有误。l提示用户信息添加成功。l更新用户数据库表的信息。b)修改新闻信息l点击修改新闻信息

35、按钮。内容包括新闻的标题、内容、分类。l检验用户输入的新闻的标题、内容、分类是否符合用户数据库表中字段定义。若不符合则提示输入有误。l如果用记录存在,进行修改操作,输入新的字段,并根据用户数据库表中对应字段的定义检查输入是否合法,如果输入有错误则进行提示。l如果输入正确,执行(UPDATE)SQL语句,更新用户数据库表中该用户所对应的记录。l提示用户信息添加成功。l更新用户数据库表的信息。界面如下图所示:主要代码如下:package util;import java.io.UnsupportedEncodingException;import java.text.SimpleDateForma

36、t;import java.util.Date;public class Validate /* * 是否为数字和英文验证 * */public int getIntAndChar(String str)char c;int i;for (i = 0; i=0 & c=a & c=A & c=Z)break;/判断字符是否在某个区间if(i str.length()return -1;elsereturn 0;/* * 是否为整数验证 * */public int getInt(String str)char c;int i;for (i = 0; i=0 & c=9)break;/判断字符是

37、否在某个区间if(i str.length()return -1;elsereturn 0;/* * 是否为非法字符验证 * */public boolean getLawlessChar(String str)boolean flag = false;char c;for(int i = 0;i str.length();i+)c = str.charAt(i);switch(c)case : flag = true; break;case : flag = true; break;case & : flag = true; break;case : flag = true; break;r

38、eturn flag;5 系统调试与测试5.1 程序调试在设计系统的过程中,存在一些错误是必然的。对于语句的语法错误,在程序运行时自动提示,并请求立即纠正,因此,这类错误比较容易发现和纠正。但另一类错误是在程序执行时由于不正确的操作或对某些数据的计算公式的逻辑错误导致的错误结果。这类错误隐蔽性强,有时会出现,有时又不出现,因此,对这一类动态发生的错误的排查是耗时费力的。5.2 程序的测试5.2.1 测试的重要性及目的(1)测试的重要性软件的测试在软件生命周期中占据重要的地位,在传统的瀑布模型中,软件测试学仅处于运行维护阶段之前,是软件产品交付用户使用之前保证软件质量的重要手段。近来,软件工程界

39、趋向于一种新的观点,即认为软件生命周期每一阶段中都应包含测试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。 事实上,对于软件来讲,不论采用什么技术和什么方法,软件中仍然会有错。采用新的语言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝软件中的错误,这些引入的错误需要测试来找出,软件中的错误密度也需要测试来进行估计。测试是所有工程学科的基本组成单元,是软件开发的重要部分。自有程序设计的那天起测试就一直伴随着。统计表明,在典型的软件开发项目中,软件测试工作量往往占软件开发总

40、工作量的40以上。而在软件开发的总成本中,用在测试上的开销要占30到50。如果把维护阶段也考虑在内,讨论整个软件生存期时,测试的成本比例也许会有所降低,但实际上维护工作相当于二次开发,乃至多次开发,其中必定还包含有许多测试工作。 在实践中,软件测试的困难常常使人望而却步或敷衍了事,这是由于对测试仍然存在一些不正确的看法和错误的态度,这包括: 认为测试工作不如设计和编码那样容易取得进展难以给测试人员某种成就感; 以发现软件错误为目标的测试是非建设性的,甚至是破坏性的,测试中发现错位是对责任者工作的一种否定; 测试工作枯燥无味,不能引起人们的兴趣; 测试工作是艰苦而细致的工作; 对自己编写的程序盲目自信,在发现错误后,顾虑别人对自己的开发能力的看法。 这些观点对软件测试工作是极为不利的,必须澄清认识、端正态度,才可能提高软件产品的质量。 (2)测试的目的 如果测试的目的是为了尽可能多地找出错误,那么测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位置。 软件测试是为了发现错误而执行程序的过程; 测试是为了证明程序有错,而不是证明程序无错误; 一个好的测试用例是在于它能发现至今未发现的错误; 一个成功的测试是发现了至今未发现的错误

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号