我使用Selenium和TestNG开发了自动化脚本。我们可以将开发的自动化脚本与丝绸中心记录的手动测试案例集成。我的客户希望自己从Silk Central开始执行自动化脚本。
我做了一些基础工作并且知道Silk Central支持Junit。请告诉我如何在丝绸中心运行使用TestNG开发的脚本。
答案 0 :(得分:0)
可以从Silk Central调用Selenium脚本,只要它们是基于JUnit或NUnit / MSTest。您所要做的就是创建源控件配置文件,以便Silk Central可以看到您的代码。然后,创建一个测试容器并附加所需类型的子测试,指定测试的类路径。
但是,您说您希望从Silk Central本身开始执行,并结合手动测试。这听起来像是Silk Central 16.0上添加的关键字驱动测试功能。
您可以创建KDT类型的新子测试,您的客户端将能够使用参数创建关键字(即测试方法)。如果这些关键字已经关联了Selenium自动化代码,您将能够在创建关键字驱动测试后直接执行它们。如果没有,您可以开发该方法,使Silk Central测试可执行。
首先,您需要从Silk Central的帮助 - >下载 Java关键字驱动的库构建器。工具选项卡,并将com.borland.silk.keyworddriven.jar
添加到Selenium项目类路径中。然后,使用Silk Central中给出的相同名称创建方法,并使用com.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存档,并从之前下载的jar中调用DocBuilder
类,如下所示:
java -cp ./com.borland.silk.keyworddriven.jar com.borland.silk.keyworddriven.library.docbuilder.DocBuilder MyKeywordLibrary Java ./output ./MyKeywordLibrary.zip
其中MyKeywordLibrary
是已编译关键字库的名称。最后,通过选择 Tests - >将库上传到Silk Central。图书馆 - > “属性”标签 - >上传
您可以在Silk Central的博客中找到更多信息:Keyword-driven testing with Selenium。