java 測試 (junit+ junit 斷言 + postman)

    實際開發中,除了開發,我想測試也是必不可少的一環吧。從簡單的@Test 、main 方法測試 到 頁面測試 ,斷言,postman。 bug是無處不在,隨時發生的事,高效率的調試、檢測能夠節省大量的開發時間。 思路一肯定,敲代碼也就花不了多少時間,但是敲完代碼後的調試,檢測每每會花費許多時間。 甚者除了頁面調試(經過jsp,HTML頁面帶參過來到後臺,後臺返回參數給頁面) 其餘的一點都不會。記得去年的時候,公司作個金融產品,是跟外部的團隊合做一塊兒開發的。因爲前端頁面是由外部團隊提供給咱們的,因此有時候他們還未提供給咱們頁面的時候,咱們就本身根據接口文檔等把後臺業務相關邏輯處理好。 某天上午,公司一個新來的新手跑過來問我:XXX, 代碼寫完啦,沒有頁面怎麼測啊。 我當時就感到奇怪,沒有頁面就不能測嗎? 我反問了他一句, 他請我過去幫忙教教他,我也就回了句本身去百度就沒理了。那時候想着就是雖然測試不是咱們的主業,有測試,但是咱們開發人員自測的手段仍是要有一些的吧。恰好如今已經開始寫博客了,今天也有空,也就寫篇相關的博客,記錄記錄html

    閱讀此篇博客前閱讀本人的junit 經常使用註解 + junit 斷言詳解 + junit 運行(eclipse + IDEA)前端

    1. @Test , main 方法web

    這個是最簡單測試了,通常用於測試一些方法,實現,好比你寫了個方法,要想看看能不能用,寫了一個算法,想看看對不對,你就能夠經過這些方法來測試。算法

    2. junit 經常使用註解 + junit 斷言 Assert(請結合junit 經常使用註解 + junit 斷言詳解這篇博客 理解):spring

//junit 測試(包括斷言,測試集等)
public class Test3 {


 /*   @BeforeClass
    public static void beforeClass(){
        System.out.println("beforeClass");
    }


    @Before
    public void before(){
        System.out.println("before");
    }*/

    @Test(timeout = 10)
    public void test1(){
        Assert.assertEquals(1,1);
//            Assert.fail("fail");
        }

    @Test(expected = ArithmeticException.class)
    public void test2(){
        boolean flag = true;
        Assert.assertTrue(flag);
        Assert.assertEquals(1,1);
    }


        @Ignore
    public  void ignore(){
            System.out.println("ignore");
        }


 /*   @After
    public void after(){
        System.out.println("after");
    }

    @AfterClass
    public static void afterClass(){
        System.out.println("afterClass");
    }
*/

}

  3.junit 對SpringMVC 的Controller  進行測試:(注意這是基於ssm 框架 web 工程 的spring MVC,像spring boot 集成的是不同的):後端

// 使用spring 測試集測試
@RunWith(SpringJUnit4ClassRunner.class)
// 配置上下文配置
@ContextConfiguration("classpath*:spring-mvc.xml")
public class TestController {

    // 模擬request,response
    private MockHttpServletRequest request;
    private MockHttpServletResponse response;

    // 注入loginController
    @Autowired
    private LoginController loginController ;

    // 執行測試方法以前初始化模擬request,response
    @Before
    public void setUp(){
        request = new MockHttpServletRequest();
        request.setCharacterEncoding("UTF-8");
        response = new MockHttpServletResponse();
    }

    /**
     * @Title:testLogin
     * @Description: 測試用戶登陸
     */
    @Test
    public void testLogin() {
        try {
            request.setParameter("userName", "admin");
            request.setParameter("password", "2");
            Assert.assertEquals("login",loginController.loginTest(request,response)) ;
        } catch (Exception e) {
            e.printStackTrace();
        }
    }


}

  4. postman  自測 (postman 通常是用於自測 restful 類型的接口, 用於自測先後端對接調用的接口等)(這是postman的基礎功能 ):spring-mvc

    請參考 https://blog.csdn.net/fxbin123/article/details/80428216  我的認爲講的較詳細了restful

 

  在此,但願此篇博客能幫助到一些人。有不足之處,有問題的話能夠博客上Q我,看到就會回覆mvc

 

  參考於https://blog.csdn.net/fxbin123/article/details/80428216 框架

相關文章
相關標籤/搜索