GUI的JUnit测试私有方法[JavaFX]

时间:2017-10-16 10:18:26

标签: java unit-testing user-interface javafx junit

我在JavaFX应用程序中有一个var documents = new[] { new Document() { id = 1, ParentId = null, name = "fruits" }, new Document() { id = 2, ParentId = null, name = "vegetables" }, new Document() { id = 3, ParentId = 2, name = "tomatoes" }, new Document() { id = 4, ParentId = 1, name = "apples" }, new Document() { id = 5, ParentId = 4, name = "golden apples" }, new Document() { id = 6, ParentId = 4, name = "red apples" }, }; 类。班上做了很多事。其中一件事是显示表格中某些目录中包含的文件列表。只有具有正确命名约定的文件才会显示在表格中。

var lookup = documents.ToLookup(x => x.ParentId); Func<int?, IEnumerable<Document>> heirarchySort = null; heirarchySort = pid => lookup[pid].SelectMany(x => new[] { x }.Concat(heirarchySort(x.id))); IEnumerable<Document> sorted = heirarchySort(null); 类包含一个私有方法Controller,它接收文件列表并返回适用于命名约定的文件列表。然后返回的文件显示在表格中。 Controller类中没有公共方法。

我想对过滤功能进行单元测试(使用junit),但filterByNamingConvention方法应保持私有(因此不能在类外调用)。我该如何实施这个单元测试?我会避免反射模式。

这种方法会转到图书馆吗?但该方法只使用一次。

以下是代码的一部分:

Controller

0 个答案:

没有答案