开发者

What's a good way of deserializing data into mock objects?

开发者 https://www.devze.com 2022-12-10 18:54 出处:网络
I\'m writing a mock bac开发者_运维百科kend service for my flex application. Because I will likely need to add/edit/modify the mock data over time, I\'d prefer not to generate the data in code like thi

I'm writing a mock bac开发者_运维百科kend service for my flex application. Because I will likely need to add/edit/modify the mock data over time, I'd prefer not to generate the data in code like this:

var mockData = new Array();
mockData.push(new Foo(1, "abc", "xyz"));
mockData.push(new Foo(2, "def", "xyz"));
... 

Rather I'd like to store the data in a file in some format that it can be easily serialized into my strongly-typed value objects (i.e. Foo above). Ideally I'd like to create the data in a self-describing format (i.e. what data type each field is, what class it represents, etc)

Does this make sense? Any suggestions?


I would highly recommend the asx3m library. It easily allows serialization to a very readable XML format like this for an object of class Foo:

<com.example.Foo>
   <myVar>Something</myVar>
   <myArrList>
      <string>one</string>
      <string>two</string>
   </myArrList>
</com.example.Foo>

The code to de-serialize looks like this:

Asx3mer.instance.fromXML(someXMLObj)

The project site has some good examples and it's not too hard to get this off the ground.


Write a method to serialize an "inflated" version of your object. Put the output of that into a file and load it up as part of your test setup. When you want to edit the values, simply edit the xml file. I dont know if this is possible in flex but I will usually include these files as a resource in my test library so that I do not need to copy the file to any specific location for a test run.

0

精彩评论

暂无评论...
验证码 换一张
取 消