TestNG结果的testng-results.xml中的"duration in ms"代表什么?
What does the "duration in ms" in testng-results.xml of TestNG result represent?
我是 Android 和 iOS 自动化的新手。我正在使用 Appium 来实现自动化。我已经在 TestNG 中为模拟器上的 运行 和 Android 应用程序编写了测试。我的代码在模拟器上启动应用程序,然后使用用户名和密码登录应用程序。我想找到登录应用程序所花费的时间。具体来说,单击 SIGN IN 按钮并出现主屏幕后所用的时间。我可以使用 testNG results.xml 文件吗,因为我看到它有:
以毫秒为单位的持续时间表示整个方法(@BeforeClass、@Test 等)花费的时间。如果你想检查登录性能,这不是一个好方法,因为你可以在这些方法中进行其他操作,而且 TestNG 也会在这里做一些事情。最好明确检查一下。类似于:
final Date startTime = new Date();
clickSignIn();
// wait until/check if home screen is properly displayed
// if it's not done in clickSignIn method (should be)
final Date endTime = new Date();
final long loginTime = endTime.getTime() - startTime.getTime(); // in ms
我会说 Date()
对代码计时非常不精确。我会建议另一个包裹:
long startTime = System.nanoTime();
----------------------call--your--function--here
long endTime = System.nanoTime();
long duration = (endTime - startTime);
System.out.println(duration / 1000000. + " ms.");
我是 Android 和 iOS 自动化的新手。我正在使用 Appium 来实现自动化。我已经在 TestNG 中为模拟器上的 运行 和 Android 应用程序编写了测试。我的代码在模拟器上启动应用程序,然后使用用户名和密码登录应用程序。我想找到登录应用程序所花费的时间。具体来说,单击 SIGN IN 按钮并出现主屏幕后所用的时间。我可以使用 testNG results.xml 文件吗,因为我看到它有:
以毫秒为单位的持续时间表示整个方法(@BeforeClass、@Test 等)花费的时间。如果你想检查登录性能,这不是一个好方法,因为你可以在这些方法中进行其他操作,而且 TestNG 也会在这里做一些事情。最好明确检查一下。类似于:
final Date startTime = new Date();
clickSignIn();
// wait until/check if home screen is properly displayed
// if it's not done in clickSignIn method (should be)
final Date endTime = new Date();
final long loginTime = endTime.getTime() - startTime.getTime(); // in ms
我会说 Date()
对代码计时非常不精确。我会建议另一个包裹:
long startTime = System.nanoTime();
----------------------call--your--function--here
long endTime = System.nanoTime();
long duration = (endTime - startTime);
System.out.println(duration / 1000000. + " ms.");