Java方法别名
|
我正在开发单元测试,在创建测试数据时,可以从可重用性中受益匪浅。但是,对于相同的测试数据(API参数),我需要做不同的事情(API调用)。
我想知道以下成语在Java中是否可行。
Class RunTestScenarios {
void runScenarioOne (A a, B b, C c) {
........
}
void runScenarioTwo (A a, B b, C c) {
........
}
void runScenario (/* The scenario */ scenarioXXX) {
A a = createTestDataA();
B b = createTestDataB();
C c = createTestDataC();
scenarioXXX(a, b, c);
}
public static void main (String[] args) {
runScenario(runScenarioOne);
runScenario(runScenarioTwo);
}
}
本质上,我不想到处重复以下内容:
A a = createTestDataA();
B b = createTestDataB();
C c = createTestDataC();
据我所知,这种混叠(scenarioXXX)是不可能的,但我很乐意予以纠正,或者如果有人可以提出可能的设计替代方案来实现此效果,我将非常高兴。
顺便说一句,我知道命令模式可以做到这一点。但不是我想要的。
谢谢,
我们
没有找到相关结果
已邀请:
4 个回复
朗排谎纷瘟
和
方法初始化每个测试的新对象。
倾坞髓
念炯
室邢
然后,您向数据提供者求助:
就是这样,当您运行测试时,将使用正确的参数(仅创建一次)调用它们。尽管这在必须加载大量资源的情况下更为有用,例如,目录中的所有文件或类似的东西。 您只需运行该类中的所有方法。 在这里阅读更多: http://testng.org/doc/documentation-main.html#parameters-dataproviders 顺便说一句:TestNG作为Intellj IDEA的插件包含在内