WEB开发网
开发学院软件开发Java Eclipse富Ajax开发平台在CAS Software AG项目中的... 阅读

Eclipse富Ajax开发平台在CAS Software AG项目中的应用

 2009-12-02 00:00:00 来源:WEB开发网   
核心提示: 单元测试中有时也会遇到的一个问题是对服务器和/或数据层进行测试,通常单元测试代码直接与服务器、数据库等直接通信来完成它们的测试,Eclipse富Ajax开发平台在CAS Software AG项目中的应用(6),这种类型的测试有其缺陷,CAS的开发者们也遇到过,如果对单元测试来说不需要更新用户界

单元测试中有时也会遇到的一个问题是对服务器和/或数据层进行测试。通常单元测试代码直接与服务器、数据库等直接通信来完成它们的测试。这种类型的测试有其缺陷,CAS的开发者们也遇到过,单元测试由于需要和其他层的通信而变得很慢。一个通常的的解决办法是用假对象,在测试中用假对象来代替“真对象”。在 java中有很多假对象的框架,包括Mockito、EasyMock和JMock,它们用来简化假对象的创建过程。对JavaScript来说,也有这样的假对象框架比如JSMock和Mock4JS。

之前您看到了用于测试JavaScript层的单元测试代码,之后您将会看到一段测试Java层的例子。对Eclipse 1.1来说,这个框架框架基本上包含了相当于JUnit的测试的功能,不同的是它可以使需要OSGi环境的测试正常运行。如果您需要执行期间更新UI的单元测试,您可以非常简单地从org.eclipse.rap.junit.RAPTestCase扩展。但是,如果对单元测试来说不需要更新用户界面,那么相应地,你可以扩展JUnit的org.junit.TestCase类。下面是一个关于包含了用户界面交互的RAP的测试用例:

public class RapJUnitTest extends RAPTestCase { 
  public void testOpenView() { 
   try { 
    IWorkbenchPage page = getPage(); 
    page.showView( "org.eclipse.rap.demo.DemoTreeViewPartI" ); 
   } catch( PartInitException e ) { 
    e.printStackTrace(); 
   } 
   assertEquals( 1, getPage().getViewReferences().length ); 
 
   getPage().hideView( getPage().getViewReferences()[ 0 ] ); 
   assertEquals( 0, getPage().getViewReferences().length ); 
  } 
 
  private IWorkbenchPage getPage() { 
   IWorkbench workbench = PlatformUI.getWorkbench(); 
   IWorkbenchWindow window = workbench.getActiveWorkbenchWindow(); 
   return window.getActivePage(); 
  } 
} 

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:Eclipse Ajax 开发平台

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接