我正在使用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值。
非常感谢任何帮助。
答案 0 :(得分:0)
只需将UID附加到键字符串值:
这样的事情:
.sendKeys(sCustNum + UUID.randomUUID().toString());
如果目标值是数字,请使用:
.sendKeys(sStoreNum + UUID.getLeastSignificantBits());
因此每个测试都有自己的主键值。