亚洲好骚综合-亚洲黄色录像-亚洲黄色网址-亚洲黄色网址大全-99久久99久久-99久久99久久精品国产

您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 >
WebDriver之測試失敗自動截圖
作者:網絡轉載 發布時間:[ 2013/4/9 17:09:56 ] 推薦標簽:

  try {

  out = new FileOutputStream(of);

  out.write(new Base64Encoder()

  .decode(((ScreenshotException) cause)

  .getBase64EncodedScreenshot()));

  }

  catch (Exception e) {

  e.printStackTrace();

  }

  finally {

  try {

  out.close();

  }

  catch (IOException e) {

  e.printStackTrace();

  }

  }

  }

  }

  }

  主要看 onException 這個方法的實現,很明顯, 我們捕獲了這個異常, 然后通過強制轉換將圖片提取出來,寫入硬盤。

  然后是使用這個監聽器, 通常會在 setup 方法里面將這個監聽器注冊到 WebDriver 中去, 看代碼:

  @Test

  public void setup(){

  String remote_driver_url = "http://localhost:4444/wd/hub";

  DesiredCapabilities capability = null;

  capability = DesiredCapabilities.firefox();

  WebDriverEventListener eventListener = new CustomWebDriverEventListener ();

  WebDriver driver = new EventFiringWebDriver(new RemoteWebDriver(new URL(

  remote_driver_url), capability)).register(eventListener);

  }

  在這之后,如果運行出錯, WebDriver 拋出異常會在相應的 classpath 下面生成 png 的截圖。

  自定義 TestRule

  和自定義 WebDriver 監聽器不同, 自定義 TestRule 只有在這個 Rule 被執行的時候, 才去做一些我們預設的 CallBack。 所以這個截圖動作,對于 WebDriver 而言, 是主動的。 那么,我們需要自定義一個 RemoteWebDriver 來實現截圖功能。 WebDriver 自身提供了 TakesScreenshot 這個接口, 我們只要實現它可以了, 看代碼:

  import java.net.URL;

  import org.openqa.selenium.OutputType;

  import org.openqa.selenium.TakesScreenshot;

  import org.openqa.selenium.WebDriverException;

  import org.openqa.selenium.remote.CapabilityType;

  import org.openqa.selenium.remote.DesiredCapabilities;

  import org.openqa.selenium.remote.DriverCommand;

  import org.openqa.selenium.remote.RemoteWebDriver;

  public class CustomRemoteWebDriver extends RemoteWebDriver implements

  TakesScreenshot {

  public CustomRemoteWebDriver(URL url, DesiredCapabilities dc) {

  super(url, dc);

  }

  @Override

  public X getScreenshotAs(OutputType target)

  throws WebDriverException {

  if ((Boolean) getCapabilities().getCapability(

  CapabilityType.TAKES_SCREENSHOT)) {

  return target

  .convertFromBase64Png(execute(DriverCommand.SCREENSHOT)

  .getValue().toString());

  }

  return null;

  }

  }

上一頁123下一頁
軟件測試工具 | 聯系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網站地圖
滬ICP備07036474 2003-2017 版權所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd
主站蜘蛛池模板: 日日摸夜夜添夜夜添影院视频 | 丝袜中文字幕 | 日韩 欧美 亚洲 国产 | 视频一区二区国产 | 天天天天天天操 | 国产亚洲精品精品国产亚洲综合 | 国产精品美女视视频专区 | 亚洲国产欧洲 | 中文字幕第38页永久乱码 | 可以免费看的黄色网址 | 免费看一级黄色毛片 | 欧美视频精品在线 | 国产亚洲欧美日本一二三本道 | 在线久草视频 | 最新亚洲精品国自产在线观看 | 亚洲精品第一 | 美国一级大黄香蕉片 | 亚洲男人天堂网站 | 欧美禽交 | 亚洲午夜精品一区二区 | 中文字幕日本精品一区二区三区 | 老扒夜夜春宵粗大好爽aa毛片 | 免费看男女下面日出水视频 | 久久精品a一国产成人免费网站 | 黄色影院免费看 | 一级视频黄色 | 久久久久香蕉视频 | 亚洲成人在线播放 | 午夜视频h | 视频网站入口在线看 | 国产精品激情丝袜美女 | caopren免费视频国产 | 日本 欧美 在线 | 91香蕉视频成人 | 男女免费爽爽爽在线视频 | 国产三级全黄在线观看 | 国产亚洲一区二区三区在线 | 亚洲精品手机在线观看 | 午夜理伦 | 日本人甡交全过程 | 欧美一级专区免费大片 |