使用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);