将新值附加到文本

时间:2015-05-04 16:37:18

标签: java selenium

我正在使用Eclipse IDE,java和Selenium Webdriver。这是我的场景:使用.xlsx文件,我将值提供给Web表单。我的代码工作正常,但如果我第二次运行该方案,我的测试失败,因为我的.xlsx文件中的值已经在使用中。每次运行测试时我都需要一种方法将值递增1,这样我的应用程序就不会抛出错误,因为这些值已经在使用中。我知道我每次都可以编辑.xlsx,但我想知道是否有更简单的方法。

这是我的代码:

Utility.ExcelUtils.setExcelFile(Utility.Constant.Path_TestData + Utility.Constant.File_SellerNetwork,"Sheet1");
String sStoreNum = Utility.ExcelUtils.getCellData(1, 1);
SellerNetworkSetupPage.txt_StoreNum(driver).sendKeys(sStoreNum);

String sCustNum = Utility.ExcelUtils.getCellData(1, 2);
SellerNetworkSetupPage.txt_NewCustNum(driver).sendKeys(sCustNum);

String sNetworkName = Utility.ExcelUtils.getCellData(1, 3);
SellerNetworkSetupPage.txt_NetworkName(driver).sendKeys(sNetworkName);

SellerNetworkSetupPage.btn_Add(driver).click();

在SellerNetworkSetupPage.btn_Add(driver).click()之后;执行后,应用程序使用这些值创建帐户。我希望能够多次运行此代码,每次都有不同的sStoreNum,sCustNum和sNetworkName值。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

只需将UID附加到键字符串值:

这样的事情:

.sendKeys(sCustNum + UUID.randomUUID().toString());

如果目标值是数字,请使用:

.sendKeys(sStoreNum + UUID.getLeastSignificantBits());

因此每个测试都有自己的主键值。