Index: ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Wash.java =================================================================== diff -u -r19973 -r20225 --- ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Wash.java (.../Wash.java) (revision 19973) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Wash.java (.../Wash.java) (revision 20225) @@ -321,7 +321,7 @@ wait.until(ExpectedConditions.attributeToBe( Utils.driver.findElement(By.id("washSaveSubmitResult")), "value", "1")); -// Utils.retryingFindAndClick(By.xpath("//p[contains(text(), '清洗中')]")); + // Utils.retryingFindAndClick(By.xpath("//p[contains(text(), '清洗中')]")); WebElement element1 = Utils.retryingFind(By .cssSelector("div[class='x-grid3-row-checker']")); if (Utils.isFind(element1)) { @@ -468,22 +468,25 @@ // 删除篮筐 Utils.retryingFindAndClick(By.cssSelector("div[name='divName_id']")); // 重新扫描篮筐 - Utils.retryingFindAndSendKeys(By.id("inputText"), Utils.settings - .getJSONObject("一级供应室清洗篮筐3").getString("条码") + "\n"); - Utils.retryingFindAndClick(By.xpath("//span[contains(text(), '" - + basketName + "')]")); - // 一级供应室配包人 - Utils.retryingFindAndSendKeys(By.id("inputText"), Utils.settings - .getJSONObject("一级供应室配包人").getString("条码") + "\n"); - wait.until(ExpectedConditions.attributeToBeNotEmpty( - Utils.driver.findElement(By.id("personInCharge")), "value")); - Utils.retryingFindAndClick(By.id("saveBtn")); - // 定位回来 - Utils.retryingFindAndSwitchToFrame(By.id("iframe_washAndDisinfect")); - // 需要判断表单提交成功且返回正常后才能结束,否则就将不会提交到后台 - wait.until(ExpectedConditions.attributeToBe( - Utils.driver.findElement(By.id("washSaveSubmitResult")), - "value", "1")); + JSWaiter.waitUntilJQueryReady(); + if (Utils.isFind(Utils.retryingFind(By.id("inputText")))) { + Utils.retryingFindAndSendKeys(By.id("inputText"), Utils.settings + .getJSONObject("一级供应室清洗篮筐3").getString("条码") + "\n"); + Utils.retryingFindAndClick(By.xpath("//span[contains(text(), '" + + basketName + "')]")); + // 一级供应室配包人 + Utils.retryingFindAndSendKeys(By.id("inputText"), Utils.settings + .getJSONObject("一级供应室配包人").getString("条码") + "\n"); + wait.until(ExpectedConditions.attributeToBeNotEmpty( + Utils.driver.findElement(By.id("personInCharge")), "value")); + Utils.retryingFindAndClick(By.id("saveBtn")); + // 定位回来 + Utils.retryingFindAndSwitchToFrame(By.id("iframe_washAndDisinfect")); + // 需要判断表单提交成功且返回正常后才能结束,否则就将不会提交到后台 + wait.until(ExpectedConditions.attributeToBe( + Utils.driver.findElement(By.id("washSaveSubmitResult")), + "value", "1")); + } } /** Index: ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Materials_Godown_Entry.java =================================================================== diff -u -r19800 -r20225 --- ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Materials_Godown_Entry.java (.../Materials_Godown_Entry.java) (revision 19800) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Materials_Godown_Entry.java (.../Materials.java) (revision 20225) @@ -9,16 +9,20 @@ import org.testng.AssertJUnit; import org.openqa.selenium.By; import org.openqa.selenium.Keys; +import org.openqa.selenium.WebDriver; import org.openqa.selenium.os.WindowsUtils; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.Wait; +import test.forgon.disinfectsystem.selenium.factory.WaitFactory; import test.forgon.disinfectsystem.selenium.tools.JSWaiter; import test.forgon.disinfectsystem.selenium.tools.Utils; /** * @author cherry 2016-04-21 * */ -public class Materials_Godown_Entry { +public class Materials { @BeforeMethod public void init() { Utils.init(); @@ -33,33 +37,34 @@ public void Materials_Godown_Entry_success() { try { Utils.retryingFindAndClick(By.id("enterpriseView")); - Utils.retryingFindAndSwitchToFrame(By - .id("iframe_enterpriseView")); - Utils.retryingFindAndClick( - By.xpath("//div/span[contains(text(), '后台监控管理')]")); + Utils.retryingFindAndSwitchToFrame(By.id("iframe_enterpriseView")); + Utils.retryingFindAndClick(By + .xpath("//div/span[contains(text(), '后台监控管理')]")); - Utils.retryingFindAndClick( - By.xpath("//div/a/span[contains(text(), '器械仓库管理')]")); + Utils.retryingFindAndClick(By + .xpath("//div/a/span[contains(text(), '器械仓库管理')]")); - Utils.retryingFindAndClick( - By.xpath("//div/a/span[contains(text(), '材料入库管理')]")); + Utils.retryingFindAndClick(By + .xpath("//div/a/span[contains(text(), '材料入库管理')]")); Utils.retryingFindAndSwitchToFrame(By.id("mainFrame")); - Utils.retryingFindAndClick(By.xpath("//button[contains(text(), '添加')]")); + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '添加')]")); String currentwindowhandle = Utils.driver.getWindowHandle(); Utils.driver.switchTo().window(currentwindowhandle); - Utils.retryingFindAndSendKeys(By.id("name1"), - Utils.settings.getJSONObject("一级供应室材料").getString("拼音码")); + Utils.retryingFindAndSendKeys(By.id("name1"), Utils.settings + .getJSONObject("一级供应室材料").getString("拼音码")); Utils.retryingFindAndSendKeys(By.id("name1"), "\n"); - Utils.retryingFindAndSendKeys(By.id("supplier1"),Keys.DOWN); + Utils.retryingFindAndSendKeys(By.id("supplier1"), Keys.DOWN); Utils.retryingFindAndSendKeys(By.id("supplier1"), "\n"); Utils.retryingFindAndSendKeys(By.id("amount1"), "5" + "\n"); Utils.retryingFind(By.id("cost1")).clear(); Utils.retryingFindAndSendKeys(By.id("cost1"), "1.234" + "\n"); - Utils.retryingFindAndClick(By.xpath("//button[contains(text(), '保存')]")); + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '保存')]")); } catch (Exception e) { e.printStackTrace(); @@ -75,44 +80,45 @@ public void Materials_Godown_Entry_2success() { try { Utils.retryingFindAndClick(By.id("enterpriseView")); - Utils.retryingFindAndSwitchToFrame(By - .id("iframe_enterpriseView")); - Utils.retryingFindAndClick( - By.xpath("//div/span[contains(text(), '后台监控管理')]")); + Utils.retryingFindAndSwitchToFrame(By.id("iframe_enterpriseView")); + Utils.retryingFindAndClick(By + .xpath("//div/span[contains(text(), '后台监控管理')]")); - Utils.retryingFindAndClick( - By.xpath("//div/a/span[contains(text(), '器械仓库管理')]")); + Utils.retryingFindAndClick(By + .xpath("//div/a/span[contains(text(), '器械仓库管理')]")); - Utils.retryingFindAndClick( - By.xpath("//div/a/span[contains(text(), '材料入库管理')]")); + Utils.retryingFindAndClick(By + .xpath("//div/a/span[contains(text(), '材料入库管理')]")); Utils.retryingFindAndSwitchToFrame(By.id("mainFrame")); - Utils.retryingFindAndClick(By.xpath("//button[contains(text(), '添加')]")); + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '添加')]")); String currentwindowhandle = Utils.driver.getWindowHandle(); Utils.driver.switchTo().window(currentwindowhandle); - Utils.retryingFindAndSendKeys(By.id("name1"), - Utils.settings.getJSONObject("一级供应室材料").getString("拼音码")); + Utils.retryingFindAndSendKeys(By.id("name1"), Utils.settings + .getJSONObject("一级供应室材料").getString("拼音码")); Utils.retryingFindAndSendKeys(By.id("name1"), "\n"); - Utils.retryingFindAndSendKeys(By.id("supplier1"),Keys.DOWN); + Utils.retryingFindAndSendKeys(By.id("supplier1"), Keys.DOWN); Utils.retryingFindAndSendKeys(By.id("supplier1"), "\n"); Utils.retryingFindAndSendKeys(By.id("amount1"), "5" + "\n"); Utils.retryingFind(By.id("cost1")).clear(); Utils.retryingFindAndSendKeys(By.id("cost1"), "1.234" + "\n"); - Utils.retryingFindAndSendKeys(By.id("name1"), - Utils.settings.getJSONObject("一级供应室材料1").getString("拼音码")); + Utils.retryingFindAndSendKeys(By.id("name1"), Utils.settings + .getJSONObject("一级供应室材料1").getString("拼音码")); Utils.retryingFindAndSendKeys(By.id("name1"), "\n"); - Utils.retryingFindAndSendKeys(By.id("supplier1"),Keys.DOWN); + Utils.retryingFindAndSendKeys(By.id("supplier1"), Keys.DOWN); Utils.retryingFindAndSendKeys(By.id("supplier1"), "\n"); Utils.retryingFindAndSendKeys(By.id("amount1"), "5" + "\n"); Utils.retryingFind(By.id("cost1")).clear(); Utils.retryingFindAndSendKeys(By.id("cost1"), "2.345" + "\n"); - Utils.retryingFindAndClick(By.xpath("//button[contains(text(), '保存')]")); + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '保存')]")); } catch (Exception e) { e.printStackTrace(); @@ -128,44 +134,45 @@ public void Materials_Godown_Entry_choice() { try { Utils.retryingFindAndClick(By.id("enterpriseView")); - Utils.retryingFindAndSwitchToFrame(By - .id("iframe_enterpriseView")); - Utils.retryingFindAndClick( - By.xpath("//div/span[contains(text(), '后台监控管理')]")); + Utils.retryingFindAndSwitchToFrame(By.id("iframe_enterpriseView")); + Utils.retryingFindAndClick(By + .xpath("//div/span[contains(text(), '后台监控管理')]")); - Utils.retryingFindAndClick( - By.xpath("//div/a/span[contains(text(), '器械仓库管理')]")); + Utils.retryingFindAndClick(By + .xpath("//div/a/span[contains(text(), '器械仓库管理')]")); - Utils.retryingFindAndClick( - By.xpath("//div/a/span[contains(text(), '材料入库管理')]")); + Utils.retryingFindAndClick(By + .xpath("//div/a/span[contains(text(), '材料入库管理')]")); Utils.retryingFindAndSwitchToFrame(By.id("mainFrame")); - Utils.retryingFindAndClick(By.xpath("//button[contains(text(), '添加')]")); + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '添加')]")); String currentwindowhandle = Utils.driver.getWindowHandle(); Utils.driver.switchTo().window(currentwindowhandle); - Utils.retryingFindAndSendKeys(By.id("name1"), - Utils.settings.getJSONObject("一级供应室材料").getString("拼音码")); - + Utils.retryingFindAndSendKeys(By.id("name1"), Utils.settings + .getJSONObject("一级供应室材料").getString("拼音码")); + String a = (int) (Math.random() * 8 + 1) + ""; - Utils.retryingFindAndSendKeys(By.id("supplier1"),Keys.DOWN); + Utils.retryingFindAndSendKeys(By.id("supplier1"), Keys.DOWN); Utils.retryingFindAndSendKeys(By.id("supplier1"), "\n"); Utils.retryingFindAndSendKeys(By.id("amount1"), "5" + "\n"); Utils.retryingFindAndSendKeys(By.id("name1"), "\n"); Utils.retryingFindAndClear(By.id("cost1")); - Utils.retryingFindAndSendKeys(By.id("cost1"),a + ".234" + "\n"); - Utils.retryingFindAndSendKeys(By.id("name1"), - Utils.settings.getJSONObject("一级供应室材料1").getString("拼音码")); - + Utils.retryingFindAndSendKeys(By.id("cost1"), a + ".234" + "\n"); + Utils.retryingFindAndSendKeys(By.id("name1"), Utils.settings + .getJSONObject("一级供应室材料1").getString("拼音码")); + a = (int) (Math.random() * 8 + 1) + ""; - Utils.retryingFindAndSendKeys(By.id("supplier1"),Keys.DOWN); + Utils.retryingFindAndSendKeys(By.id("supplier1"), Keys.DOWN); Utils.retryingFindAndSendKeys(By.id("supplier1"), "\n"); Utils.retryingFindAndSendKeys(By.id("amount1"), "5" + "\n"); Utils.retryingFindAndSendKeys(By.id("name1"), "\n"); Utils.retryingFindAndClear(By.id("cost1")); - Utils.retryingFindAndSendKeys(By.id("cost1"),a + ".456" + "\n"); - Utils.retryingFindAndClick(By.xpath("//button[contains(text(), '保存')]")); + Utils.retryingFindAndSendKeys(By.id("cost1"), a + ".456" + "\n"); + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '保存')]")); JSWaiter.waitUntilJQueryReady(); } catch (Exception e) { e.printStackTrace(); @@ -174,6 +181,57 @@ } + /** + * 材料退库 + * */ + @Test + public void Materials_refund() { + try { + Utils.refresh(); + Utils.retryingFindAndClick(By.id("enterpriseView")); + Utils.retryingFindAndSwitchToFrame(By.id("iframe_enterpriseView")); + Utils.retryingFindAndClick(By + .xpath("//div/span[contains(text(), '后台监控管理')]")); + + Utils.retryingFindAndClick(By + .xpath("//div/a/span[contains(text(), '器械仓库管理')]")); + + Utils.retryingFindAndClick(By + .xpath("//div/a/span[contains(text(), '材料退库管理')]")); + + Utils.retryingFindAndSwitchToFrame(By.id("mainFrame")); + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '添加')]")); + String currentwindowhandle = Utils.driver.getWindowHandle(); + Utils.driver.switchTo().window(currentwindowhandle); + Utils.retryingFindAndClick(By.id("wareHouseName")); + Utils.retryingFindAndSendKeys(By.id("wareHouseName"), Keys.DOWN); + JSWaiter.waitUntilJQueryReady(); + Utils.retryingFindAndSendKeys(By.id("wareHouseName"), "\n"); + Utils.retryingFindAndSendKeys(By.id("name1"), Utils.settings + .getJSONObject("一级供应室材料").getString("拼音码")); + JSWaiter.waitUntilJQueryReady(); + Utils.retryingFindAndSendKeys(By.id("name1"), "\n"); + Utils.retryingFindAndSendKeys(By.id("supplier1"), Keys.DOWN); + JSWaiter.waitUntilJQueryReady(); + Utils.retryingFindAndSendKeys(By.id("supplier1"), "\n"); + Wait wait = WaitFactory.createDefaultWait(); + wait.until(ExpectedConditions.attributeToBeNotEmpty( + Utils.driver.findElement(By.id("cost1")), + "value")); + Utils.retryingFindAndSendKeys(By.id("amount1"), "2"); + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '添加')]")); + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '保存')]")); + JSWaiter.waitUntilJQueryReady(); + } catch (Exception e) { + e.printStackTrace(); + AssertJUnit.fail(e.getMessage()); + } + + } + @AfterMethod public void after() { Utils.driver.quit(); Index: ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Login.java =================================================================== diff -u -r20036 -r20225 --- ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Login.java (.../Login.java) (revision 20036) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Login.java (.../Login.java) (revision 20225) @@ -129,7 +129,8 @@ Utils.driver.switchTo().window(currentwindowhandle); Utils.retryingFindAndClick(By.cssSelector("a[title='退出系统']")); Utils.waitUntilUrlChange(Utils.settings.get("服务器地址").toString() - + "/logon.jsp", 10); + + "/logon.jsp", 15); + Utils.switchToDefaultContent(); } catch (Exception e) { e.printStackTrace(); AssertJUnit.fail(e.getMessage()); Index: ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Review.java =================================================================== diff -u -r19800 -r20225 --- ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Review.java (.../Review.java) (revision 19800) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Review.java (.../Review.java) (revision 20225) @@ -86,8 +86,9 @@ } Utils.driver.switchTo().defaultContent(); - + JSWaiter.waitUntilJQueryReady(); Utils.retryingFindAndSwitchToFrame(By.id("iframe_reviewPacking")); + JSWaiter.waitUntilJQueryReady(); String b = null; for (int i = 0; i < 1; i++) { JSWaiter.waitUntilJQueryReady(); Index: ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Delivery.java =================================================================== diff -u -r19800 -r20225 --- ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Delivery.java (.../Delivery.java) (revision 19800) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Delivery.java (.../Delivery.java) (revision 20225) @@ -25,11 +25,11 @@ Utils.retryingFindAndSwitchToFrame(By.id("iframe_invoicePlan")); String name = Utils.settings.getJSONObject("临床科室").getString("名称"); - + // 视图中的记录,执行selenium的js点击无效,必须调用selenium的API - Utils.retryingFindAndClickBySeleniumAPI(By.xpath("//a[contains(text(), '" + name - + "')]")); - + Utils.retryingFindAndClickBySeleniumAPI(By + .xpath("//a[contains(text(), '" + name + "')]")); + Utils.driver.switchTo().defaultContent(); String currentwindowhandle = Utils.driver.getWindowHandle(); Utils.driver.switchTo().window(currentwindowhandle); @@ -50,8 +50,8 @@ Utils.retryingFindAndClick(By.id("invoicePlan")); Utils.retryingFindAndSwitchToFrame(By.id("iframe_invoicePlan")); String name = Utils.settings.getJSONObject("临床科室").getString("名称"); - Utils.retryingFindAndClickBySeleniumAPI(By.xpath("//a[contains(text(), '" + name - + "')]")); + Utils.retryingFindAndClickBySeleniumAPI(By + .xpath("//a[contains(text(), '" + name + "')]")); Utils.driver.switchTo().defaultContent(); String currentwindowhandle = Utils.driver.getWindowHandle(); Utils.driver.switchTo().window(currentwindowhandle); @@ -282,12 +282,11 @@ Utils.refresh(); Utils.retryingFindAndClick(By.id("invoicePlan")); - Utils.retryingFindAndSwitchToFrame(By - .id("iframe_invoicePlan")); + Utils.retryingFindAndSwitchToFrame(By.id("iframe_invoicePlan")); String name = Utils.settings.getJSONObject("二级供应室用户").getString( "科室名称"); - Utils.retryingFindAndClickBySeleniumAPI(By.xpath("//a[contains(text(), '" + name - + "')]")); + Utils.retryingFindAndClickBySeleniumAPI(By + .xpath("//a[contains(text(), '" + name + "')]")); Utils.driver.switchTo().defaultContent(); String currentwindowhandle = Utils.driver.getWindowHandle(); Utils.driver.switchTo().window(currentwindowhandle); @@ -373,12 +372,11 @@ public void Delivery_rejectsendout() { try { Utils.retryingFindAndClick(By.id("invoicePlan")); - Utils.retryingFindAndSwitchToFrame(By - .id("iframe_invoicePlan")); + Utils.retryingFindAndSwitchToFrame(By.id("iframe_invoicePlan")); String name = Utils.settings.getJSONObject("临床科室").getString("名称"); - Utils.retryingFindAndClickBySeleniumAPI(By.xpath("//a[contains(text(), '" + name - + "')]")); + Utils.retryingFindAndClickBySeleniumAPI(By + .xpath("//a[contains(text(), '" + name + "')]")); Utils.driver.switchTo().defaultContent(); String currentwindowhandle = Utils.driver.getWindowHandle(); Utils.driver.switchTo().window(currentwindowhandle); @@ -412,8 +410,7 @@ try { Utils.refresh(); Utils.retryingFindAndClick(By.id("enterpriseView")); - Utils.retryingFindAndSwitchToFrame(By - .id("iframe_enterpriseView")); + Utils.retryingFindAndSwitchToFrame(By.id("iframe_enterpriseView")); Utils.retryingFindAndClick(By .xpath("//div/a/span[contains(text(), '发货管理')]")); Utils.retryingFindAndClick(By @@ -432,11 +429,16 @@ .getJSONObject("一级供应室材料").getString("拼音码")); Utils.retryingFindAndSendKeys(By.id("name1"), "\n"); + /**暂时屏蔽 Utils.retryingFindAndClick(By.id("userecordName")); for (String winHandle : Utils.driver.getWindowHandles()) { Utils.driver.switchTo().window(winHandle); } + Utils.retryingFindAndClick(By.id("materialInvoiceForm")); + Utils.waitUntilUrlChange(Utils.settings.get("服务器地址").toString() + + "disinfectsystem/invoice/selectUserecordWindowView.jsp", + 15); name = Utils.settings.getJSONObject("临床科室用户").getString("姓名"); Utils.retryingFindAndClick(By .xpath("//tbody/tr/td/div[contains(text(), '" + name @@ -447,10 +449,11 @@ for (String winHandle : Utils.driver.getWindowHandles()) { Utils.driver.switchTo().window(winHandle); } + */ Utils.retryingFindAndSendKeys(By.id("amount1"), "2" + "\n"); Utils.retryingFindAndClick(By .xpath("//button[contains(text(), '保存')]")); - + JSWaiter.waitUntilJQueryReady(); } catch (Exception e) { e.printStackTrace(); AssertJUnit.fail(e.getMessage()); @@ -465,8 +468,7 @@ try { Utils.refresh(); Utils.retryingFindAndClick(By.id("enterpriseView")); - Utils.retryingFindAndSwitchToFrame(By - .id("iframe_enterpriseView")); + Utils.retryingFindAndSwitchToFrame(By.id("iframe_enterpriseView")); Utils.retryingFindAndClick(By .xpath("//div/a/span[contains(text(), '发货管理')]")); Utils.retryingFindAndClick(By @@ -481,9 +483,9 @@ if (Utils.isFind(element)) { // 等待仓库加载 - Utils.retryingFind( - By.xpath("//input[contains(@value, '测试供应室仓库')]")); - + Utils.retryingFind(By + .xpath("//input[contains(@value, '测试供应室仓库')]")); + Utils.retryingFindAndSendKeys(By.id("departBarcode"), Utils.settings.getJSONObject("临床科室").getString("条码") + "\n"); @@ -520,45 +522,52 @@ try { Utils.refresh(); Utils.retryingFindAndClick(By.id("invoicePlan")); + JSWaiter.waitUntilJQueryReady(); Utils.retryingFindAndSwitchToFrame(By.id("iframe_invoicePlan")); + JSWaiter.waitUntilJQueryReady(); String name = Utils.settings.getJSONObject("临床科室").getString("名称"); - Utils.retryingFindAndClickBySeleniumAPI(By.xpath("//a[contains(text(), '" + name - + "')]")); - Utils.driver.switchTo().defaultContent(); - String currentwindowhandle = Utils.driver.getWindowHandle(); - Utils.driver.switchTo().window(currentwindowhandle); - Utils.retryingFindAndClick(By - .xpath("//button[contains(text(), '辅助发货')]")); - currentwindowhandle = Utils.driver.getWindowHandle(); - Utils.driver.switchTo().window(currentwindowhandle); - WebElement element = Utils.retryingFind(By - .xpath("//button[contains(text(), '保存')]")); + if (Utils.isFind(Utils.retryingFind(By + .xpath("//a[contains(text(), '" + name + "')]")))) { + Utils.retryingFindAndClickBySeleniumAPI(By + .xpath("//a[contains(text(), '" + name + "')]")); + Utils.driver.switchTo().defaultContent(); + String currentwindowhandle = Utils.driver.getWindowHandle(); + Utils.driver.switchTo().window(currentwindowhandle); + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '辅助发货')]")); + currentwindowhandle = Utils.driver.getWindowHandle(); + Utils.driver.switchTo().window(currentwindowhandle); + WebElement element = Utils.retryingFind(By + .xpath("//button[contains(text(), '保存')]")); - if (Utils.isFind(element)) { - // 等待仓库加载 - Utils.retryingFind( - By.xpath("//input[contains(@value, '测试供应室仓库')]")); + if (Utils.isFind(element)) { + // 等待仓库加载 + Utils.retryingFind(By + .xpath("//input[contains(@value, '测试供应室仓库')]")); - Utils.retryingFindAndSendKeys(By.id("senderBarcode"), - Utils.settings.getJSONObject("一级供应室用户").getString("条码") - + "\n"); - Utils.retryingFindAndSendKeys(By.id("personInChargeBarcode"), - Utils.settings.getJSONObject("一级供应室用户").getString("条码") - + "\n"); - List allRows = Utils.driver - .findElements(By - .cssSelector("div[class='x-grid3-row my_row_yellow']")); - for (WebElement row : allRows) { - row.click(); - Utils.retryingFindAndClick(By - .xpath("//button[contains(text(), '添加')]")); + Utils.retryingFindAndSendKeys( + By.id("senderBarcode"), + Utils.settings.getJSONObject("一级供应室用户").getString( + "条码") + + "\n"); + Utils.retryingFindAndSendKeys(By + .id("personInChargeBarcode"), Utils.settings + .getJSONObject("一级供应室用户").getString("条码") + "\n"); + List allRows = Utils.driver + .findElements(By + .cssSelector("div[class='x-grid3-row my_row_yellow']")); + for (WebElement row : allRows) { + row.click(); + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '添加')]")); + } + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '保存')]")); + JSWaiter.waitUntilJQueryReady(); + } else { + Delivery_auxiliary(); } - Utils.retryingFindAndClick(By - .xpath("//button[contains(text(), '保存')]")); - JSWaiter.waitUntilJQueryReady(); - } else { - Delivery_auxiliary(); } } catch (Exception e) { e.printStackTrace(); Fisheye: Tag 20225 refers to a dead (removed) revision in file `ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Materials_Godown_Entry.java'. Fisheye: No comparison available. Pass `N' to diff? Index: ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Reject.java =================================================================== diff -u -r19800 -r20225 --- ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Reject.java (.../Reject.java) (revision 19800) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Reject.java (.../Reject.java) (revision 20225) @@ -137,6 +137,7 @@ Utils.driver.switchTo().window(currentwindowhandle); Utils.retryingFindAndClick(By .xpath("//button[contains(text(), '是')]")); + JSWaiter.waitUntilJQueryReady(); } catch (Exception e) { e.printStackTrace(); AssertJUnit.fail(e.getMessage()); Index: ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/ALL.java =================================================================== diff -u -r20152 -r20225 --- ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/ALL.java (.../ALL.java) (revision 20152) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/ALL.java (.../ALL.java) (revision 20225) @@ -58,7 +58,7 @@ private Apply apply = new Apply(); private Sign sign = new Sign(); private Login login = new Login(); - private Materials_Godown_Entry entry = new Materials_Godown_Entry(); + private Materials materials = new Materials(); boolean displayed = false; // @BeforeMethod @@ -277,7 +277,7 @@ /*** 材料入库报损丢失的材料 ***/ System.out.print("报损补充开始:"); Utils.DateTime(); - entry.Materials_Godown_Entry_choice(); + materials.Materials_Godown_Entry_choice(); /*** 一级供应室装配外来器械 ***/ System.out.print("装配开始:"); Utils.DateTime(); @@ -370,6 +370,7 @@ delivery.Delivery_auxiliary(); delivery.Delivery_custom(); delivery.Delivery_TousseAndDressing(); + delivery.Delivery_materials(); login.login_Out(); /*** 临床签收物品 ***/ System.out.print("签收物品开始:"); @@ -384,12 +385,28 @@ Utils.DateTime(); Utils.retryingFindAndClick(By.id("useRecord")); Utils.retryingFindAndSwitchToFrame(By.id("iframe_useRecord")); - Utils.retryingFindAndClick(By - .xpath("//button[contains(text(), '添加')]")); - Utils.driver.switchTo().defaultContent(); - currentwindowhandle = Utils.driver.getWindowHandle(); - Utils.driver.switchTo().window(currentwindowhandle); - userrecord.UserRecord_success_ji(); + if (Utils.isFind(Utils.retryingFind(By + .xpath("//button[contains(text(), '添加')]")))) { + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '添加')]")); + Utils.driver.switchTo().defaultContent(); + currentwindowhandle = Utils.driver.getWindowHandle(); + Utils.driver.switchTo().window(currentwindowhandle); + userrecord.UserRecord_success_ji(); + } else { + Utils.refresh(); + Utils.retryingFindAndClick(By.id("useRecord")); + Utils.retryingFindAndSwitchToFrame(By.id("iframe_useRecord")); + if (Utils.isFind(Utils.retryingFind(By + .xpath("//button[contains(text(), '添加')]")))) { + Utils.retryingFindAndClick(By + .xpath("//button[contains(text(), '添加')]")); + Utils.driver.switchTo().defaultContent(); + currentwindowhandle = Utils.driver.getWindowHandle(); + Utils.driver.switchTo().window(currentwindowhandle); + userrecord.UserRecord_success_ji(); + } + } /*** 临床归还借物 ***/ System.out.print("归还借物开始:"); Utils.DateTime(); @@ -411,6 +428,7 @@ reject.Reject_set_success_ou(); Utils.retryingFindAndSwitchToFrame(By.id("iframe_enterpriseView")); reject.Reject_one_use_success(); + reject.Reject_Mateials_success(); /*** 供应室领用 ***/ Utils.refresh(); Utils.retryingFindAndClick(By.id("enterpriseView")); @@ -437,6 +455,8 @@ Utils.retryingFindAndClick(By .xpath("//div/a/span[contains(text(), '一次性物品管理')]")); one.One_use_cancle_success(); + /*** 供应室材料退库 ***/ + materials.Materials_refund(); /*** 供应室一次性物品调拨 ***/ Utils.refresh(); Utils.retryingFindAndClick(By.id("enterpriseView"));