Apexのテストで変数部分にテストが通ってくれない時

きっと基本を理解してないんだと思いますが、単純な話でした。

JsonをGETで引き渡して、それをApexクラスにしてapex内で使用するべく、
apex2Jsonとして以下のようなクラスを作成していた。

public class Json2Apex{
    public String user_id;
    public String dummy;

    public static Json2Apex parse(String json){
        return (Json2Apex) System.JSON.deserialize(json, Json2Apex.class);
    }
}

ちゃんとJSONには、user_iddummyの値を持たせて変換させ、
その変数にもきっちりアクセスした状態でも、テストを走らせてみると、
parseメソッド部分しか通ってない。
全体の行数が少ないので、パーセンテージとしては、50%
これでは他のリリースに影響が大なので、調べてみると、単純な事で、
{get; set;}をつけろ、ってだけだった。
以下のようにつける。

public String user_id{get; set;}
public String dummy{get; set;}

これだけでテストコードも変更することなく通り、無事、100%を達成できました。

参考:http://salesforce.stackexchange.com/questions/10018/testing-apex-classes-created-by-jsontoapex

   このエントリーをはてなブックマークに追加