3

我的任务是测试一些 Web 服务。我之前一直在使用 SOAPUI 来测试 Web 服务,也使用 SELENIUM 来进行一些 WebUI 测试。我目前的任务涉及测试一些 oauth 服务。基本上我需要能够通过使用 SELENIUM 的 oauth 身份验证并存储生成的访问令牌并将其传递给我的 SOAPUI 测试以测试服务。我已经阅读了很多关于将 selenium 与 SOAPUI 集成的博客,但我还没有看到和指导向您展示如何做到这一点。我正在使用带有 SOAPUI 4.0.1 的 MacbookPro 任何帮助将不胜感激。

4

2 回答 2

2

我可以在 SOAP Groovy 脚本中调用 Webdriver 实例并使用 UI 断言断言 API 遵循以下步骤

Step1 : 进入 SoapUI 安装目录 bin/ext 并删除 selenium 独立服务器 jar 文件(此路径中的所有 jar 将加载到您的路径中,您可以在此位置添加任何 jar 文件并在 Groovy 脚本步骤中调用它们)

C:程序文件/SmartBearSoapUI-Pro-4.6.4/bin/ext

Jar 文件名:selenium-server-standalone-2.40.0

第 2 步:在 SOAP UI 中创建一个新项目

第 3 步:添加新的 Groovy 脚本步骤

第 4 步:在 Groovy Step 中使用以下脚本创建您的 selenium 驱动程序(Groovy 是基于 Java 构建的,因此所有 JAVA 库和代码都可以这样工作)

import org.openqa.selenium.WebDriver 
import org.openqa.selenium.firefox.FirefoxDriver

    WebDriver driver = new FirefoxDriver(); 
    driver.get("http://www.google.com ") 
    log.info("Pagee is: " + driver.getTitle()) 
    driver.quit()

第 5 步:运行您的脚本

  • 您可能必须第一次重新启动您的 soapui 会话。

如果您想验证 JAVA Webdriver 代码中的 API,我建议您使用 REST 保证 API

https://code.google.com/p/rest-assured/

希望这可以帮助。

于 2014-09-19T08:30:20.640 回答
1

第一步,您需要下载最新版本selenium-server-standalone-*.jar并将其放入$SOAPUI_HOME/bin/ext;重新启动 SoapUI。

接下来,您需要在Groovy Step中将 Selenium 脚本编写为Groovy 脚本:无类声明。所以像:

def chromeDriverBinary = new File("selenium/bin/windows/googlechrome/32bit/chromedriver.exe")
assert chromeDriverBinary.canExecute()
System.setProperty("webdriver.chrome.driver", chromeDriverBinary.canonicalPath)

def driver = new ChromeDriver()
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS)
driver.get("http://www.website.test")

这个问题仍然没有公认的答案,所以我想我会发布我自己的尝试,在博客文章中描述: http: //siking.wordpress.com/2011/08/22/groovy-selenium-webdriver-and-soapui-第 3 部分/ 也许它对某人有用?

于 2014-05-23T17:32:11.990 回答