Selenium WebDriver中的XSLT报表

XSLT报告

Selenium框架中的XSLT报告是一个非常重要的特性,用于进一步增强TestNG提供的默认报告系统。它以一种非常用户友好的方式增强了TestNG报告功能,还具有更用户友好的UI和对测试套件结果的详细描述。

在本XSLT教程中,将了解-

  • 什么是XSLT?
  • 生成XSLT报告的前提条件
  • 在Selenium中生成XSLT报告
  • 验证XSLT报告

Selenium中的XSLT是什么?

Selenium中的XSLT是将XML文档转换为其他XML文档的语言。我们可以确保它使用XPath在XML文档中的元素和属性中导航。XSLT代表可扩展样式表语言转换。

以下是编程中最常用的XSL元素:

  • 它定义该文档是XSLT样式表文档。
  • 用于对XML文件的内容进行条件测试。
  • 用于构建模板。
  • 用于将模板应用于元素。
  • 一起使用,以表示多个条件。
  • 用于选择指定节点的每个XML元素。
  • 用于提取选定节点的值。
  • 用于对输出进行排序。

生成XSLT报告的前提条件

以下是生成XSLT报告的前提条件。

1)应安装Ant构建工具(需要安装Ant for XSLT报告功能)。有关下载和安装ANT的步骤,参阅此链接。

2)下载XSLT包。

3)TestNG需要执行的Selenium脚本。

在本例中,我们将讨论Selenium Webdriver中的XSLT报告。

在Selenium中生成XSLT报告

在本场景中,我们将使用Guru99演示站点来演示生成XSLT报告。

场景:将为以下场景自动生成XSLT报告

  • 启动Web浏览器
  • 启动火狐并打开网站“http://www.itxiaonv.com/V4/”
XSLT Report in Selenium
XSLT Report in Selenium
  • 登录到应用程序。
XSLT Report in Selenium
XSLT Report in Selenium
  • 从应用程序注销。
XSLT Report in Selenium
XSLT Report in Selenium

现在,我们将按照以下步骤生成Selenium格式的XSLT报告。

步骤1):针对上述场景。创建并执行Guru99演示站点的Selenium脚本。

import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.Assert;
import org.testng.annotations.Test;
 
public class Testing {
    WebDriver driver= new FirefoxDriver();
    @Test(priority=1)
    public void Login() {
        //Launching the Site.
        driver.get("http://www.itxiaonv.com/V4/");
 
        //Login to Guru99
        driver.findElement(By.name("uid")).sendKeys("mngr34926");
        driver.findElement(By.name("password")).sendKeys("amUpenu");
        driver.findElement(By.name("btnLogin")).click();
        //Verifying the manager home page
        Assert.assertEquals(driver.getTitle(),"Guru99 Bank Manager HomePage" );
    }
 
    @Test(priority=2)
    public void verifytitle() {
        //Verifying the title of the home page
        Assert.assertEquals(driver.getTitle(),"Guru99 Bank Manager HomePage" );
    }
 
    @Test(priority=3)
    public void Logout() {
        driver.findElement(By.linkText("Log out")).click();
        Alert alert=driver.switchTo().alert();
        alert.accept();
        //Verifying the title of the logout page
        Assert.assertEquals(driver.getTitle(),"Guru99 Bank Home Page" );
    }
}

步骤2):通过此链接下载XSLT报告包:

XSLT Report in Selenium
XSLT Report in Selenium

解压缩上面的文件夹,将在下面的项目下看到:

  • build.xml
  • testng-results.xsl
XSLT Report in Selenium
XSLT Report in Selenium

步骤3):解压文件夹,复制所有文件,粘贴到工程主目录,如下图所示。

XSLT Report in Selenium
XSLT Report in Selenium

步骤4):在此步骤中,从Eclipse运行build.xml文件,如下所示:

XSLT Report in Selenium
XSLT Report in Selenium

右键单击build.xml,然后单击Run as Ant build。

XSLT Report in Selenium
XSLT Report in Selenium

然后打开一个新窗口。现在选择选项“GenerateReport”。

XSLT Report in Selenium
XSLT Report in Selenium

单击Run(运行)按钮。它应该生成报告。

验证XSLT报告

一旦构建成功并移动到项目主目录。将找到TestNG-XSLT文件夹。

XSLT Report in Selenium
XSLT Report in Selenium

在此文件夹中,将发现index.html文件,如下所示:

XSLT Report in Selenium
XSLT Report in Selenium

现在,在任何支持javascript的浏览器(如Firefox或Chrome)中打开此HTML文件。过滤功能允许用户根据设置的标准对结果进行过滤。

XSLT Report in Selenium
XSLT Report in Selenium

将看到显示通过、失败和跳过测试的百分比的饼形图。

要以常规格式显示结果,单击窗格左侧的默认套件。它应显示每个测试的详细信息,如以下屏幕所示:

XSLT Report in Selenium
XSLT Report in Selenium

现在我们强行通过测试,不及格,然后跳过。

要查看测试结果的每种类型的报告,我们需要对以下方法进行一些更改。

  1. verifytitle() :在Assert中,我们传递了错误的预期页面标题。因此使测试失败。
  2. Logout() :在此方法中,我们通过使用skipException强制跳过测试。以便在执行代码时,此方法将跳过。

通过这样做,我们试图借助饼图来显示XSLT报告。它将显示通过、失败和跳过测试的测试结果。

@Test(priority=2)
public void verifytitle() {
    //Verifying the title of the home page
    Assert.assertEquals(driver.getTitle(),"Guru99 Bank Manager" );
}
XSLT Report in Selenium
XSLT Report in Selenium
@Test(priority=3)
public void Logout() {
    throw new SkipException("Skip this");
 
}
XSLT Report in Selenium
XSLT Report in Selenium

现在,对于每种类型的结果状态,即通过、失败和跳过,我们都有一个测试。

在执行脚本和build.xml之后。验证XSLT报告,如以下屏幕所示:

XSLT Report in Selenium
XSLT Report in Selenium

测试报告更加人性化,通俗易懂。也可以通过选中下面屏幕中的复选框来过滤结果。

XSLT Report in Selenium
XSLT Report in Selenium

注意:在屏幕截图中,“config”选项显示完成配置的测试。通常用于大型项目。

总结:

XSLT报告是以非常用户友好的方式增强TestNG报告功能所必需的。

  • XSLT代表可扩展样式表语言转换。
  • Ant Build的下载和安装参考给定的链接。
  • 在Selenium中生成XSLT报告,并从Eclipse执行build.xml。
  • 验证项目文件夹中的XSLT报告。
  • 验证每种类型结果状态的XSLT报告。

IT赶路人

专注IT知识分享