网站首页
教育杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
医学杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
经济杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
金融杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
管理杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
科技杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
工业杂志
CSSCI期刊 北大期刊 CSCD期刊 统计源期刊 知网收录期刊 维普收录期刊 万方收录期刊 SCI期刊(美)
SCI杂志
中科院1区 中科院2区 中科院3区 中科院4区
全部期刊
公务员期刊网 精选范文 单元测试方法范文

单元测试方法精选(九篇)

前言:一篇好文章的诞生,需要你不断地搜集资料、整理思路,本站小编为你收集了丰富的单元测试方法主题范文,仅供参考,欢迎阅读并收藏。

单元测试方法

第1篇:单元测试方法范文

关键词:氨氮;在线监测仪;使用;原理;方法

目前,水质监测仪器的发展前景仍处在一个未知的却极其可观的发展趋势当中,在北美等国都陆续设立了一定规模的专业生产企业。水质在线监测系统之所以得到世界各国的青睐,缘于其具有自动转换量程,自动在线监测、并能够完成自动运行、自动校正等对内部数据的管理功能,对测量值与测量时间的实时掌控有着较大的裨益。在日常的使用过程当中,应做好定期维护,了解其使用原理与及方法,保证其正常运行,从而才能保证监测的数据更为准确精密,更好的完成对水质环境的监控管理,下面我们一起来进行详细探讨。

一.对氨氮在线监测仪器的认识

氨氮(NH3-N)在线监测仪器是基于酸碱指示剂的变色原理的应用和分析从而测量和判断所检验的水样当中的NH3-N的浓度,在以往的监测方法之上进行改良,克服了采用电极法仪器的维修率频繁的缺憾,同时也解决了在采用纳氏试剂进行监测之时却同时对水质带来的毒害问题。

一套完整的氨氮(NH3-N)在线监测仪器具体应当具有监测主机(水中NH3-N含量的自动监测的重心)、流量综合仪(包括超声波流量计与巴歇尔流量槽),除此之外还有传输设置(常见的传输设置有PSIN有线网络与及GPRS无线网络两种,主要负责数据的输入与输出)[1]。

近几年来,氨氮(NH3-N)在线检测仪器较以往来看得到极其显著的改善,在进行污染源与水质环境的检测管控等方面都作出了极大的贡献,但是其主要的生产和供应商却都还主要集中在欧美等国家,这也直接导致了我们在进行水质监控时若需要一台具有较高质量保证的氨氮在线检测仪器往往需要从国外购置,这样一来所需耗费的成本和运行费用,这样的问题也是我们在采用氨氮在线检测仪器的最大制约因素。

二、氨氮在线监测仪器的使用原理和方法

氨氮(NH3-N)在线监测仪器是基于计算机技术与实时监控技术的综合应用与结合起来的,实现了对水质监控全程的自动化,在进行化工企业生产过程的污水排放与及城市生活的污水排放的实时监控起到了较明显的作用,获取水体重NH3-N的浓度与污染指数。下面我们首先来一起探讨氨氮(NH3-N)在线监测仪器的使用原理。就目前我国环境监测情况来看,氨氮(NH3-N)在线检测仪器的原理可以归结为氨气敏电法与及纳氏试剂法(也称分光光度法)。

纳氏试剂法与检测水质中铵含量时的测定方法(GB7479-1987)近似,在410-424mm的范围限制内对水样中的氨与碘化钾汞进行反应,所生成的化合物呈现为淡红色胶状,采取此类方法的仪表一般都配备有水样过滤装置,并对其检测期限做了明确的规定:0.1mg/L测定周期1H。

多年来较常采用的方法――氨气敏电法,我们根据其检测原理做了如图示1所示的实验,通过实验我们了解,氨氮监测分为五个过程,即:氨的转化、氨的溢出、氨的扩散、填充液受到氨的影响而发生改变与及PH值电极的监测与其数据的转化这五个过程[2]。

图示1 氨气敏电极检测原理实验

我们知道,通常氨氮以两种以NH3和NH4+这两种主要形式存在于水中,并以一定的量来保证这二者达到平衡,而这个量则取决于水的PH值,水的酸性浓度越大H+则相对较高,转化为NH4+的量也相对较多,我们可将其原理表示为以下两个式子:

注:①为水中NH3和NH4+动态平衡关系式,②式为着二者相对量的平衡常数计算式,Ks为所测定水中氨达到平衡时的常数。

通过实验研究与分析之后我们了解到,要得出水中NH3:NH4+的值,首先应当对水的PH值进行测定,PH值越大,NH3转化为NH4+的量也就越大,并且水温的高低也将对其转化速率产生影响,PH值得变化也是是影响氨的溢出和透过膜的关键因素,然而,在检测时,为了保证仪表稳定,应首先保证缓冲液当中的NaOH与EDTA二钠盐达到足够高的溶度当中,当样品水的表面包含活性剂类的物质时,应首先对水样进行预处理[3]。

三、小结

氨氮在线检查仪器的目前虽然已得到了较为广泛的应用,但从其设备成本投入费用来看仍然是制约其在水质监测当中的普及程度,在通过分光光度法与及氨气敏电极法这两种方法的认识与研究之后,我们进一步对目前进行水质环境污染时所采取的监控技术与设备有了更深入的了解,就目前较为普遍的氨气敏电极监测方法来看,离子数与及溶解性物资的数量、表面活性剂物质与及水样的PH值偏向都是检测当中存在的主要影响因素,如何能够更好的掌握这一系列因素所造成的影响规律,是今后采取氨氮在线仪器进行水质检测工作的中心,也是水质监测工作的重要指标。

参考文献:

[1] 陈涛;刘永波;袁红明;;纳氏试剂比色法测定污水中氨氮的方法[J];中国新技术新产品;2010(03):301.

[2] 王乐华;刘凤芝;;分光光度法测定生活饮用水中Cr~(6+)的不确定度评定[J];职业与健康;2010(02):67.

第2篇:单元测试方法范文

关键词:JUnit 测试用例 自动化 质量

中图分类号:TP311.52

一、JUnit概述

Junit是由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework)。Erich Gamma是GOF之一,Kent Beck则在Windows XP中有重要的贡献。JUnit是一个开源的java测试框架,它是XUnit测试体系架构的一种实现,XUnit是专门进行单元测试的程序框架。

JUnit具有的一些特点有:

1. 提供的API可以帮助写出测试结果明确的可重用的单元测试用例。

2. 使用JUnit可以快速的编写测试并检测程序代码,并逐步随着程序代码的增长增加测试。测试可以很好的检查程序代码是否完整。

3. Junit测试可以自动执行并且检查结果。当执行测试时,将获得简单且立即的回馈。比如测试是通过或失败,而不再需要人工检查测试结果的报告。

4. Junit可以合成一个有层次的测试系列架构,Junit的合成行为允许组合多个测试并自动的回归,从头到尾测试整个测试系列,也可以执行测试系统层级架构中任何一层的测试。

5. 开发测试成本低,超轻量级并且使用简单。

6. 整个框架设计良好,易扩展。提供了单元测试用例成批运行的功能。

二、Junit中常用的接口和类

1. Assert:当条件成立时候assert方法保持沉默,但若条件不成立就抛出异常。

2. TestResult:包含了测试中发生的所有错误或失败。

3. TestListener: 测试中若产生(开始,结束,错误,失败)会通知TestListener。

4. TestCase:定义了可以用于运行多项测试的环境(实现了Test接口)。

5. TestSuite:运行一组test case(他们可能包含其他 test suite),它是Test的组合(实现了TestSuite)。

6. BaseTestRunner:用来启动测试的用户界面,BaseTestRunner是所有test runner的超类。

三、JUnit单元测试框架

单元级测试在面向对象的开发中变得越来越重要,而一个简明易学、适用广泛、高效稳定的单元级测试框架对成功的实施测试有着至关重要的作用。在java编程环境中,Junit Framework是一个已经被多数java程序员采用和实证的优秀的测试框架。开发人员只需要按照Junit的约定编写测试代码,就可以对自己要测试的代码进行测试。如下图所示:

1. junit.framework.Test:测试接口。

2. junit.framework.TestCase:测试用例类,业务类的测试用例类只需要承继这个TestCase,根据情况编写若干个public void testXxx()方法,在方法中通过assertYyy()定制若干测试规则就可以了。

3. junit.framework.TestSuite:测试套件类,它可以将多个测试用例类捆绑在一起运行,也可以捆绑另一个测试套件。

四、Junit测试过程

1. TestCase实例被运行时,依照以下步骤运行:

1) 创建测试用例的实例。

2) 调用setUp()方法,执行一些初始化工作。

3) 运行testXxx()测试方法。

4) 调用tearDown()方法,执行销毁对象的工作

2. JUnit会以以下顺序执行测试

try {

HelloTest test = new HelloTest(); // 建立测试类实例

test.setUp(); // 初始化测试环境

test.testAAA(); // 测试某个方法

test.tearDown(); // 清理资源

}

catch…

3. 如果测试用例类中有多个testXxx()方法,且它们都需要使用到相同的一组对象,我们可以在setUp()中实例化这组对象,并在tearDown()中销毁它们。

1) 创建TestCase类的子类。

2) 在子类中声明若干个测试所用的对象。

3) 覆盖setUp()方法,在方法中实例化这些对象。

4) 覆盖tearDown()方法,释放这些对象的资源。

五、使用Ant批量运行Junit单元测试用例

Ant是一个类似make的、用java实现的构建工具,项目的构建、包装和过程中几乎每一件事都可以由Ant的任务来处理。Ant凭借出色的易用性、平台无关性以及对项目自动测试和自动部署的支持,已成为众多项目构建过程中不可或缺的独立工具,并已经成为事实上的标准。

随着项目的进展和项目的规模在不断的膨胀,为了保证项目的质量,有计划的执行全面的单元测试是非常有必要的。利用Ant集成Junit可以通过配置批量运行所指定的测试用例并生成测试报告,可以让开发人员及时发现代码中所隐藏的bug,及时进行修改,极大的提高工作效率,从某种意义上做到持续集成。

Ant 内置了对 JUnit 的支持,它提供了两个 Task:junit 和 junitreport,分别用于执行 JUnit 单元测试和生成测试结果报告。使用这两个 Task 编写构建脚本,可以很简单的完成批量运行单元测试并生成测试报告的任务。

首先把junit的包加载到ant的编译目录下,然后编写 Ant 构建脚本 build.xml。接下来把此build.xml文件放到工程的根目录下,修改test属性的值为我们要运行的单元测试用例的包路径名,如果为空默认运行工程所有的单元测试,在Eclipse下打开此build.xml文件,在右边的outline视图下右击ant的junit任务,选择Run As Ant Build,就可以运行此ant文件的junit任务,然后我们就可以在Eclipse的控制台上看到Ant任务的执行信息,任务执行完后,就会在工程的report目录下的“framework-${DSTAMP}-${TSTAMP}”临时文件夹下生成html类型的测试报告。

六、总结

经济或社会效益:

第一个是简化测试的编写,这种简化包括测试框架的学习和实际测试单元的编写;第二个是使测试单元保持持久性;第三个则是可以利用既有的测试来编写相关的测试。

参考文献

第3篇:单元测试方法范文

本文就如何运用反馈——矫正手段提高教学目标效果谈几点看法。

一、在课前通过诊断性测试,获得学生在学习新内容前的知识反馈,为上新课做好准备。

诊断性测试一般安排在新学期或新开课前进行,测试时间一般5~10分钟,测试应侧重于考查学习新课所需要掌握的基本知识和基本技能。例如,在上动物模拟人体手术实验课前,先测试学生关于无菌技术和无菌原则方面的知识并补偿,由此提高他们的学习外科手术的前提能力,最终提高实验目标。

二、在课前或课后,通过形成性测试了解学生的达标情况,及时查漏补缺。

1、编制形成性测试题,包括课堂测试题和单元测试题,要确保适合各自的特点。

(1)课堂测试题,要适合在课堂教学中进行测试。课堂教学时间一般以二学时为单位,共80分钟。其中用以进行课堂测试及反馈矫正的时间通常只有5分钟,故编制此类试题要突出重点,考虑课堂操作的可行性,试题量不能过多。例如,在“复苏”一章编制的课堂测试题为:①快速诊断心脏骤停的方法;②心肺初期复苏的ABC步骤;③心脏按压有效的标志是什么;④心肺复苏有效的指标是什么等。这些题中包括了本章的重要知识点,学生掌握后,在遇到心脏骤停病人时就会懂得如何去诊断和处理,而且试题量适中,便于在课堂上进行测试和矫正。

(2)单元测试题,即教师根据教学的情况,一般按章节划分为一个教学单元,每学完一个单元后进行一次单元测试,以评价学生的单元达标情况。单元达标测试覆盖的目标范围较大,而且每一目标都应有相应的检测题,测试时间为20~30分钟,测试内容多时间少,因此编制此类题主张多用选择题和判断题,少用填空题、名词解释和问答题,以方便学生答题,做到既能检测目标又不影响课堂授课。此处,通过定期的单元测试,又能促使学生经常系统地进行复习,有利于知识的巩固和强化。

2、编制平行性测试题,此类试题适用于对矫正生的检测。

即用以检测单元测试中的未达标者,在经过补救矫正后是否已达标。编制此类别试题应与单元形成性测试题是同质不同形的,即用不同的试题形式去检测同一目标。例如,检测“补钾原则”这一目标时,如果在单元形成测试中采用选择形式,则在平行性测试中可采用判断或填空题的形式进行检测。

三、反馈——矫正是对经测试反馈的未达标者及时补救矫正,使其达标。

1、课堂反馈矫正。

课堂测试反馈一般采用提问、回答、接力填空等形式,其中最常用的是课堂提问的形式,而课堂提问的形式主要适合于对个别学生,这与目标教学要面向全体学生的宗旨是矛盾的,为了解决这一矛盾,在提问时应使所提问的学生具有代表性和随机性。所谓代表性是指所提问的学生能代表全班学生中的某一部分,如优生、中等生或差生。要做到有计划有目的地进行提问检测,尤其对差生要多进行检测矫正。随机性主要是针对课堂教学的具体情况,在全班同学中随机地进行提问。笔者曾在上“急性阑尾炎”一节时,发现一位同学在上课时开小差,当时立即对她进行提问检测:“急性阑尾炎最有特征的症状是什么?”她回答是“腹痛”。这样通过提问,可及时地使她调整思维、融入课堂。虽然她答得不全对,但是通过提问既能起到对她及时补救矫正的效果,同时也能引起其他同学的重视(尤其是对提问的这一问题的重视),结果在单元形成测试中全班同学都能答对这一题。这样通过抓典型、抓代表,达到“牵一发而动全身”的效果,既能及时纠正课堂上出现的个别问题,又能调动全班同学的课堂积极性和主动性,因而能有效地提高教学目标达成度。

第4篇:单元测试方法范文

关键词:软件测试;方法;技术

白盒测试也称结构测试或逻辑驱动测试。它是按照程序内部的逻辑结构测试程序,主要关注代码是否能够正确执行。通过白盒测试可以检测出产品内部动作是否按照设计规格说明书的规定正常工作,并检验程序中的每条通路是否都能按预定要求正确工作。白盒测试是把测试对象看作一个透明的盒子,软件测试人员能够依据程序内部逻辑结构等相关信息,设计或选择测试用例,对程序进行测试。通过在不同的节点检查程序的状态,以保证实际的状态和预期的状态一致。

3.灰盒测试

灰盒测试,是介于白盒测试与黑盒测试之间的。可以这样理解,灰盒测试关注输出对于输入的正确性,同时也关注内部表现,但这种关注不像白那样详细、完整,只是通过一些表征性的现象、事件、标志来判断内部的运行状态,有时候输出是正确的,但内部其实已经错误了,这种情况非常多,如果每次都通过白盒测试来操作,效率会很低,因此需要采取这样的一种灰盒的方法。

二、 软件测试技术的策略

软件测试并不单是软件开发完成后的一个独立的过程,而是贯穿于整个软件开发的过程,根据软件开发的周期不同,可以将软件测试分为:单元测试、集成测试、确认测试、系统测试和验收测试。

1.单元测试(Unit Testing)

单元测试是在软件开发过程中能够进行的最基础的测试活动,在单元测试活动中,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。单元测试不仅仅是作为无错编码一种辅助手段在一次性的开发过程中使用,单元测试必须是可重复的,无论是在软件修改,或是移植到新的运行环境的过程中。因此,所有的测试都必须在整个软件系统的生命周期中进行维护。

2.集成测试(Integrated Testing)

集成测试,也叫组装测试或联合测试。在单元测试的基础上,将所有模块按照设计要求(如根据结构图)组装成为子系统或系统,进行集成测试。实践表明,一些模块虽然能够单独地工作,但并不能保证连接起来也能正常的工作。程序在某些局部反映不出来的问题,在全局上很可能暴露出来,影响功能的实现。因此,单元测试后,有必要进行集成测试,发现并排除在模块连接中可能发生的问题,最终构成要求的软件子系统或系统。对子系统,集成测试也叫部件测试。

3.确认测试(Validation Testing)

确认测试又称有效性测试。有效性测试是在模拟的环境下,运用黑盒测试的方法,验证被测软件是否能够按照需求规格说明书中所要求的工作。任务是验证软件的功能和性能及其他特性是否与用户的要求一致。对软件的功能和性能要求在软件需求规格说明书中已经明确规定,它包含的信息就是软件确认测试的基础。确认测试的目的是向未来的用户表明系统能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是确认测试的任务,即软件的功能和性能如同用户所合理期待的那样。

4.系统测试(System Testing)

系统测试的任务是尽可能彻底地检查出程序中的错误,提高软件系统的可靠性,其目的是检验系统“做得怎样”。这阶段又可分为三个步骤:模块测试,测试每个模块的程序是否有错误;组装测试,测试模块之间的接口是否正确;确认测试,测试整个软件系统是否满足用户功能和性能的要求。该阶段结束应交付测试报告,说明测试数据的选择,测试用例以及测试结果是否符合预期结果。

三、软件测试未来发展方向

目前,软件测试存在4个发展方向。

1.验证技术

验证的目的在于证明在软件生命期各个阶段,以及阶段间的逻辑协调性和正确性。验证技术目前仅适用于特殊用途的小程序。

2.静态测试

正逐步地从代码的静态测试往高层开发产品的静态测试发展。

3.测试用例的选择

什么样的测试用例是好的测试用例?可以从4个特性描述测试用例的质量,即有效性、仿效性、经济性和修改性。

4.测试技术的自动化

这是一个最新的发展方向。自动测试也是一门技术,但与测试技术存在很大的区别。

参考文献:

第5篇:单元测试方法范文

关键词:面向对象;软件测试;面向对象测试模型;测试过程

中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)35-2425-03

Research of Object-Oriented Test Techniques

ZHOU Juan

(Handan Foundry, Handan 056003, China)

Abstract: The paper describes how to test object-oriented analysis, object-oriented design,object-oriented programming, and the process of object-oriented testing, while taking the object-oriented software development model in software engineering as reference. According to the steps of unit testing, integrate testing. system testing, the testing strategies of object-oriented unit test , object-oriented integrate test , object-oriented system test were discussed in detail , and some interrelated problems are discussed.

Key words: object-oriented; software testing; object-oriented testing model; testing process

1 引言

从1982年在美国北卡罗来纳大学召开首次软件测试的正式技术会议至今,软件测试理论迅速发展,并相应出现了各种软件测试方法,使软件测试技术得到极大的提高,软件测试成为软件工程方法中保证软件质量的最重要手段。

传统软件测试技术是面向过程的测试,是从输入/处理/输出的角度检验一个函数或过程能否正确工作,而面向对象软件测试是针对相互协作而又彼此独立的对象的测试。面向对象软件开发的测试目标与传统的软件开发方法相同,都是为了确保软件能正确地和一致地解决待解决的问题,但由于过程性测试方法没有考虑到面向对象软件测试所要涉及的类、继承和多态性,因此这两者是有很大的不同,因而有必要对其进行深入的研究。

2 面向对象测试模型

面向对象的开发模型突破了传统的瀑布模型,将开发分为面向对象分析(OOA),面向对象设计(OOD)和面向对象编程(OOP)三个阶段。分析阶段产生整个问题空间的抽象描述,在此基础上,进一步归纳出适用于面向对象编程语言的类和类结构,最后形成代码。

针对这种开发模型,结合传统的软件测试步骤的划分,文献[1]提出一种整个软件开发过程中不断进行测试的面向对象软件测试模型,使开发阶段的测试与编码完成后的单元测试、集成测试、系统测试成为一个整体。该测试模型给出了面向对象测试OOT 与OOA、OOD 和OOP 三者的对应关系,如图1 所示。

OOA Test 和OOD Test 是对分析结果和设计结果的测试,主要是对分析设计产生的文本进行测试,是软件开发前期的关键性测试。OOP Test主要针对编程风格和程序代码实现进行测试,其主要测试内容在面向对象单元测试和面向对象集成测试中体现。面向对象单元测试是进行面向对象集成测试的基础。面向对象集成测试主要对系统内部的相互服务进行测试,如成员函数间的相互作用,类间的消息传递等。面向对象集成测试不但要基于面向对象单元测试,更要参见OOD 或OOD Test 结果[2]。面向对象系统测试是基于面向对象集成测试的最后阶段的测试,主要以用户需求为测试标准,需要借鉴OOA 或OOA Test 结果。

2.1 面向对象分析的测试(OOA Test)

传统的面向过程分析是一个功能分解的过程,是把一个系统看成可以分解的功能的集合。这种传统的功能分解分析法的着眼点在于一个系统需要什么样的信息处理方法和过程,以过程的抽象来对待系统的需要。而面向对象分析(OOA)是把E-R 图和语义网络模型,即信息造型中的概念,与面向对象程序设计语言中的重要概念结合在一起而形成的分析方法,最后通常是得到问题空间的图表的形式描述[3,4]。

OOA 阶段将问题空间中的实例抽象为对象,用对象的结构反映问题空间的复杂实例和复杂关系,用属性和服务表示实例的特性和行为。OOA 的结果是为后面阶段类的选定和实现,类层次结构的组织和实现提供平台。因此,OOA 对问题空间分析抽象的不完整,最终会影响软件的功能实现,导致软件开发后期大量不可避免的修补工作;而一些冗余的对象或结构会影响类的选定、程序的整体结构或增加程序员不必要的工作量。因此,对OOA 的测试重点应该放在完整性和冗余性方面。 OOA阶段的测试划分为以下五个方面:1) 对认定的对象的测试;2) 对认定的结构的测试;3) 对认定的主题的测试;4) 对定义的属性和实例关联的测试;5) 对定义的服务和消息关联的测试。

2.2 面向对象设计的测试(OOD Test)

通常结构化的设计方法是用面向作业的设计方法,它把系统分解以后,提出一组作业,这些作业是以过程实现系统的基础构造,把问题域的分析转化为求解域的设计,分析的结果是设计阶段的输入。

而面向对象设计(OOD)采用“造型的观点”,以OOA为基础归纳出类,并建立类结构或进一步构造成类库,实现分析结果对问题空间的抽象。OOD 确定类和类结构不仅能满足当前需求分析的要求,更重要的是通过重新组合或加以适当的补充,能方便实现功能的重用和扩充,以不断适应用户的要求。因此,对OOD 的测试,建议针对功能的实现和重用以及对OOA 结果的拓展,从如下三方面考虑[5]:

1) 对认定的类的测试;

2) 对构造的类层次结构的测试;

3) 对类库的支持的测试。

2.3面向对象编程的测试(OOP Test)

由于面向对象程序具有继承、封装和多态等新特征,使得传统的结构化程序测试策略不能完全适应面向对象程序的测试需要。主要表现在三个方面,即面向对象的封装不能实现传统测试方法中对数据非法操作的测试;面向对象的继承,使错误的传播概率提高,增加了测试的复杂度;面向对象的多态特征使程序内“同一”函数的行为复杂化,增加测试的工作量。

面向对象程序将功能实现分布在类中,类间通过消息传递来协同实现系统的功能。面向对象的这种程序风格将出现的错误精确地确定在一个具体的类中,因此,面向对象编程的测试OOP Test忽略类功能的实现细则,将测试集中在类功能的实现和相应的面向对象程序风格,主要体现为两方面(假设使用C++语言):

1) 数据成员是否满足数据封装的要求;

2) 类是否实现了要求的功能。

3 面向对象的软件测试内容及层次

面向对象软件测试即在测试过程中继续运用面向对象技术,进行以对象概念为中心的软件测试。Binder 在研究了面向对象的特征,如封装性、继承性、多态和动态绑定性等,认为这些特征的引入增加了测试的复杂性。对软件测试层次一种较为普遍的划分方法是根据测试层次结构,面向对象软件测试总体上呈现从单元级、集成级、到系统级的分层测试,测试集成的过程是基于可靠部件组装系统的过程。测试可用不同的方法执行,通常的方法是按设计和实现的反向次序测试,首先验证不同层,然后使用事件集成不同的程序单元,最终验证系统级。根据测试层次结构确定相应的测试活动,并生成相应的层次[6]。由于面向对象软件从宏观上来看是各个类之间的相互作用,因此,将对类层的测试作为单元测试,而对于由类集成的模块测试作为集成测试,系统测试与传统测试层相同。测试流程如图2所示。

3.1 面向对象的单元测试(OO Unit Test)

传统的单元测试是针对程序的函数、过程或完成某一定功能的程序块,面向对象单元测试OO Unit Test 在OOP Test 时进行,是对程序内部具体单一的功能模块的测试。一些传统的测试方法在面向对象的单元测试中都可以使用,如等价类划分法,因果图法,边值分析法,逻辑覆盖法,路径分析法,程序插装法等等。

当考虑面向对象的软件时,模块单元的概念改变了,封装规定了类和对象的定义。这意味在面向对象单元测试中,最小的可测试单元是封装的类或对象,而不是模块。

类包含一组不同的操作,并且某特殊操作可能作为一组不同类的一部分存在。同时,一个对象有它自己的状态和依赖于状态的行为,对象操作既与对象的状态有关,也可能改变对象的状态。所以,类操作时不仅要将操作作为类的一部分,同时要把对象与其状态结合起来,进行对象状态行为的测试。类测试可以分为以下三个部分:[7]

1) 基于服务的测试:测试类中的每一个服务(即方法);

2) 基于状态的测试:考察类的实例在其生命期各个状态下的情况;

3) 基于响应状态的测试:从类和对象的责任出发,以外界向对象发送特定的消息序列来测试对象。

基于服务的类测试主要考察封装在类中的一个方法对数据进行的操作。Kung等人提出的块分支图(Block Branch Diagram,简称BBD)是一种比较好的服务测试模型(如图3所示)。

服务f 的BBD是一个五元组,BBD = { Du, Dd, P, Fe,G} ;Du = { di | di ∈f 引用的全局数据或类数据} ;Dd ={ di | di ∈ f 修改的全局数据或类数据};

P = { X1θ1 ,X2θ2 , …, Xnθn , Xn+1θn+1 ∈ f 的参数表和函数

返回值,θi为(输入) 、(输出) ,或(输入/ 输出) ;若Xn+1 缺省,

则无返回值}; Fe = { f i | f i ∈被f 调用的其他服务};

G是一个有向图,叫做块体。它是按照控制流图的思想修改f的程序流程图而来的,表示f的控制结构中的符合条件判断被分解,每个判断框只有单个条件。

3.2 面向对象的集成测试

传统的集成测试是由底向上通过集成完成的功能模块进行测试,一般可以在部分程序编译完成的情况下进行。而对于面向对象程序,相互调用的功能是散布在程序不同的类中,类通过消息相互作用申请和提供服务,类相互依赖极其紧密,根本无法在编译时对类进行测试,所以,面向对象的集成测试通常需要在整个程序编译完成后进行。

在面向对象系统中,集成测试属于应用生命周期的一个阶段,可在两个层次上进行。第一层对一个新类进行测试,以及测试在定义中所涉及的那些类的集成。设计者通常用关系is a,is part和refers to来描述类与类之间的依赖,并隐含了类测试的顺序。首先测试基础类,然后使用这些类的类接着测试,再按层次继续测试,每一层次都使用了以前已定义和测试过的类作为部件块。

对于面向对象领域中集成测试的特别要求是:应当不需要特别地编写代码就可把在当前的软件开发中使用的元素集合起来,因此其测试重点是各模块之间的协调性,尤其是那些从没有在一起的类之间的协调性。

集成测试的第二层是将各部分集合在一起组成整个系统进行测试。以C++语言编写的应用系统为例,通常应在其主程序中创建一些高层类和全局类的实例,通过这些实例的相互通讯从而实现系统的功能。对于这种测试所选择的测试用例应当瞄准待开发软件的目标而设计,并且应当给出预期的结果,以确定软件的开发是否与目标相吻合。

3.3 面向对象的系统测试

系统测试是对所有类和主程序构成的整个系统进行整体测试,以验证软件系统的正确性和性能指标等是否满足需求规格说明书和任务书所指定的要求。它与传统的系统测试一样,包括功能测试、性能测试、余量测试等,可套用传统的系统测试方法。通过单元测试和集成测试,仅能保证软件开发的功能得以实现,不能确认在实际运行时,它是否满足用户的需要,是否大量存在实际使用条件下会被诱发产生错误的隐患。为此,对完成开发的软件必须经过规范的系统测试,即开发完成的软件仅仅是实际投入使用系统的一个组成部分,需要测试它与系统其他部分配套运行的表现,以保证在系统各部分协调工作的环境下也能正常工作[8]。

在系统测试中,不关心类的联系细节。同于传统的系统测试,面向对象软件的系统测试集中在用户可见的活动与用户可识别的来自系统的输出。为了导出测试案例,测试者应该使用分析模型中的使用案例,使用案例能够用于导出测试案例以发现不能满足用户交互需求的错误。系统测试应该尽量搭建与用户实际使用环境相同的测试平台,应该保证被测系统的完整性,对临时没有的系统设备部件也应有相应的模拟手段。系统测试不仅是检测软件的整体行为表现,也是对软件开发设计的再确认。

4 结束语

面向对象测试的目标与传统测试相同,但面向对象方法与传统顺序结构式方法在开发思想上有着根本的不同,尤其是面向对象所具有的类、封装、继承、动态连接等特性,使得面向对象软件测试在测试模型、测试方法、测试层次等方面都有别于传统的测试思想。从面向对象的测试模型可知,测试的视角扩大到包括复审分析和设计模型,此外,测试的焦点从过程构件(模块) 转向了对象类。

目前,面向对象软件系统的开发在不断的实践中已逐步形成了自己的方法学,但对于面向对象软件测试,目前尚无普遍接受的充分性准则。本文根据传统软件测试模型将面向对象软件开发过程和软件测试相结合,形成一种面向对象测试模型,并对模型的相关步骤和具体实施提出了一些方法和技术,虽已在实践中得到了一定的验证,但也只是初步的,有必要在今后的研究中得到进一步的完善。

参考文献:

[1] Beizer B.Black-Box Testing Techniques for Functional Testing of Software and Systems[M].John Wiley & sons,1995.

[2] Coad P,Yourdon E.Object-Oriented Analysis[M].Yourdon Press,1999

[3] 汤庸.软件工程方法学及应用[M].武汉:中国三峡出版社,1998

[4] 郑人杰.计算机软件测试技术[M].北京:清华大学出版社,2000

[5] 陈文宇.面向对象软件的测试[J].电子科技大学学报,2001,6(30):613-617.

[6] 徐虹.面向对象的软件测试模型及策略研究[J].计算机与现代化,2005(3):15-18.

第6篇:单元测试方法范文

初三政治教学工作计划

关王庙中学 连红梅 高彩虹

一、指导思想:

本学期由我和高彩虹担任初三年级的思想品德课,我们确立“以人为本,关注生命,促进学生全面发展”为指导思想,希望通过自己无私的耕耘,每个学生都有收获。

二、教材分析:

本册书共12课,分为四大单元。第一单元承担责任 服务社会:本单元作为九年级教材的导引,是国情教育的起点。通过让学生明确自己所扮演的角色,引出自己所承担的责任,从而让学生做一个负责任的公民。第二单元了解祖国 爱我中华:是在第一单元的基础之上,让学生进一步了解我国的人口、资源、环境、科技、教育、法制建设方面的国情,以及针对这些问题制定的国策、发展战略。作为中学生面对我国的基本国情该承担怎样的责任。在了解了基本国情和国策的基础上,如何培养学生正确处理更高意义上的交往行为,需要培养学生正确处理民族关系和国家统一问题。所以本单元对学生进行集中的民族历史、民族文化、民族决策、民族精神的教育,同时让学生保持清醒的头脑,如何对待外来文化,发展民族文化,弘扬民族精神,铸就民族魂魄。第三单元融入社会 肩负使命:具体阐述我国在政治、经济、文化方面的发展,中学生又该履行怎样的责任。第四单元满怀希望迎接明天:本单元既承接前三单元的学习内容,又是一种知识和情感的升华。本单元皆在引导学生树立远大理想并为之努力奋斗,将个人理想与社会理想联系起来,为国家和民族的未来奉献自己的力量。

三、教材要求:

在备课前研读教学大纲,理清课本脉络。在备课中从学生实际出发,一切为使学生发展服务。在教学中,紧紧围绕三维目标授课即知识与能力、过程与方法、情感态度价值观目标。采用情感教学法,关注每位学生的身心发展,让学生自主确立学习目标、学习重点、难点,让学生在自主、合作、探究学习方法中愉快的掌握知识点,陶冶情操,树立远大理想。在教学中,给学生创造民主和谐的学习氛围,在师生互动、生生互动中进行分层教学优化,使所有学生都有所收获,有所进步。在教学中,引导学生关注时事、关注国家大事、焦点访谈等,让我们在关注中与政治观互相结合,提高自己分析问题,解决问题的能力。

四、教学进度:

第7篇:单元测试方法范文

关键词:测试;单元测试;集成测试;系统测试

中图分类号:TN919.1 文献标识码:A 文章编号:1007-9599 (2012) 17-0000-02

随着软件和IT技术的发展,测试工作也被更多的企业单位所认可,有资料显示,在微软公司,测试人员和开发人员的比例可以达到2:1,这也彰显出微软对测试工作的重视。但仍有一些单位,对测试的理解存在误区。

误区一:测试的目的就是要找出软件或系统中所有的bug,使软件可以正确执行它应有的功能。

误区二:只有测试人员才需要做测试工作,开发人员只管设计和编写软件,然后交给测试人员测试就行了。

事实上,同这些理解正好相反。

1 测试真正可以达到的目的

“误区一”的观点是无法实现的,比如windows下的文件拷贝功能,这是windows中比较简单的一个功能了,但就是这么一个简单的功能,我们也无法向“误区一”说的那样,找出所有bug,因为我们不可能把所有的可能性都测试到。文件拷贝功能绝不是简单的选择一个源文件,然后拷贝到目的目录那么简单,有各种各样的情况场景需要考虑,比如目的目录中已有同名文件、比如目的目录所在磁盘空间不足、比如目的目录层次过深超过windows支持的最大目录长度、比如原文件是否允许拷贝、比如目的目录是否可写、比如当前用户是否有拷贝文件的权限、比如内存不足或CPU忙时的拷贝、比如其他程序执行对拷贝的影响等等,对这些情况的考虑已经可以设计出许许多多的测试用例,何况还有许多我们想不到的情境,所以,想穷举测试一个功能的所有路径,找出所有bug是不可能的。这样的目标只会阻碍测试人员的思考,引导测试走向极端。

测试是假定程序中存在错误而去执行程序来发现尽可能多的错误的行为,当然这个假设几乎对所有软件都是合理的,没有bug的软件几乎是不存在的。为什么强调测试的目的是找bug,而不是证明软件中已经不存在bug了呢?

因为这会影响到测试是否成功:如果测试的目的是为了说明程序中没有错误,测试人员思维和行为就会向这个目标靠拢,因而下意识的选用一些不易暴露错误的测试用例。但是,如果我们的目标是证实程序中有错误,测试人员就会选用一些更能暴露错误的测试用例。

所以正确理解测试,对测试设计、测试执行等测试活动有很大的影响。进而决定这会不会是一个有效的测试活动。

2 测试应在什么时机如何开展

“误区二”的观点是目前很多公司都容易犯的错误,他们已经成立了专门的测试团队(这是好的一面),但将产品质量过多的押宝在系统测试阶段,开发写完代码后基本不经过什么自测,就将软件进行系统测试,由于系统测试的时间、人力以及测试工作的特性等因素,这样系统测试后的软件中仍然存在着大量的bug,甚至存在很致命的bug,这将导致软件的质量下降和不稳定,而使用户失去信心。

为什么会这样呢?这正是测试的特性决定的,软件中的bug是永远发现不完的,并且发现的越晚,修改的成本就越高,这是微软公司从二十几年的实践中明白的道理,所以要想得到高质量的软件产品,我们就需要系统的规划测试,让不同角色的人参与进来。在软件开发过程,一般测试可以分为三个阶段进行,它们分别是单元测试、集成测试和系统测试,三个活动相辅相成相互影响。

单元测试是对软件的基本组成部分进行测试,如模块、过程等,其目的是根据模块的功能说明检验模块的正确性。因为单元测试需要了解程序内部的设计和编码细节,所以一般应由程序员进行测试,单元测试主要使用白盒测试,可以发现详细设计和编程时犯下的错误,如变量赋值错误、判断条件错误等。

单元测试是软件测试最基本的部分,非常重要,如果单元测试做不好,后续的集成测试和系统测试将无法顺利进行,软件开发进度会严重延迟或者被迫一个低质量的软件。

集成测试是根据系统的整体流程,将各个模块连接起来进行的测试。集成测试的主要目的是发现软件模块间的接口错误,检查各模块组成的系统运行是否正确,各组成模块是否合拍。集成测试通常使用黑盒测试,也可以加入部分白盒测试,可以发现概要设计时犯的错误,如软件逻辑错误、模块接口错误等。软件通过集成测试,是可以进入系统测试的前提,对未通过集成测试的软件进行系统测试,将导致系统测试顾此失彼,影响测试的输出质量。

系统测试将系统硬件、软件和用户等视为一个整体,检查系统在功能、性能等方面是否有不符合需求说明书的地方,所以系统测试应以需求说明书为测试依据,站在用户的角度,通过不断的使用和攻击被测对象,尽可能多的找出系统中的bug。系统测试主要使用黑盒测试方法,并且可以借助测试工具等外部力量,来模拟和攻击被测对象。系统测试可以发现设计和分析阶段的错误,以及系统性能稳定性等方面的错误,如用户需求理解错误、未完全实现用户需求、长期运行系统崩溃等。系统测试需要由专门的团队进行,一般不建议由开发人员进行,因为开发人员对待自己的程序,就像对待自己的孩子一样,会下意识的手下留情,而系统测试需要的是强攻击性。高效的系统测试并不是在软件提交系统测试时才开始的,那已经太晚了。系统测试需要在需求分析时就开始了解需求,分析测试需求,并随着软件的开发同步进行测试用例设计,确定测试方法等。开始对软件进行系统测试的测试执行阶段,只占系统测试总时间的一半左右。系统测试只有和软件开发同步进行,才能更好的理解需求,并且同步的测试设计准备,也可以大大缩短软件的周期,并提高测试的质量。

3 结束语

软件测试是为了发现错误而执行软件的过程,是不能找出软件中所有bug的,错误的测试理念会导致测试走入歧途,而达不到提升产品质量的目标。

测试活动应贯穿于产品开发的整个过程,合适的人做合适的测试,正确的进行单元测试、集成测试和系统测试,将使软件质量产生质的飞跃。

参考文献:

第8篇:单元测试方法范文

【关键词】安卓系统 手机软件 测试 风险分析

引言:我国各手机厂商均依据自身需求将安卓系统进行了二次开发,对安卓手机系统及其二次开发软件进行测试,并对其测试中容易发生的风险因素进行分析与总结,这可以为今后的安装手机系统及软件测试提供参考依据。

一、手机软件测试内容

在对手机软件进行测试时,主要分为五方面进行:系统测试、版本验证测试、集成测试、功能测试、单元测试。除此之外,还应对系统使用的界面友好性及系统的信息安全性能进行测试[1]。

(一)单元测试。测试软件内部最小单元的正确性,称为单元测试。统计数字表明,安卓系统应用软件在单元测试环节的缺陷率在50%以上。目前,一般情况下,单元测试指的是对程序代码的检测,即测试人员在对软件程序结构了解掌握的基础上,对其存在的缺陷进行检查与修正。一些开发人员在进行软件开发工作时,为尽快完成任务或是由于思路或开发水平的限制,而导致对单元集成工作的疏忽,这样就会使软件在单元测试中暴露出更多问题。一般情况下,大部分软件开发企业在进行软件测试时,都会专门成立测试小组执行此项工作,因为在开发时开发人员在进行程序编写时使用的是自己头脑中已有的思路和算法,如果让开发人员对自己编写的程序代码进行检查,一些问题就会以为开发人员思维定势的缘故而遗漏掉,这会给软件在应用中带来许多麻烦。

(二)功能测试。在对软件产品进行功能测试时,主要依据的是产品面向用户所提供的功能、用户在使用中所需实现的功能以及软件产品的特征等进行测试的。在对软件进行功能测试时,应先对测试建立相关功能标准,通过检测软件功能是否达标来检验其合格水平。在进行功能检测时,首先检测的应是手机设置中菜单与子菜单的设置[2],以及菜单与子菜单间关系的设置是否合理,其中包括短信应用、联系人应用等,在短信应用中包括对短信的编辑、发送、接受、保存、删除和显示等功能;在联系人应用中包括对联系人的添加、修改、拨号、发送信息、删除及通话记录等功能。

(三)集成测试。集成测试是在功能测试完成的基础上进行的,其测试目的是为了保证软件中各单元模块的集成良好实现。目前的集成测试包括对手机软件部件功能的测试、对全局变量数据间的结构测试以及软件单元间的接口测试等。除此之外,安卓手机系统中的应用不是多个手机应用软件简单堆叠而形成的,而是各软件间的融合与集成,所以对手机应用软件间的集成测试,以及对软件间与软件和系统的兼容性的测试也是很重要的。

(四)版本验证测试。在版本验证测试阶段,重要执行的是对手机软件功能的终极测试,在此阶段测试的通过率达到95%才能够进入下一阶段的测试[3]。

(五)系统测试。系统测试是整个软件测试的核心环节,是针对软件进行全面测试的环节。在这个环节中需要测试软件与硬件之间的连接问题,还要测试软件的整体运行情况。

(六)对界面友好性与信息安全性的测试。安卓手机系统针对的是手机用户,所以在手机界面的使用上应做到便于操作,对手机系统的便捷性与实用性要求较高。因为手机系统中保存这用户的大量私人信息,对手机系统的安全性能要求较高,所以在测试时,应注意对手机系统的安全性进行检测,以保障用户的通信安全与信息安全。

二、对手机软件进行测试时应遵循的原则

手机厂商在选用手机软件时,通常都会对安卓软件系统进行二次开发,在进行对二次开发软件系统的测试时,需要遵循一些原则:第一、应确保手机软件进行全面测试,因为二次开发后的软件具有许多潜在风险与漏洞,需要在测试时对其进行严密的检查、完善与分析;第二、对软件的使用制定实用性标准,依照标准进行测试,其实用性标准是以风险评估指标体系为基础的,在测试时,应对其所使用的计算进行严格检验;第三、对影响手机软件性能的非相关因素进行控制,避免潜在威胁与其他风险的发生;第四、在安卓手机测试的各个阶段和环节实行风险管理,这一点在管理工作中是非常必要的。

三、安装手机软件测试中存在的风险

(一)测试准备阶段的风险因素。根据手机类型不同,手机的测试方案也是不同的。这一阶段主要存在的风险是由于测试团队人员对手机软件测试了解不足、分析不到位而导致的测试计划不符合实际测试情况,以致对测试时间、预算等的估计不准确而干扰测试执行。

(二) 测试执行阶段的风险因素。上文中提到国,软件的开发与测试是有两个团队来完成的,因此,测试团队在执行测试时,势必会在开发的软件中找到错处或漏洞,而如何协调开发人员与测试人员间的关系,缓解或打消他们之间的摩擦,成为了这一环节中管理人员面临的重要问题。测试人员与开发人员间的沟通是很重要的,进行测试的软件测试结果需交还给开发人员,开发人员通过与测试人员的沟通形成修改意见,并由开发人员进行修改,并将修改结果反馈给测试人员重新进行测试。由此可见,通过团队管理使两支团队对工作形成正确的观念是非常重要的。

(三)测试总结阶段的风险因素。在测试的总结阶段,应对测试结果进行全面分析和总结,并对由于数据输入不正确而导致的系统错误与风险进行分析和解决。

安卓手机软件系统关系到安卓手机到使用效果,本文通过对手机软件测试的介绍为大家阐述了如何发现并排除系统错误的步骤,以及为大家分析了系统测试过程中存在的风险。安卓手机系统测试的每一步成果,无论是错误总结、测试方法革新还是管理方法总结都会对手机系统与软件的发展起到推动作用。

参考文献:

[1]杨滢雪.安卓手机软件测试中的风险因素评价研究[D].吉林:长春理工大学,2012.

第9篇:单元测试方法范文

一、学生基本情况分析:

化学是一门九年级刚开设的新课程,与生活的联系较多,学生学习的热情较高,教师应正确引导,以期在中考中取得好的成绩。本期我担任九年级化学教学任务,这些学生基础高低参差不齐,相对而言1班学生基础较牢,成绩较好;而4班学生大部分没有养成良好的学习习惯、行为习惯。教师要做好每一个学生的工作,使他们在各自原有的基础上不断发展进步。

二、教学总体目标

义务教育阶段的化学课程以提高学生的科学素养为主旨,激发学生学习化学的兴趣,帮助学生了解科学探究的基本过程和方法,培养学生的科学探究能力,使学生获得进一步学习和发展所需要的化学基础知识和基本技能;引导学生认识化学在促进社会发展和提高人类生活质量方面的重要作用,通过化学学习培养学生的合作精神和社会责任感,提高未来公民适应现代社会生活的能力。

三、教学具体目标

通过义务教育阶段化学课程的学习,学生主要在以下三个方面得到发展。

知识与技能:

1.认识身边一些常见物质的组成、性质及其在社会生产和生活中的应用,能用简单的化学语言予以描述。

2.形成一些最基本的化学概念,初步认识物质的微观构成,了解化学变化的基本特征,初步认识物质的性质与用途之间的关系。

3.了解化学与社会和技术的相互联系,并能以此分析有关的简单问题。

4.初步形成基本的化学实验技能,能设计和完成一些简单的化学实验。

过程与方法:

1.认识科学探究的意义和基本过程,能提出问题,进行初步的探究活动。

2.初步学会运用观察、实验等方法获取信息,能用文字、图表和化学语言表述有关的信息,初步学会运用比较、分类、归纳、概括等方法对获取的信息进行加工。

3.能用变化与联系的观点分析化学现象,解决一些简单的化学问题。

4.能主动与他人进行交流和讨论,清楚地表达自己的观点,逐步形成良好的学习习惯和学习方法。

情感态度与价值观 :

1.保持和增强对生活和自然界中化学现象的好奇心和探究欲,发展学习化学的兴趣。

2.初步建立科学的物质观,增进对"世界是物质的""物质是变化的"等辩证唯物主义观点的认识,逐步树立崇尚科学、反对迷信的观念。

3.感受并赞赏化学对改善个人生活和促进社会发展的积极作用,关注与化学有关的社会问题,初步形成主动参与社会决策的意识。

4.逐步树立珍惜资源、爱护环境、合理使用化学物质的观念。

5.发展善于合作、勤于思考、严谨求实、勇于创新和实践的科学精神。

6.增强热爱祖国的情感,树立为民族振兴、为社会的进步学习化学的志向。

四、具体措施

(1)加强实验教学

化学是一门以实验为基础的学科。实验教学可以激发学生学习化学的兴趣,帮助学生形成概念,获得知识和技能,培养观察和实验能力,还有助于培养实事求是、严肃认真的科学态度和科学的学习方法。因此,加强实验教学是提高化学教学质量的重要一环。在教学中,要坚决防止只重讲授、轻视实验的偏向。在实验教学中,要注意安全教育,要教育学生爱护仪器,节约药品。

(2)积极开展化学课外活动。

组织和指导学生开展化学课外活动,对于提高学生学习化学的兴趣,开阔知识视野,培养和发展能力,发挥他们的聪明才智等都是很有益的。课外活动的内容和方式应,灵活多样。在活动内容方面可包括联系社会,联系生活、结合科技发展和化学史,以及扩展课内学过的知识等;活动方式可采取做趣味小实验、举行知识讲座,化学竞赛和专题讨论,或组织学生制作教具,进行参观访问等。在组织课外活动时,应注意充分发挥学生的特长,培养他们的创新精神。

(3)加强化学用语的教学

元素符号、化学式和化学方程式等是用来表示物质的组成及变化的化学用语,是学习化学的重要工具。在教学中,要让学生结合实物和化学反应,学习相应的化学用语,结合化学用语联想相应的实物和化学反应。这样,既有利于学生记忆,又有利于加深他们对化学用语涵义的理解。还应注意对化学用语进行分散教学,通过生动有趣的学习活动和有计划的练习,使学生逐步掌握这些学习化学的重要工具。

(4)重视元素化合物知识的教学

元素化合物知识对于学生打好化学学习的基础十分重要。为了使学生学好元素化合物知识,在教学中要注意紧密联系实际,加强直观教学,实验教学和电化教学,让学生多接触实物,多做些实验,以增加感性知识。要采取各种方式,帮助他们在理解的基础上记忆重要的元素化合物知识。在学生逐步掌握了一定的元素化合物知识以后,教师要重视引导学生理解元素化合物知识间的内在联系,让学生理解元素化合物的性质,制法和用途间的联系,并注意加强化学基本概念和原理对元素化合物知识学习的指导作用。

五、教学进度安排

第一、二周(9.1~9.9)绪言、物质的变化和性质,化学是一门以实验为基础的科学。

第三周(9.10~9.16):走进化学实验室(参观化学实验室,怎样进行化学实验,怎样设计实验)、单元测试。

第四周(9.17~9.23):空气、氧气。

第五周(9.24~9.30):制取氧气,单元测试。

第六周(10.1~10.7):水的组成、分子和原子、水的净化。

第七周(10.8~10.14):保护水资源、最轻的气体、单元测试。

第八周(10.15~10.21):原子的构成、元素、离子。

第九周(10.22~10.28):化学式与化合价、单元测试。

第十周(10.29~11.4):期中复习及考试、试卷分析

第十一周(11.5~11.11):机动

第十二周(11.12~11.18):质量守恒定律、如何正确书写化学方程式。

第十三周(11.19~11.25):利用化学方程式的简单计算、单元测试。

第十四周(11.26~11.2):金刚石、石墨和C60 、二氧化碳制取的研究。

第十五周(12.3~12.9):二氧化碳和一氧化碳、单元测试。

第十六周(12.10~12.16):燃烧和灭火。

第十七周(12.17~12.23):燃料和热量、使用燃料对环境的影响。

第十八周(12.24~12.30):石油和煤的综合利用、单元测试。

第十九周(12.31~1.6)第二十周(1.7~1.13):期末复习。

免责声明

本站为第三方开放式学习交流平台,所有内容均为用户上传,仅供参考,不代表本站立场。若内容不实请联系在线客服删除,服务时间:8:00~21:00。

AI写作,高效原创

在线指导,快速准确,满意为止

立即体验
文秘服务 AI帮写作 润色服务 论文发表