在Amazon AMI Linux命令行上安装SoapUI

时间:2015-09-13 03:33:12

标签: linux amazon-web-services soapui

我需要在linux OS(Amazon AMI linux)上安装和运行SoapUI。 这是命令行版本(无GUI)

我能够使用以下命令

成功下载并解压缩SoapUI tar
  1. 下载SoapUI安装文件

      

    wget http://freefr.dl.sourceforge.net/project/soapui/soapui/5.0.0/SoapUI-5.0.0-linux-bin.tar.gz

  2. 提取内容

      

    tar -xzf SoapUI-5.0.0-linux-bin.tar.gz -C / opt /

  3. 安装SoapUI

      

    cd /opt/SoapUI-5.0.0/bin /

  4. 此后我运行以下命令:

      

    ./ soapui.sh

    我得到以下异常

    java.awt.HeadlessException:
    
    No X11 DISPLAY variable was set, but this program performed an operation which requires it.
    
    at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:207)
    
    at java.awt.Window.<init>(Window.java:535)
    
    at java.awt.Frame.<init>(Frame.java:420)
    
    at javax.swing.JFrame.<init>(JFrame.java:218)
    
    at com.eviware.soapui.SoapUI.startSoapUI(SoapUI.java:842)
    
    at com.eviware.soapui.SoapUI$SoapUIRunner.run(SoapUI.java:697)
    
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:312)
    
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:745)
    
    at java.awt.EventQueue.access$300(EventQueue.java:103)
    
    at java.awt.EventQueue$3.run(EventQueue.java:706)
    
    at java.awt.EventQueue$3.run(EventQueue.java:704)
    
    at java.security.AccessController.doPrivileged(Native Method)
    
    at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
    
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:715)
    
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
    
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
    
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
    
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
    
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
    
    at java.awt.EventDispatchThread.r...(EventDispatchThread.java:91)
    

    这里是否缺少某些东西或需要调用任何其他命令?

2 个答案:

答案 0 :(得分:1)

SoapUI本身是一个图形工具,主要应用程序不喜欢在没有图形显示的情况下运行。

当我在没有X11的Linux服务器上运行SoapUI时,它就是我之后的模拟服务工具 - 我用它来提供替代SOAP或REST服务以实现自动化测试等。

模拟服务运行器在没有X11服务器的情况下运行良好 - 您只需告诉 java 不要寻找图形用户界面。

因此,您将-Djava.awt.headless=true添加到命令行:

./mockservicerunner.sh -Djava.awt.headless=true 

如果你只是为了它会给你一个帮助&#39;输出,因为此工具旨在使用现有的SoapUI项目文件来提供预配置的响应,而不是交互式使用。

另一种方法是使用X-Forwarding,因此SoapUI在您的服务器上运行,但UI显示在您的本地工作站上。我从未这样做过(因为,正如我所说,我是在自动化测试的独立交互之后),但此页面有一些细节:http://blog.ashwani.co.in/blog/2013-01-10/soapui-mockservicerunner-on-linux-without-x-config/ (它还提到了mockservicerunner.sh的&#39; headless&#39;选项。

此页面详细介绍了在将SoapUI用于其中一个自动化工具(本例中为loadrunner)之前首先在SoapUI中设置项目:http://www.soapui.org/load-testing/command-line-execution.html

答案 1 :(得分:1)

我刚刚在AWS(Red Hat)中安装并执行了SoapUI,而没有使用任何图形界面:

1.-直接从soapui.org下载SoapUI;搜索最新的Linux版本,复制链接地址并使用wget命令将软件下载到任何Linux目录中。这应该已经下载了安装脚本文件(例如,SoapUI-x64--5.3.0.sh)。

2.-从命令行执行以前的安装脚本并回答安装提示。完成后,转到您选择安装它的目录,并验证您是否拥有所有文件夹和文件(bin,lib等)。

3.-要从命令提示符运行SoapUI,请转到SoapUI主目录并执行如下指令:

sh  bin/testrunner.sh -s"Your Suite Name" -c"Your Test Case Name" -f/your/output/path/ /your/project/path/your-soapui-project.xml