使用C#
问题描述:
硒插入屏幕显示图像文件名以XML我有一个自定义HTML测试状态报告,基本上列出了从执行自动化脚本的步骤,结果及结果的意见(直通XML/XSLT创建)。由于我还是编程新手,我想知道什么是获取捕获的屏幕截图(使用Selenium中的ITakesScreenshot)文件名的最佳方法,并将此文件名插入到XML节点中? 我下面的代码是截图捕捉:使用C#
private static void InsertValues(string ID, string Step, string Result, string Comment)
{
var xmlDoc = XDocument.Load(xmltoLoad);
var newElement = new XElement("TestCase", new XAttribute("Id", ID),
new XElement("Screenshot", ""),
new XElement("Step", Step),
new XElement("Result", Result),
new XElement("Comments", Comment));
xmlDoc.Element("TestResults").Add(newElement);
xmlDoc.Save(xmltoLoad);
}
我试图做
string filename = screenshot.SaveAsFile(dir+currentDate+fileName+".png", ImageFormat.png);
但是我收到一个:
public static void takeScreenShot()
{
string currentDate = DateTime.Now.ToString("ddd, ddMMMyyyy HHmm");
ITakesScreenshot screenshotHandler = Driver as ITakesScreenshot;
Screenshot screenshot = screenshotHandler.GetScreenshot();
string dir = @"C:\Documents\";
screenshot.SaveAsFile(dir + currentDate + fileName + ".png", ImageFormat.Png);
}
以下是一个XML节点上我插入值错误,该无效不能转换为字符串,我明白。我能做些什么或者有没有其他方法?
答
.SaveAsFile()
所以没有回报的东西到filename
不返回任何东西。是有一些原因,你不能只是做
string filename = dir + currentDate + fileName + ".png";
screenshot.SaveAsFile(filename, ImageFormat.png);