写了一个action负责文件下载的方法,大概代码如下这样子:
java 代码
- public class TravelAdminUploadAction extends BaseAction{
-
- private Resource resource;
-
- private ResourceService resourceService;
-
- private FileInputStream inputStream;
-
- private String attachmentName;
-
- public String downLoadFile() throws Exception {
- resource = resourceService.getResource(id);
- if(resource.getSumLoadCount() != null ){
- resource.setSumLoadCount(resource.getSumLoadCount() + 1 );
- }else{
- resource.setSumLoadCount(1);
- }
- resourceService.updateResource(resource);
- attachmentName = URLEncoder.encode(resource.getAttachmentName(),"UTF-8");
- File input = new File(resource.getResourceUrl());
- inputStream = new FileInputStream(input);
- return SUCCESS;
- }
- 。。。。。。
- }
写的测试代码大概如下这样子:
java 代码
- public class TravelAdminUploadActionTest extends TestCase {
-
- private MockControl control;
-
- private ResourceService resourceService;
-
- protected void setUp() throws Exception {
- control = MockControl.createControl(ResourceService.class);
- resourceService = (ResourceService) control.getMock();
- }
-
- public void testDownLoadFile() throws Exception {
- Resource resource = new Resource();
- resource.setAttachmentName("xxxxxx");
- resource.setResourceUrl("c://WINDOWS/winhelp.exe");
- resourceService.getResource(resource.getId());
- control.setReturnValue(resource);
- resourceService.updateResource(resource);
- control.setDefaultVoidCallable();
- control.replay();
- TravelAdminUploadAction action = new TravelAdminUploadAction();
- action.setId(resource.getId());
- action.setInputStream(new FileInputStream(new File(
- "c://WINDOWS/winhelp.exe")));
- action.setResourceService(resourceService);
- action.setResource(resource);
- assertEquals(Action.SUCCESS, action.downLoadFile());
- control.verify();
- }
- }
测试是通过了,但是单元测试是不应该跟环境偶合在一起的,
现在测试环境里面用了c://WINDOWS/winhelp.exe这个文件,我特意找的window上都有的文件,
但是放在linux下面的话,这个测试肯定就通不过了,
不知道各位有没有碰到这样的情况,是怎样解决的,可否指点一二
分享到:
- 2007-03-06 09:18
- 浏览 4572
- 评论(2)
- 论坛回复 / 浏览 (2 / 3876)
- 查看更多
相关推荐
- 提供了Mock Object工具,方便对Action进行单元测试。 - 通过日志框架如Log4j进行调试,追踪应用运行过程。 10. **最佳实践**: - 使用ActionSupport基类,它提供了很多默认行为和便利方法。 - 尽量保持Action...
11. **测试**:WebWork支持单元测试和集成测试,文档会讲解如何编写和运行针对WebWork应用的测试。 12. **最佳实践**:除了技术细节,文档还会提供一些开发和设计的最佳实践,帮助开发者遵循良好的编程习惯。 通过...
从给定的文件信息来看,标题和描述都指向了“webwork中文文档”,这暗示了文档的主要内容将围绕WebWork框架展开。WebWork是一个开源的Java Web应用开发框架,它在2000年初非常流行,是Struts框架的一个替代方案,...
10. **测试支持**:WebWork1.4版本提供了JUnit集成,便于进行单元测试和集成测试,确保代码的质量。 "www.pudn.com.txt"可能是一个文档,可能包含了一些关于WebWork的学习资源或教程链接。而"webwork"这个文件可能...
8. **测试与调试**:提供关于单元测试、集成测试和调试WebWork2应用的方法,可能包括JUnit和Mockito的使用。 9. **最佳实践与性能优化**:分享一些开发WebWork2应用的最佳实践,以及如何优化应用程序性能,如减少...
9. **测试工具**:WebWork2提供了单元测试和集成测试的支持,便于开发者进行质量保证。 10. **最佳实践和示例**:官方文档会包含一系列最佳实践指导和示例代码,帮助开发者快速上手并避免常见陷阱。 通过阅读...
WebWork支持对Action进行单元测试,你可以使用JUnit或其他测试框架。测试Action时,可以模拟HTTP请求,直接调用Action方法并验证结果和副作用。WebWork提供了Mock Objects和工具来简化测试过程。 这只是WebWork 2.0...
这通常包括下载WebWork的JAR文件并将其添加到项目的类路径中,配置web.xml以启动WebWork的前端控制器。然后,创建一个简单的"HelloWorld"应用,这通常是学习新框架的第一步。在WebWork中,这将涉及创建一个Action类...
6. **Action的单元测试**:WebWork提供了一套测试工具,使得开发人员可以方便地对Action进行单元测试。这包括模拟HTTP请求,设置ActionContext,以及验证Action执行后的结果。通过单元测试,可以确保Action的功能...
- **Action的单元测试**:为了确保Action的正确性,可以通过单元测试的方式进行验证。 - **ResultType**:用于指定Action执行后返回的结果类型,如转发、重定向等。 - **表达式与EL和OGNL**:OGNL是Xwork提供的强大...
它包括了WebWork基础、安装指南、HelloWorld示例、Action动作的介绍以及如何进行Action的单元测试等。此外,还涵盖了ResultType(结果类型)的使用、表达式语言EL和OGNL的介绍以及值堆栈(OgnlValueStack)的概念。...
9. **测试支持**:WebWork提供了测试工具和API,方便进行单元测试和集成测试。 “webwork中文参考手册”很可能详细讲解了上述概念,并配有实例和代码示例,帮助初学者逐步理解并掌握WebWork的使用。在学习过程中,...
6. **junit.jar**(可能在测试环境中):单元测试框架,用于对WebWork组件进行测试。 7. **其他的依赖JAR包**:如log4j.jar(日志记录)、commons-lang.jar(通用语言工具)、commons-fileupload.jar(文件上传)等...
- WebWork支持Action的单元测试,有助于确保业务逻辑的正确性。 - **ResultType**: - 用于定义Action执行完成后返回的结果类型。 - 支持多种结果类型,如JSP、Velocity、FreeMarker等。 - **表达式语言**: - ...
此外,还有用于帮助1.x版本向2.x版本迁移的`webwork-migration.jar`文件,以及包含API文档、单元测试文档等的`docs`目录,以及源码和运行时依赖的`lib`和`src`目录。 #### 集成至Web容器 作为一款J2EE Web框架,...
9. **测试与调试**:WebWork2提供了良好的测试支持,你可以配置Action的模拟对象以进行单元测试,同时通过日志配置来帮助调试。 10. **安全设置**:WebWork2允许你配置安全性相关的设置,如防止XSS攻击、CSRF防护等...
这个压缩包包含的是一组经过验证可用的WebWork所需的JAR文件,避免了用户在配置过程中因使用错误的或不可用的库而遇到的问题。 在WebWork框架中,JAR文件扮演着核心组件的角色,它们提供了框架的运行时环境和各种...
- **易于测试**:由于 Spring 管理了 Action 的生命周期和依赖,可以方便地进行单元测试,只需配置好 Mock 对象即可。 - **重用**:Spring 提供的事务管理、AOP(面向切面编程)等功能可以被 Action 类轻松利用,...
10. **测试(Testing)**:框架提供了测试工具和API,便于对Action进行单元测试,确保代码的质量和功能的正确性。 通过“Webwork2_guide.pdf”,读者将能够深入学习如何利用Webwork2的各种特性,包括Action的设计、...
8. **Testing and Debugging**:WebWork提供了单元测试工具和调试工具,便于开发和维护高质量的代码。 9. **ActionSupport Class**:这是WebWork提供的一个基类,包含了一些常用的方法,如验证、消息管理等,开发者...