我对Junit非常陌生,我目前正在尝试测试一些API,这些API与带有许多复选框和几个文本字段的简单UI相对应。
我现在想的是用下面的结构来写一些东西:
testButtonOne() testButtonTwo() 。。。 testButtonTen() testCheckboxOne()具有许多输入,如空格、无效字符、超长字符串等 testCheckboxTwo()具有许多输入,如空格、无效字符、超长字符串等
我尝试在两个文件中编写测试,一个是单次运行,另一个是参数化运行,但问题是我必须在“之前”写两次“之前”,所以我想知道这样写测试的更好方法是什么。
发布于 2018-02-15 02:10:48
您应该使用任何一个https://github.com/junit-team/junit4/wiki/parameterized-tests
或者更好,我认为你应该看看https://github.com/pholser/junit-quickcheck
使用junit-quickcheck的示例项目参见下面的示例github项目https://github.com/bfayette/lottery/blob/master/src/test/java/com/silanis/lottery/PrizeCalculatorTest.java
发布于 2018-02-15 00:22:16
你可以在这里看:Testing GUI with JUnit
其主要思想是,它更倾向于将GUI与业务逻辑和其他层分离。这样,GUI层将只包含GUI特定的代码,因此测试将变得更容易,其价值也将减少。这样,您就可以在GUI类中模拟您的服务,并验证,例如,如果您在EditBox中输入一些文本,它的值将作为特定服务调用的参数(在本例中,我不认为您需要编写参数化的单元测试),然后可以单独测试服务层。您可以使用您的验证服务,也可以单独测试它。使用这种方法测试通常会变得更干净、更具体,而不是那么宽泛,这就是在单元测试背后放置的想法。
如果仍然需要参数化的单元测试来测试GUI,则可以将参数化测试和非参数化测试组合在一个测试类的嵌套类中,如下所述:https://stackoverflow.com/a/28203229/9329760。
https://stackoverflow.com/questions/48798274
复制相似问题