2016-08-30 66 views
0

如何測試setter和getters?如何測試setter和getter?

function someClass(){ 
    var data; 

    this.setData = function(value){ 
     // some complex logic 
    } 

    this.getData = function(){ 
     // some complex logic 
    } 
} 

是它執行使用setData和對的getData測試的較量在一個測試用例正確的方式?

+0

我測試這些功能。這看起來像JavaScript。你用什麼來測試框架? – duffymo

+0

通常getter和setter不會執行任何邏輯......如果「一些複雜的邏輯」在做一件事(SRP - 單一職責原則),那麼你可以編寫一個簡單的測試來檢查它。 如果這些功能是做不同的事情你應該有不同的測試每個。 – alfasin

+0

@alfasin,如果他們使用私有變量,如何分別測試每種方法? –

回答

2

僞代碼:

function yourTest() { 
    var sc = someClass() 

    sc.setData(someInputValue1) 
    assert.equals(someExpectedValue1, sc.getData()) 

    sc.setData(someInputValue2) 
    assert.equals(someExpectedValue2, sc.getData()) 
}