0

我使用 Selenium 和 TestNG 开发了自动化脚本。我们能否将开发的自动化脚本与 Silk Central 中记录的手动测试用例集成。我的客户希望自己从 Silk Central 开始执行自动化脚本。

我做了一些基础工作,并了解到 Silk Central 支持 Junit。请让我知道如何在 Silk Central 中运行使用 TestNG 开发的脚本。

4

1 回答 1

0

Selenium 脚本可以从 Silk Central 调用,只要它们是基于 JUnit 或 NUnit/MSTest 的。您所要做的就是创建一个源代码控制配置文件,这样 Silk Central 就可以看到您的代码。然后,创建一个测试容器并附加所需类型的子测试,指定测试的类路径。

但是,您说您想从 Silk Central 本身启动执行,并结合手动测试。这听起来像是 Silk Central 16.0 中添加的关键字驱动测试功能。

您可以创建 KDT 类型的新子测试,您的客户端将能够创建带有参数的关键字(即测试方法)。如果这些关键字已经关联了 Selenium 自动化代码,您将能够在创建关键字驱动测试后直接执行它们。如果没有,您可以开发该方法,使 Silk Central 测试可执行。

首先,您需要从 Silk Central 的帮助 --> 工具选项卡下载Java Keyword-Driven Library Builder ,并将其添加到您的 Selenium 项目类路径中。然后,使用 Silk Central 中提供的相同名称创建您的方法,并使用注释对其进行标记。com.borland.silk.keyworddriven.jarcom.borland.silk.keyworddriven.annotations.Keyword

例如,如果您的客户openBrowser使用参数创建关键字"http://stackoverflow.com",您的代码应如下所示:

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import com.borland.silk.keyworddriven.annotations.*;

public class MyKeywordLibrary{
  private WebDriver driver;  

  @Keyword
  public void openBrowser(String url) {
    driver = new FirefoxDriver();
    driver.get(url);
  }
}

如您所见,该参数在 Silk Central 中没有名称,因此您可以在代码中指定您喜欢的名称(url在示例中)。

完成代码后,您必须将关键字库上传到 Silk Central。为此,请将您的源代码编译为 jar 存档并DocBuilder从您之前下载的 jar 中调用该类,如下所示:

java -cp ./com.borland.silk.keyworddriven.jar com.borland.silk.keyworddriven.library.docbuilder.DocBuilder MyKeywordLibrary Java ./output ./MyKeywordLibrary.zip

MyKeywordLibrary您编译的关键字库的名称在哪里。最后,通过选择Tests --> Libraries --> Properties 选项卡 --> Upload将库上传到 Silk Central 。

您可以在 Silk Central 的博客中找到更多信息:使用 Selenium 进行关键字驱动测试

于 2015-08-26T11:10:27.287 回答