我已经使用Selenium和TestNG开发了自动化脚本。我们可以将开发的自动化脚本与silk central中记录的手动测试用例集成在一起吗?我的客户想从Silk Central it self启动自动化脚本的执行。
我做了一些基础工作,了解到Silk central支持Junit。请让我知道如何运行在丝绸中心使用TestNG开发的脚本。
发布于 2015-08-26 19:10:27
只要Selenium脚本是基于JUnit或NUnit/MSTest的,就可以从Silk Central调用它们。您所要做的就是创建一个源代码控制配置文件,这样Silk Central就可以看到您的代码。然后,创建一个测试容器并附加所需类型的子测试,指定测试的类路径。
然而,您说您希望从Silk Central本身启动执行,并结合手动测试。这听起来像Silk Central 16.0上添加的关键字驱动测试功能。
您可以创建KDT类型的新子测试,您的客户端将能够创建带有参数的关键字(即测试方法)。如果这些关键字已经关联了Selenium自动化代码,那么在创建关键字驱动的测试之后,您将能够直接执行它们。如果没有,您可以开发该方法,使Silk Central测试可执行。
首先,您需要从Silk Central的Help --> Tools选项卡下载Java Keyword-Driven Library Builder,并将com.borland.silk.keyworddriven.jar添加到您的Selenium项目类路径中。然后,使用Silk Central中给出的相同名称创建方法,并使用com.borland.silk.keyworddriven.annotations.Keyword注释对它们进行标记。
例如,如果您的客户端使用参数"http://stackoverflow.com"创建了关键字openBrowser,则您的代码应如下所示:
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 --> Libraries --> Properties选项卡--> Upload,将库上载到Silk Central。
你可以在Silk Central的博客上找到更多信息:Keyword-driven testing with Selenium。
https://stackoverflow.com/questions/27518958
复制相似问题