容错测试1-aop实现(2)

发表于:2013-07-22来源:淘测试作者:秦渊点击数: 标签:容错测试
1. 切面处理类 , 在触发点加上特殊的处理逻辑 : 定义参数 , 可以注入预期值 , 延迟 ,sleep 等 注入的代码 , 以注入预期对象为例 , 其他(sleep,exception)雷同省略
  • 1.     切面处理类,在触发点加上特殊的处理逻辑:

定义参数,可以注入预期值,延迟,sleep

 

 

注入的代码,以注入预期对象为例,其他(sleep,exception)雷同省略

 

  • 2.     如果需要多线程处理,则增加多线程处理方法.此部分非本文重点,只是简单说明一下结构如下,单个线程(MockThread)里可以注入mock对象&预期值&校验器,然后通过ThreadFactory管理各个线程及调度策略,主要使用在注入延迟后,进行一些并发操作的校验

 

  • 3.  使用过程,大体分为3,如下:
    • a)  配置: 配置切面,选择mock触发点,配置连接点的逻辑,选择处理方式

<bean

        id="mockAspect"

        class="com.taobao.azeroth.util.MockTestAspect" >

        <property name="sleepTime" value="0"/>

        <property name="flag" value="false"/>

 </bean>

    <aop:config proxy-target-class="false" >

        <aop:pointcut

                id="springTestPointcut"

                expression="execution(* com..Hello.hello(..))" /> 

        <aop:aspect

            id="aspectSpringSleep"

            ref="mockAspect" order="100">         

            <aop:around

                method="mockMethod"

                pointcut-ref="springTestPointcut" />

原文转自:http://www.taobaotesting.com/blogs/2443