Index: ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/ALL.java =================================================================== diff -u -r20778 -r20809 --- ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/ALL.java (.../ALL.java) (revision 20778) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/ALL.java (.../ALL.java) (revision 20809) @@ -609,12 +609,6 @@ + "/?logonType=1080p"); login.loginAction(); Utils.waitUntilUrlContains("awaitForRecycleList.jsp", 15); - /*** 供应室回收还物单和回收终止 ***/ - System.out.print("回收还物单开始:"); - recyle.recyle_return(); - logger.info("供应室回收还物单和回收终止完成"); - recyle.after(); - recyle.init(); /*** 供应室二次回收外来器械 ***/ recyle.recyle_Foreign_Twice(); Utils.waitUntilUrlChange( @@ -639,7 +633,17 @@ Utils.refresh(); recall.Recall_Set(); logger.info("供应室召回一次性物品、器械包完成"); - recall.after(); + Utils.refresh(); + login.login_Out(); + Utils.driver.get(Utils.settings.get("服务器地址").toString() + + "/?logonType=1080p"); + login.loginAction(); + Utils.waitUntilUrlContains("awaitForRecycleList.jsp", 15); + /*** 供应室回收还物单和回收终止 ***/ + System.out.print("回收还物单开始:"); + recyle.recyle_return(); + logger.info("供应室回收还物单和回收终止完成"); + recyle.after(); } catch (Exception e) { logger.error(e, e); e.printStackTrace(); @@ -699,29 +703,32 @@ + "/screenshot-" + timeStamp + ".png")); } - Set allWindowsId = Utils.driver.getWindowHandles(); - for (String windowID : allWindowsId) { - if (windowID != null) { - if (Utils.driver.switchTo().window(windowID).getTitle() - .contains("消毒") - || Utils.driver.switchTo().window(windowID) - .getTitle().contains("WebDriver")) { - Utils.driver.switchTo().window(windowID); - System.out.println(windowID); - JSWaiter.waitUntilJQueryReady(); - Utils.driver.quit(); - WindowsUtils.killByName("conhost.exe"); - WindowsUtils.killByName("IEDriverServer.exe *32"); - WindowsUtils.killByName("iexplore.exe"); - // TODO:暂时用下面语句杀掉IE进程,解决IE8,win7运行后装配界面没有关闭的问题 - WindowsUtils.killByName("iexplore.exe *32"); - assemble.isAlertPresent(); - continue; + if (Utils.driver.getWindowHandles().isEmpty()) { + System.out.println("Session ID is null"); + } else { + Set allWindowsId = Utils.driver.getWindowHandles(); + for (String windowID : allWindowsId) { + if (windowID != null) { + if (Utils.driver.switchTo().window(windowID).getTitle() + .contains("消毒") + || Utils.driver.switchTo().window(windowID) + .getTitle().contains("WebDriver")) { + Utils.driver.switchTo().window(windowID); + System.out.println(windowID); + JSWaiter.waitUntilJQueryReady(); + Utils.driver.quit(); + WindowsUtils.killByName("conhost.exe"); + WindowsUtils.killByName("IEDriverServer.exe *32"); + WindowsUtils.killByName("iexplore.exe"); + // TODO:暂时用下面语句杀掉IE进程,解决IE8,win7运行后装配界面没有关闭的问题 + WindowsUtils.killByName("iexplore.exe *32"); + assemble.isAlertPresent(); + continue; + } + } else { + break; } - } else { - break; } - } } catch (Exception e) { e.printStackTrace(); Index: ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Recyle.java =================================================================== diff -u -r20778 -r20809 --- ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Recyle.java (.../Recyle.java) (revision 20778) +++ ssts-web/src/test/java/test/forgon/disinfectsystem/selenium/Recyle.java (.../Recyle.java) (revision 20809) @@ -35,7 +35,7 @@ * */ public class Recyle { - + private Assemble assemble = new Assemble(); protected Logger logger = Logger.getLogger(this.getClass()); @BeforeMethod @@ -139,7 +139,7 @@ AssertJUnit.fail(e.getMessage()); } } - + /** * 供应室回收质量监测登记的重新回收 * */ @@ -150,9 +150,11 @@ WebElement element = Utils.retryingFindForthCellOfTable(By .id("awaitForRecycleTable")); if (Utils.isFind(element)) { -// String barcode = Utils.settings.getJSONObject("临床科室").getString( -// "条码"); -// Utils.retryingFindAndSendKeys(By.tagName("body"), barcode + "\n"); + // String barcode = + // Utils.settings.getJSONObject("临床科室").getString( + // "条码"); + // Utils.retryingFindAndSendKeys(By.tagName("body"), barcode + + // "\n"); element = Utils.retryingFind(By.id("tousseItemTable")); if (Utils.isFind(element)) { Utils.retryingFindClickFirstCellOfTable(By @@ -161,8 +163,10 @@ } waitUrlChange(); WebElement recycleForm = this.scanRecycleUserBarcode(); - Utils.retryingFindAndSendKeys(By.id("tousseItemTable"), - Utils.settings.getJSONObject("一级供应室清洗篮筐1").getString("条码") + Utils.retryingFindAndSendKeys( + By.id("tousseItemTable"), + Utils.settings.getJSONObject("一级供应室清洗篮筐1").getString( + "条码") + "\n"); dialogWindowClose(); recycleForm = Utils.retryingFind(By.id("tousseItemTable")); @@ -175,7 +179,7 @@ } dialogWindowClose(); Utils.retryingFindAndClick(By.id("saveBtn")); - } + } } catch (Exception e) { e.printStackTrace(); AssertJUnit.fail(e.getMessage()); @@ -887,7 +891,7 @@ Utils.retryingFindAndClick(By.id("appTypeSelect")); Utils.retryingFindAndClick(By .cssSelector("option[value='(待回收)外来器械包申请单']")); - Utils.retryingFindAndSendKeys(By.id("appTypeSelect"),"\n"); + Utils.retryingFindAndSendKeys(By.id("appTypeSelect"), "\n"); String a = Utils.settings.getJSONObject("临床科室").getString("条码"); WebElement element = Utils.retryingFind(By .id("awaitForRecycleTable")); @@ -1271,9 +1275,33 @@ public void after() { JSWaiter.waitUntilJQueryReady(); Utils.driver.quit(); - WindowsUtils.killByName("IEDriverServer.exe"); - WindowsUtils.killByName("iexplore.exe"); - WindowsUtils.killByName("iexplore.exe *32"); + if (Utils.driver.getWindowHandles().isEmpty()) { + System.out.println("Session ID is null"); + } else { + Set allWindowsId = Utils.driver.getWindowHandles(); + for (String windowID : allWindowsId) { + if (windowID != null) { + if (Utils.driver.switchTo().window(windowID).getTitle() + .contains("消毒") + || Utils.driver.switchTo().window(windowID) + .getTitle().contains("WebDriver")) { + Utils.driver.switchTo().window(windowID); + System.out.println(windowID); + JSWaiter.waitUntilJQueryReady(); + Utils.driver.quit(); + WindowsUtils.killByName("conhost.exe"); + WindowsUtils.killByName("IEDriverServer.exe *32"); + WindowsUtils.killByName("iexplore.exe"); + // TODO:暂时用下面语句杀掉IE进程,解决IE8,win7运行后装配界面没有关闭的问题 + WindowsUtils.killByName("iexplore.exe *32"); + assemble.isAlertPresent(); + continue; + } + } else { + break; + } + } + } } /**