Selenium C扩展数据块报告未在指定文件夹中生成HTML文件
我正在尝试使用Selenium Webdriver C的Extent report version=3.1.3生成HTML报告,但在成功执行测试脚本后,在指定的文件夹中我无法看到HTML文件 如果你能帮我找出问题所在,并为这个问题提供解决方案,那就太好了 提前谢谢Selenium C扩展数据块报告未在指定文件夹中生成HTML文件,selenium,extentreports,selenium-extent-report,Selenium,Extentreports,Selenium Extent Report,我正在尝试使用Selenium Webdriver C的Extent report version=3.1.3生成HTML报告,但在成功执行测试脚本后,在指定的文件夹中我无法看到HTML文件 如果你能帮我找出问题所在,并为这个问题提供解决方案,那就太好了 提前谢谢 请在下面查找代码片段 namespace Selenium_Demo_01 { [TestFixture] public class Demo01 { IWebDriver driver; Program dataD
请在下面查找代码片段
namespace Selenium_Demo_01
{
[TestFixture]
public class Demo01
{
IWebDriver driver;
Program dataDriven = new Program();
public ExtentReports extent;
public ExtentTest test;
[OneTimeSetUp]
public void ClassSetup()
{
var reportPath = new ExtentHtmlReporter(@"I:\Selenium\VS Project
files\Selenium_Demo_01\
Selenium_Demo_01\Reports\Demo_Report_01.html");
extent = new ExtentReports();
extent.AttachReporter(reportPath);
}
[Test]
public void test_D365Login()
{
test = extent.CreateTest("test_D365Login");
string webTitle, webTitle1;
//Get web page Title
driver.Url = appURL;
webTitle = driver.Title;
System.Console.WriteLine(webTitle);
Assert.AreEqual(title1, webTitle);
test.Pass("Assertion passed");
//Get web page Title
webTitle1 = driver.Title;
System.Console.WriteLine(webTitle1);
Assert.AreEqual(title2, webTitle1);
test.Pass("Assertion passed");
}
[TearDown]
public void closeBrowser()
{
var status = TestContext.CurrentContext.Result.Outcome.Status;
var stacktrace = string.IsNullOrEmpty(TestContext.CurrentContext.Result.StackTrace)
? ""
: string.Format("{0}",
TestContext.CurrentContext.Result.StackTrace);
Status logstatus;
switch (status)
{
case TestStatus.Failed:
logstatus = Status.Fail;
break;
case TestStatus.Inconclusive:
logstatus = Status.Warning;
break;
case TestStatus.Skipped:
logstatus = Status.Skip;
break;
default:
logstatus = Status.Pass;
break;
}
test.Log(logstatus, "Test ended with " + logstatus + stacktrace);
extent.RemoveTest(test);
extent.Flush();
driver.Close();
}
}
Extent-config.xml
<?xml version="1.0" encoding="UTF-8"?>
<extentreports>
<configuration>
<!-- report theme -->
<!-- standard, dark -->
<theme>standard</theme>
<!-- document encoding -->
<!-- defaults to UTF-8 -->
<encoding>UTF-8</encoding>
<!-- protocol for script and stylesheets -->
<!-- defaults to https -->
<protocol>https</protocol>
<!-- title of the document -->
<documentTitle>Automation testing</documentTitle>
<chartVisibilityOnOpen>true</chartVisibilityOnOpen>
<!-- report name - displayed at top-nav -->
<reportName>Automation Report - Shashank R</reportName>
<!-- location of charts in the test view -->
<!-- top, bottom -->
<testViewChartLocation>bottom</testViewChartLocation>
<!-- custom javascript -->
<scripts>
<![CDATA[
$(document).ready(function() {
});
]]>
</scripts>
<!-- custom styles -->
<styles>
<![CDATA[
]]>
</styles>
</configuration>
请按照步骤检查是否正在生成报告, 确保测试执行正确完成,并且调用了extent.fluch。否则,无法生成数据块报告 在项目工作区中创建名为eReport的文件夹 创建变量名为reportLocation=./eReport/+TestReport.html; 将reportLocation变量传递给ExtentHTMlReport方法 var reportPath=新的ExtentHtmlReporterreportLocation 您可以进一步检查,它是否生成 你可以从他们的官方文件中找到基本的例子,
请在下面查找代码片段:
[TestFixture]
class Demo
{
public ExtentReports extent;
public ExtentTest test;
[SetUp]
public void TestSetup()
{
var reportPath = new ExtentHtmlReporter
(@"C:\Users\Administrator\Documents\visual studio 2015\Projects\Selenium_D365\Selenium_D365\eReports\Demo_Report_01.html");
//var reportLocation = "./Reports/" + "TestReport.html";
//var reportPath = new ExtentHtmlReporter(reportLocation);
extent = new ExtentReports();
extent.AttachReporter(reportPath);
}
[Test]
public void test_D365Login()
{
test = extent.CreateTest("test_D365Login");
Assert.IsTrue(true);
test.Pass("Assertion passed");
}
[TearDown]
public void TestCleanup()
{
var status = TestContext.CurrentContext.Result.Outcome.Status;
var stacktrace = string.IsNullOrEmpty(TestContext.CurrentContext.Result.StackTrace);
Status logstatus = Status.Pass;
test.Log(logstatus, "Test ended with " + status + stacktrace);
extent.RemoveTest(test);
extent.Flush();
}
}
您已经在HTML对象中加载了区段配置文件位置
reportPath.LoadConfig("Extent-config.xml")
您需要共享它当前所在的位置,Hi Ishita,报告当前未定位到任何路径。我的意思是,报告在执行后根本不会生成/创建。谢谢石田,我也以同样的方式进行了跟踪,但我仍然无法获取报告。您是否有任何异常?请分享更多详细信息,不要直接在项目中实现,首先尝试使用没有项目依赖关系的基本示例,这样您就可以有步骤想法。我没有遇到任何异常,而且我调试了代码并看到了extent.Flush被调用。所以,我在这里被困在识别什么是错误的。嗨,石田,我尝试了另一个项目不同的机器,以及有基本的例子,即使在这个我无法生成报告。你能帮帮我吗。谢谢。你为什么在reportPath上使用@?请删除并选中。@是一个逐字字符串,以便按原样使用字符串中的值。不管怎么说,我没有试过,但运气不好。