我有以下测试方法,它从 excel 表中获取参数。假设我有 5 个测试用例,那么这个方法将执行 5 次。但是当我执行第一个测试用例 (TC01) 时,Test() 方法名称应该在运行时根据 Test_TC01()、Test_TC02() 等测试脚本更改。
@Test
public void Test() throws Exception {
ExcelUtils.setExcelFile(System.getProperty("user.dir") + "\\src\\data_engine\\DataEngine.xlsx");
DOMConfigurator.configure("log4j.xml");
String Path_OR = System.getProperty("user.dir") + "\\src\\config\\OR.properties";
FileInputStream fs = new FileInputStream(Path_OR);
OR = new Properties(System.getProperties());
OR.load(fs);
DriverScriptTest startEngine = new DriverScriptTest();
startEngine.execute_TestCase();
}
请分享您的意见
最佳答案
简而言之,你不能。
您可以做的是创建一个新类(在运行时!),编译并运行它。
是的,我说的是您编写代码:
- 创建类(在临时文件中)
- 使用Java Compiler API编译类。
- 调用已编译类实例的方法。
祝你好运!我已经使用过这段代码,它非常有趣,但几乎总是矫枉过正,除非你真的需要它。
关于java - 如何在运行时在 Java 中更改方法名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36127935/