`
flash7783
  • 浏览: 309544 次
  • 性别: Icon_minigender_1
  • 来自: 南昌
社区版块
存档分类
最新评论

用cactus,jetty实现对servlet类进行单元测试三(完)

阅读更多

 

OK,可以开始写测试类了,代码为:

package com.test.servlet.jetty;

import junit.framework.Test;

import junit.framework.TestSuite;

import org.apache.cactus.ServletTestCase;

import org.apache.cactus.WebRequest;

import org.apache.cactus.extension.jetty.Jetty6xTestSetup;

import com.test.servlet.LoginServlet;

import com.test.servlet.LoginServletJettyTest;

public class LoginServletJettyTest extends ServletTestCase {

    public static Test suite() {

    System.setProperty("cactus.contextURL",

       "http://localhost:8080/cactustest");

    TestSuite suite = new TestSuite();

    suite.addTestSuite(LoginServletJettyTest.class);

    return new Jetty6xTestSetup(suite);

    }

    public void beginLoginUser(WebRequest webRequest) {

    webRequest.addParameter("username", "cuckoo");

    webRequest.addParameter("password", "123");

    }

    public void testLoginUser() {

    LoginServlet loginServlet = new LoginServlet();

    assertTrue(loginServlet.loginUser(request));

    }

    public void beginInLoginUser(WebRequest webRequest) {

    webRequest.addParameter("username", "guest");

    webRequest.addParameter("password", "123456");

    }

    public void testInLoginUser() {

    LoginServlet loginServlet = new LoginServlet();

    assertFalse(loginServlet.loginUser(request));

    }

}

 

直接运行,不必启动tomcat,结果如图:


看到了最喜欢的绿带,说明你的测试通过了,可以进行下一步开发啦。

 

 

 

最后,解释下一两个名词及说明下我的开发环境:

 

组件:组件是在容器内部执行的一段代码。

容器:容器则是为存放在其内的组件提供有用服务(比如生命周期,安全,事务,分布等等)的器皿。

 

我的开发环境是:

软件环境:xp sp3MyEclipse 8.0M1tomcat 6.0.20

 

谢谢大家的支持,由于此网站所支持博文字数有限,故分了三篇来完成本话题,给大家带来的不便之处,敬请原谅。再者本人水平有限,欢迎大家指正错误和不足之处,谢谢大家。

分享到:
评论

相关推荐

    cactus的学习笔记(一)

    3. 配置Servlet容器:根据所使用的Servlet容器(如Tomcat、Jetty等),配置Cactus插件或者设置相应的系统属性。 编写Cactus测试用例时,你需要继承自Cactus提供的基类,如`org.apache.cactus.ServletTestCase`。...

    jakarta-cactus-12-1.7.1.rar

    - 创建Cactus测试类,这些类继承自Cactus提供的基类,并使用JUnit注解。 - 在测试方法中,使用Cactus提供的API来模拟HTTP请求,与服务器交互。 - 测试执行后,Cactus会捕获结果并报告测试状态。 4. **Cactus的...

    cactus-源码.rar

    1. **Cactus Core**:这是Cactus的核心模块,实现了与Servlet容器的交互,包括测试类的生成和执行。主要类如`org.apache.cactus.Server`负责与服务器的通信,`org.apache.cactus.ServletTestRunner`处理Servlet的...

    cactus-1.8.1-bin.zip

    要使用Cactus,开发者需要在Java Web项目中引入Cactus库,然后编写测试类,这些类会扩展Cactus提供的基类。测试代码将在服务器上下文中运行,可以直接访问Servlet API和其他Web服务。这使得测试更加真实,更接近实际...

    基于Junit的测试组件cactus

    Cactus是一个基于JUnit框架的简单测试框架,用来单元测试服务端Java代码。Cactus框架的主要目标是能够单元测试服务端的使用Servlet对象的Java方法如HttpServletRequest,HttpServletResponse,HttpSession等

    使用EJB+Struts1.3+Ant+Cactus+DbUnit+JMeter+StrutsTest实现测试4

    在本文中,我们将深入探讨如何使用一系列技术和工具,如EJB、Struts1.3、Ant、Cactus、DbUnit、JMeter以及StrutsTest,来实现一个完整的测试流程,针对一个基于Java的企业级应用程序进行全面的测试。这些技术在软件...

    使用EJB+Struts1.3+Ant+Cactus+DbUnit+JMeter+StrutsTest实现测试2

    本项目利用一系列强大的工具,如EJB(Enterprise JavaBeans)、Struts 1.3、Ant构建工具、Cactus测试框架、DbUnit数据库单元测试工具、JMeter性能测试工具以及StrutsTest扩展,来实现一个全面的测试流程。...

    Developing and Unit Testing with Cactus

    Cactus是Apache Software Foundation(ASF)Jakarta项目下的一个开源子项目,主要功能在于提供一种简单且高效的框架来对服务器端的Java代码进行单元测试。这包括但不限于Servlets、EJBs、TagLibs、Filters等组件。...

    使用EJB+Struts1.3+Ant+Cactus+DbUnit+JMeter+StrutsTest实现测试3

    本项目"使用EJB+Struts1.3+Ant+Cactus+DbUnit+JMeter+StrutsTest实现测试3"正是针对这一目标进行的实践。下面将详细介绍这些技术及其在测试中的应用。 **EJB(Enterprise JavaBeans)** 是Java平台上的企业级组件...

    软件测试技术在J2EE项目中的应用

    TestSuite类则可以组合多个Testcase或TestSuite,实现对多个类的测试。 2. 整合测试:在单元测试基础上,整合测试关注模块间的交互。例如,Cactus作为JUnit的扩展,允许在服务器端执行测试,特别适用于测试EJB、...

    Cactus,MVC权限后台加上一个CMS

    通过这种方式,Cactus能实现对不同用户访问资源的精细控制,确保系统的安全性。权限管理通常涉及到登录认证、授权以及会话管理等环节。 CMS系统是Cactus的另一个关键特性。CMS允许非技术人员创建、编辑和管理网站...

    JUnit教程(测试框架)

    例如,Cactus框架扩展了JUnit,使其能够对Servlet、JSP等Web组件进行单元测试;而HttpUnit则提供了对Web应用程序的功能单元测试支持;JsUnit专为JavaScript的单元测试设计。 #### 集成与自动化 为了进一步提高测试...

    CACTUS

    CACTUS是一个与字体设计相关的主题。在计算机和图形设计领域,字体是至关重要的元素,它们不仅用于传达信息,还对整体视觉效果产生深远影响。"CACTUS"可能指的是一个特定的字体系列、字体库或者一个与仙人掌主题相关...

    6-Cactus.rar

    提到“需要的同学可以看看”,这暗示了该文件可能与教育、学习或共享资源有关,适合对Cactus(仙人掌)主题有兴趣或者正在学习相关知识的学生或爱好者。 由于标签和压缩包子文件的文件名称列表只给出了"6-Cactus",...

    语言技术语言技术语言技术

    Cactus是在JUnit基础上扩展的,专门用于Java Web应用的单元测试,包括Servlet、Filter和JSP。在Cactus中,你可以通过继承特定的基类,如`ServletTestCase`、`FilterTestCase`或`JspTestCase`,来编写针对这些Web组件...

    有向cactus判定的证明

    本文旨在通过对有向Cactus图的特性进行深入分析,提出一种高效的判定算法,该算法基于深度优先搜索(DFS)原理,相较于传统的“缩圈”算法,不仅简化了实现难度,而且提高了效率。 #### 二、基本概念与定义 **有向...

    测试实践:Eclipse 之 JUnit

    命名测试类时,应清晰表明其为测试类并揭示测试内容。例如,可以将测试类命名为原类名加上“Test”后缀。但需要注意,这种方法在TDD中可能导致问题,因为测试可能在实际类存在之前编写,或者一个测试可能覆盖多个...

    Cactus 业务流程执行平台的研究和实现

    《Cactus 业务流程执行平台的研究与实现》 在当今数字化时代,业务流程管理(Business Process Management, BPM)已经成为企业提升效率、优化运营的关键。Cactus 业务流程执行平台是这样一款工具,它集成了多种技术...

    Python-Cactus设计师设计的静态站点生成器

    **Python-Cactus设计师设计的静态站点生成器** Python-Cactus是一款专为设计师打造的静态站点生成器,它基于Python编程语言,并采用了强大的Django模板引擎。Cactus的主要目的是简化静态网站的创建流程,使得设计师...

Global site tag (gtag.js) - Google Analytics