亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Mockito Hello World

2019-11-14 23:42:53
字體:
來源:轉載
供稿:網友
Mockito Hello WorldMockito Hello World項目配置  IDE是Intellij IDEA,用gradle配置項目.  新建一個java項目,gradle中需要有這個:
repositories { jcenter() }dependencies { testCompile "org.mockito:mockito-core:1.+" }

單元測試用JUnit 4,所以gradle文件如下:
apply plugin: 'java'apply plugin: 'idea'sourceCompatibility = 1.5version = '1.0'repositories {    mavenCentral()    jcenter()}dependencies {    testCompile group: 'junit', name: 'junit', version: '4.11'    testCompile "org.mockito:mockito-core:1.8.5"}
  寫好之后在命令行執行:gradleidea  相關的包就會下載好,并出現在這里:Hello World程序  想著寫一個HelloWorld說明一下Mockito怎么用,結果寫著寫著就寫復雜了.  先看代碼:
package com.mengdd.examples.mockito;public class HelloWorld {    PRivate MyRobot mRobot;    public MyRobot getRobot() {        return mRobot;    }    public void setRobot(MyRobot robot) {        this.mRobot = robot;    }    /**     * This is the method we want to test.     * When there is an robot, this method return the robot's information     * otherwise, return some sorry text     */    public String sayHello() {        MyRobot robot = getRobot();        if (null != robot) {            return robot.getSomeInfo();        }        return "No robot here, sorry!";    }    /**     * MyRobot class     */    public static class MyRobot {        /**         * Get some information from somewhere, the implementation may varies         */        public String getSomeInfo() {            return "Hello World -- From robot";        }    }}
  這段代碼里面包含了一個HelloWorld類和一個內部靜態類MyRobot(我的機器人).  HelloWorld中有一個方法叫sayHello(),是我們要測的方法.  它會判斷成員變量是否為空,不為空則調用其方法獲取一些信息,否則返回一條提示信息.  -------------------  這里插播一下,關于內部類的介紹可以參見以前的一篇筆記:http://www.49028c.com/mengdd/archive/2013/02/08/2909307.html  內部靜態類和內部非靜態類可以類比:靜態成員變量和非靜態成員變量.  -------------------  測試類代碼如下:
package com.mengdd.examples.mockito;import org.junit.Test;import static org.hamcrest.CoreMatchers.is;import static org.junit.Assert.assertThat;import static org.mockito.Mockito.mock;import static org.mockito.Mockito.when;public class HelloWorldTest {    @Test    public void testSayHelloWhenThereIsRobot() throws Exception {        // We want to test the sayHello() method in the class HelloWorld.        // But we don't care about how MyRobot get its information.(We can treat it as external interface).        // Maybe the robot rely on many complicated things.(Although it's simple in this case.)        // And when the robot's actions change in the future, we don't need to change this test case.        // We can mock the MyRobot's action to make it simple and just test whether sayHello() can do its own work.        // Mock steps        HelloWorld.MyRobot robot = mock(HelloWorld.MyRobot.class); // Mock MyRobot class        String mockInfo = "some mock info";        when(robot.getSomeInfo()).thenReturn(mockInfo); // Set behavior for mock object        // real object        HelloWorld helloWorld = new HelloWorld();//This is the real objec we want to test        helloWorld.setRobot(robot);//set the mock robot to real object        // execute the target method we want to test        String result = helloWorld.sayHello();        // assert the result is what we want to have        assertThat(result, is(mockInfo));    }}
  因為我們要測試的是HelloWorld的sayHello()方法是否能正常工作.  我們需要假定其中robot的行為是正常的(我們并不關心robot實際上做的工作,以及它怎么做),所以這里用到了mock.  比如如果機器人的實現中要發送一個請求,我們這里就是直接mock它得到的結果,而不是真的去發這個請求.  就好像準備好了所需要的所有外部條件,看sayHello()方法的表現是否能符合我們的預期.  為了全面起見,測試了sayHello()的另一種case,這里沒有用到mockito.
@Testpublic void testSayHelloWhenThereIsNoRobot() throws Exception {    HelloWorld helloWorld = new HelloWorld();    helloWorld.setRobot(null);    String result = helloWorld.sayHello();    assertThat(result, is("No robot here, sorry!"));}
參考資料  官網:http://mockito.org/  官方文檔:http://site.mockito.org/mockito/docs/current/org/mockito/Mockito.html  Mockito at github: https://github.com/mockito/mockito  可以在這里看版本號:http://mvnrepository.com/artifact/org.mockito/
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩免费av一区二区| 国产日韩精品在线观看| 日本亚洲欧美三级| 欧美在线免费视频| 国语自产在线不卡| 亚洲一区免费网站| 国产精品一区二区女厕厕| 精品国产欧美一区二区三区成人| 亚洲伊人久久综合| 亚洲第一区在线| 一区二区三区 在线观看视| 日韩在线观看你懂的| 亚洲精品久久在线| 色综合久久中文字幕综合网小说| 亚洲三级av在线| 国产va免费精品高清在线观看| 亚洲性线免费观看视频成熟| 日韩在线精品一区| 国产国语videosex另类| 亚洲色图欧美制服丝袜另类第一页| 亚洲一区久久久| 色综合天天综合网国产成人网| 精品视频久久久| 久久久久久久香蕉网| 久久在线视频在线| 日本不卡高字幕在线2019| www.欧美精品| 日韩精品电影网| 欧美在线观看网站| 中文字幕亚洲一区在线观看| 欧美另类第一页| 久久久免费观看视频| 久久精品免费电影| 亚洲精品一区二区三区不| 日韩精品在线私人| 北条麻妃久久精品| 午夜精品一区二区三区在线| 欧美日韩中文字幕在线| 91精品视频专区| 亚洲国产91精品在线观看| 亚洲欧洲在线视频| 国产日韩换脸av一区在线观看| 国产精品美女av| 91社区国产高清| 久久久免费高清电视剧观看| 日韩最新在线视频| 性色av一区二区三区在线观看| 日韩中文理论片| 国产一区二区精品丝袜| 欧美激情免费观看| 高清欧美电影在线| 欧美福利小视频| 亚洲国产日韩欧美在线99| 久久乐国产精品| 欧美在线观看一区二区三区| 18一19gay欧美视频网站| 久久激情视频免费观看| 亚洲男人天堂2024| 欧美日韩加勒比精品一区| 欧美精品第一页在线播放| 国产精品爱久久久久久久| 成人久久久久久| 久久久久久久电影一区| 精品久久久久久久久久久久久久| 亚洲精品国产综合区久久久久久久| 欧美精品免费播放| 欧美猛交ⅹxxx乱大交视频| 国产精品激情av在线播放| 92看片淫黄大片欧美看国产片| 97精品国产91久久久久久| 亚洲999一在线观看www| 亚洲va久久久噜噜噜| 在线电影av不卡网址| 91精品久久久久久久久久入口| 一本大道亚洲视频| 亚洲人成电影网站色xx| 日本国产精品视频| 亚洲在线www| 欧美日韩国产影院| 国产精品福利久久久| 中文字幕久热精品视频在线| 97国产精品视频| 成人福利网站在线观看11| 亚洲天堂一区二区三区| 日韩欧美一区二区在线| 日韩免费在线看| 亚洲精品www久久久| 欧美最猛性xxxxx免费| 国产精品久久久久秋霞鲁丝| 成人欧美一区二区三区在线湿哒哒| 亚洲精品电影在线观看| 日韩在线视频中文字幕| 亚洲色图综合久久| 午夜精品一区二区三区av| 一区二区亚洲欧洲国产日韩| 免费97视频在线精品国自产拍| 久久福利网址导航| 欧美日韩第一页| 亚洲精品www| 九九热这里只有在线精品视| 久久天天躁狠狠躁夜夜av| 7m精品福利视频导航| 国产999精品久久久| 亚洲日韩欧美视频一区| 欧美激情在线观看视频| 日韩av电影免费观看高清| 中文字幕亚洲一区二区三区五十路| 亚洲加勒比久久88色综合| 国产精品久久久久久久久久三级| 日韩一区二区三区在线播放| 久久中国妇女中文字幕| 国产偷国产偷亚洲清高网站| 国产精品免费视频久久久| 97成人精品视频在线观看| 中文字幕亚洲图片| 日韩精品在线观看一区| 欧美日韩国产色| 欧美亚洲国产日本| y97精品国产97久久久久久| 欧美日韩国产综合视频在线观看中文| 美女视频久久黄| 大胆欧美人体视频| 国产在线观看91精品一区| 国产美女久久久| 欧美精品在线观看91| 色阁综合伊人av| 国产精品久久久久久搜索| 欧美精品video| 亲子乱一区二区三区电影| 亚洲18私人小影院| 久久久久国产视频| 成人情趣片在线观看免费| 国产精品高潮呻吟久久av无限| 国产亚洲人成a一在线v站| 欧美性xxxxxx| 欧美激情一区二区三区在线视频观看| 日韩一区二区精品视频| 中文字幕精品一区久久久久| 中文字幕亚洲欧美日韩2019| 精品久久久久久亚洲国产300| 午夜精品久久久久久99热软件| 成人a在线观看| 久久综合88中文色鬼| 久久精品国产精品| 91国偷自产一区二区三区的观看方式| 国产日韩精品综合网站| 97视频免费在线看| 欧洲美女7788成人免费视频| 亚洲最大福利视频网站| 国产精品老女人精品视频| 日韩av一区在线观看| 国产精品国内视频| 色狠狠av一区二区三区香蕉蜜桃| 久久九九亚洲综合| 91精品视频一区| 亚洲国产欧美一区二区三区久久| 欧美视频一二三| 亲爱的老师9免费观看全集电视剧| 97av在线视频免费播放| 久久人人爽人人爽人人片av高清| 亚洲国产欧美一区| 成人激情视频小说免费下载| 91极品女神在线| 九九精品视频在线|