最近参与新项目 发现里面没有错误截图 小编觉得错误截图是selenium UI测试的一个亮点 尤其对于后期很多很多case的 regression情况下 对于重现问题和report CR 这是很节省时间和容易定位错误的 尤其是大数据问题时 小编这个项目只是最简单的用到了 selenium截图功能 代码如下
publicstaticvoid GetScreenShot(Exception e)
{
DateTime time =DateTime.Now;
// String dir = "\\\\CNS-E1DEVWEB2\\d$\\TeamCity\\buildAgent\\work\\aeef3d6be42341eb\\TestResults\\ScreenShot\\";
String dir = @"..\..\..\..\..\TestResults\ScreenShot\";(截图的路径问题,发现如果是相对路径应用的话 还是这样最方便了)
String path = dir +time.Year+time.Month+ time.Day + time.Hour + time.Minute + time.Second + ".png";
if (! Directory.Exists(dir))
{
Directory.CreateDirectory(dir);
}
((ITakesScreenshot)Driver).GetScreenshot().SaveAsFile(path,System.Drawing.Imaging.ImageFormat.Png);(闪光点在这里)
BrowserSeleniumHelper.assertFail(e);
}
然后小编纠结的就是到底项目都哪里可以放这个方法 因为小编用的是specflow和selenium 所以不能在每个case里来个try,catch抓到任何错误的截图 于是呼 就在loadpage 和waitelement这两个最爱出错的地方 catch了截图 期待结果 好啦 截图篇就到这吧 最近研究代码的热情相当高涨啊 哦吼吼 自动化架构师 我向你努力