相关疑难解决方法(0)

如何编写单元测试以验证函数是否对其结果进行排序?

我有一个数据源,我可以从中请求一个(任何)国家/地区的人员列表,以及一个从该数据源检索人员并按字母顺序按名称对其进行排序的方法.我应该如何编写单元测试以确保我的方法的排序部分正常工作?

这就是我的SUT的样子:

class PeopleStuff {

    public IData data;

    public List<Person> getSortedPeopleForCountry(String countryName) {
        List<Person> people = data.getPeopleForCountry(countryName);

        Comparator nameComparator = new PersonNameComparator();
        Collections.sort(people, nameComparator);

        return people;
    }

}
Run Code Online (Sandbox Code Playgroud)

这就是我的单元测试的样子:

@Test public void testGetPeopleSortsByPeopleName() {
    String COUNTRY = "Whatistan";

    // set up test (the 3 lines below are actually in a @Before setup method)
    PeopleStuff peopleStuff = new PeopleStuff();
    IData mockData = createNiceMock(IData.class);
    peopleStuff.data = mockData;

    // set up data
    List<PersonName> mockPeopleList = new ArrayList<PersonName>();
    mockPeopleList.add(new Person(COUNTRY, "A"));
    mockPeopleList.add(new Person(COUNTRY, "D")); …
Run Code Online (Sandbox Code Playgroud)

java junit unit-testing easymock

8
推荐指数
1
解决办法
1万
查看次数

标签 统计

easymock ×1

java ×1

junit ×1

unit-testing ×1