• Maven简单的配置Junit测试及使用简单的mock


    1、maven依赖配置如下

            <dependency>
                <groupId>org.mockito</groupId>
                <artifactId>mockito-all</artifactId>
                <version>1.9.5</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.11</version>
                <scope>test</scope>
            </dependency>
       <build>
            <plugins>
                <plugin>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <configuration>
                        <appendAssemblyId>false</appendAssemblyId>
                        <descriptorRefs>
                            <descriptorRef>jar-with-dependencies</descriptorRef>
                        </descriptorRefs>
                        <archive>
                            <manifest>
                                <mainClass>RunJob</mainClass>
                            </manifest>
                        </archive>
                    </configuration>
                    <executions>
                        <execution>
                            <id>make-assembly</id>
                            <phase>package</phase>
                            <goals>
                                <goal>assembly</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.5</version>
                </plugin>
            </plugins>
        </build>

    2、编写测试代码

    public class SimpleTest {
        @Test
        public void test() {
            Assert.assertTrue("a".equals("a"));
        }
    
        @Test
        public void testMock() {
            List m = mock(List.class);
            m.add(1);
            m.clear();
    
            verify(m).add(1);//验证执行过add(1)操作
            verify(m).clear();//验证执行过clear操作
        }
    
        @Test
        public void when_thenReturn() {
            //mock一个Iterator类
            Iterator iterator = mock(Iterator.class);
            //预设当iterator调用next()时第一次返回hello,第n次都返回world
            when(iterator.next()).thenReturn("hello").thenReturn("world");
            //使用mock的对象
            String result = iterator.next() + " " + iterator.next() + " " + iterator.next();
            //验证结果
            assertEquals("hello world world", result);
        }
    }
  • 相关阅读:
    [转]The Machine SID Duplication Myth (and Why Sysprep Matters)
    The Machine SID Duplication Myth (and Why Sysprep Matters)
    [转]Shell(Bash) mysql数据库操作
    [转]GNU Sourcehighlight 语法高亮代码
    [原]DRBD双主模式问题
    mpstat
    DRBD试用
    drbd双主模式问题
    虚IP的添加和删除
    为什么5%的技术人员开发效率是其他95%的20倍?
  • 原文地址:https://www.cnblogs.com/maxiaofang/p/6608081.html
Copyright © 2020-2023  润新知