如何使用testng参数化硒中的用户数据并提供给脚本

时间:2018-11-22 14:58:10

标签: java selenium testng

可能有人问过这个问题,但是我找不到完美的解决方案,所以我在这里发布。 我必须自动化销售人员应用程序,并且每次执行脚本时都必须创建新的客户数据。 我要创建一个这样的名称,使客户名称是唯一的,例如:客户123等。

用Java实现此目标的最佳方法是什么。 我搜索了SO和Google,但他们只提供了字母数字随机字符串,并且我不希望我的客户编号显得笨拙。

1 个答案:

答案 0 :(得分:0)

实际上有几种方法:

  1. 在脚本执行开始时删除具有给定名称的所有先前用户,然后重新创建具有相同名称的用户。这样,您就可以重用他们的名字。

  2. 获取所有用户,对其进行排序,查看最后使用的号码,然后使用下一个号码。

这两个选项实际上都不取决于Java功能,而是取决于您正在创建和维护的名称逻辑。下面的两个选项生成一些整数ID:

  1. 使用日期/时间作为您的电话号码。例如:

    SimpleDateFormat timestamp = new SimpleDateFormat("yyyyMMddHHmmssSSS");
    String username = "user" + timestamp.format(new Date());
    

    这将为您提供user20181122101458234之类的名称(毫秒级唯一),并且不是随机的。

  2. 您还可以将Java的UUID用作您的号码(请参见提示here):

    String username = "user" + new BigInteger(UUID.randomUUID().toString().replaceAll("-", ""), 16).toString()
    

    这将生成类型为user[some big number]的名称,该名称非常唯一