TestNG 中@DataProvider 和@Parameters 的区别

Difference between @DataProvider and @Parameters in TestNG

使用 @Parameters,您提供的参数值被硬编码在测试配置文件 testng.xml 中。此外,据我所知,无法指定使用不同参数值执行相同的测试。您为每个参数提供一个值,仅此而已。

使用 @DataProvider,您提供了一种生成参数值的方法。它们不需要在任何地方进行硬编码:您可以即时计算它们。例如,您可以从网站获取当前温度并将结果值用作参数值。或者您可以从 CSV 文件中读取它们。

另外,您可以为参数提供多组值。这样,您可以 运行 使用每个所需的参数值组合多次进行相同的测试。